Skip to content

Commit

Permalink
Docker build and push files
Browse files Browse the repository at this point in the history
  • Loading branch information
varshinidepuru committed Apr 10, 2023
1 parent 283c505 commit 7c08985
Show file tree
Hide file tree
Showing 2 changed files with 91 additions and 0 deletions.
58 changes: 58 additions & 0 deletions Build-push.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# To Know Git version
git --version

# To Know Docker version
docker --version

# To Run Gradale Build need to have Java Vesion 1.11.+
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

# Setting JAVA_HOME to System PATH
export PATH=$PATH:$JAVA_HOME

# Get the Shorter format of Git-SHA
export GITHASH=`git rev-parse --short HEAD`

# Get the BUILD Date
export BUILDDATE=`date -u +"%Y%m%d%H%M"`

# For Assiging the Gradle Resources
export GRADLE_OPTS="-Xmx6g -Xms6g"

# The Current Build ID
echo "Build id is --------------------- $BUILD_ID"

# Gradle command to Produce the Dependant targetfiles for Docker build
./gradlew --no-daemon -PenableCrossCompilerPlugin=true orca-web:installDist -x test


# Assigning Rhel Image Name according to Quay.io Details
IMAGENAME="quay.io/opsmxpublic/ubi8-oes-orca:${GITHASH}-${BUILD_NUMBER}"

# Assigning Rhel Image Name according to Docker.io Details
RELEASE_IMAGENAME="opsmx11/ubi8-oes-orca:${GITHASH}-${BUILD_NUMBER}"



# To Build Docker image with Given Docker File
docker build -t $IMAGENAME . -f ${DOCKERFILE_PATH} --no-cache --build-arg CUSTOMPLUGIN_RELEASEVERSION=${CUSTOMPLUGIN_RELEASEVERSION}

# Create new Image Tag for Docker.io with the previous Build
docker tag $IMAGENAME $RELEASE_IMAGENAME

# Quay.io login
docker login -u $quay_user -p $quay_pass quay.io

# To Push the Docker image into Quay.io
docker push $IMAGENAME

# Docker.io login
docker login -u $docker_user -p $docker_pass docker.io

# To Push the Docker image into Quay.io
docker push $RELEASE_IMAGENAME

echo "Orca: ${IMAGENAME}"

# Quay Image Name as Artifact
echo \"Orca\": \"${IMAGENAME}\" > file.properties;
33 changes: 33 additions & 0 deletions docker/ubi8/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@

FROM registry.access.redhat.com/ubi8/ubi:8.3
LABEL name='orca'
LABEL maintainer='[email protected]'
LABEL summary='Red Hat certified Open Enterprise Spinnaker ubi8 container image for orca'
LABEL description='Certified Open Enterprise Spinnaker is an Enterprise grade, Red Hat certified and OpsMx supported release of the popular and critically acclaimed Continuous Delivery platform Spinnaker'
LABEL vendor='OpsMx'

COPY orca-web/build/install/orca /opt/orca
RUN yum -y update-minimal --security --sec-severity=Important --sec-severity=Critical --setopt=tsflags=nodocs
RUN yum -y install java-11-openjdk-headless.x86_64 wget vim curl net-tools nettle
RUN yum -y update
RUN useradd spinnaker
RUN mkdir -p /opt/orca/plugins

#custom plugin zip files adding
ARG CUSTOMPLUGIN_RELEASEVERSION
ENV CUSTOMPLUGIN_RELEASEVERSION=$CUSTOMPLUGIN_RELEASEVERSION
RUN wget -O Opsmx.VerificationGatePlugin-VerificationPlugin-v1.0.1-SNAPSHOT.zip -c https://github.com/OpsMx/Customplugins/releases/download/${CUSTOMPLUGIN_RELEASEVERSION}/VerificationPlugin-v1.0.1-SNAPSHOT.zip -P /opt/orca/plugins \
&& wget -O Opsmx.TestVerificationGatePlugin-TestVerificationPlugin-v1.0.1-SNAPSHOT.zip -c https://github.com/OpsMx/Customplugins/releases/download/${CUSTOMPLUGIN_RELEASEVERSION}/TestVerificationPlugin-v1.0.1-SNAPSHOT.zip -P /opt/orca/plugins \
&& wget -O Opsmx.PolicyGatePlugin-policyPlugin-v1.0.1-SNAPSHOT.zip -c https://github.com/OpsMx/Customplugins/releases/download/${CUSTOMPLUGIN_RELEASEVERSION}/policyPlugin-v1.0.1-SNAPSHOT.zip -P /opt/orca/plugins \
&& wget -O Opsmx.PolicyGatePlugin-RbacPlugin-v1.0.1-SNAPSHOT.zip -c https://github.com/OpsMx/Customplugins/releases/download/${CUSTOMPLUGIN_RELEASEVERSION}/RbacPlugin-v1.0.1-SNAPSHOT.zip -P /opt/orca/plugins \
&& wget -O Opsmx.VisibilityApprovalPlugin-ApprovalStagePlugin-v1.0.1-SNAPSHOT.zip -c https://github.com/OpsMx/Customplugins/releases/download/${CUSTOMPLUGIN_RELEASEVERSION}/ApprovalStagePlugin-v1.0.1-SNAPSHOT.zip -P /opt/orca/plugins
RUN mv Opsmx.VerificationGatePlugin-VerificationPlugin-v1.0.1-SNAPSHOT.zip /opt/orca/plugins/ \
&& mv Opsmx.TestVerificationGatePlugin-TestVerificationPlugin-v1.0.1-SNAPSHOT.zip /opt/orca/plugins/ \
&& mv Opsmx.PolicyGatePlugin-policyPlugin-v1.0.1-SNAPSHOT.zip /opt/orca/plugins/ \
&& mv Opsmx.PolicyGatePlugin-RbacPlugin-v1.0.1-SNAPSHOT.zip /opt/orca/plugins/ \
&& mv Opsmx.VisibilityApprovalPlugin-ApprovalStagePlugin-v1.0.1-SNAPSHOT.zip /opt/orca/plugins/

RUN chmod -R 777 /opt/orca/plugins/
RUN chown -R spinnaker:spinnaker /opt/
USER spinnaker
CMD ["/opt/orca/bin/orca"]

0 comments on commit 7c08985

Please sign in to comment.