| -rw-r--r-- | Jenkinsfile | 71 |
1 files changed, 8 insertions, 63 deletions
diff --git a/Jenkinsfile b/Jenkinsfile index 34b6f5d..ff90dad 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -74,11 +74,15 @@ spec: sh '''#!/busybox/sh mkdir -p /kaniko/.docker echo "{\"auths\":{\"https://registry.sayag.it\":{\"username\":\"jenkins\",\"password\":\"$REGISTRY_SAYAGIT_JENKINS_PASSWORD\"}}}" > /kaniko/.docker/config.json + pushToTags="$IMAGE_PUSH_DESTINATION:latest $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT" + if [ "$TAG_NAME" != "" ]; then + pushToTags="$pushToTags $IMAGE_PUSH_DESTINATION:stable $IMAGE_PUSH_DESTINATION:$TAG_NAME" + fi /kaniko/executor --context `pwd` \ - --custom-platform=linux/${GOARCH} \ - --build-arg TARGETOS=linux \ - --build-arg TARGETARCH=${GOARCH} \ - --destination $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT-$GOARCH + --custom-platform=${GOOS}/${GOARCH} \ + --build-arg TARGETOS=${GOOS} + --build-arg TARGETARCH=${GOARCH} + --destination $pushToTags ''' } catch (Exception e) { echo "Caught exception: ${e.getMessage()}" @@ -94,64 +98,5 @@ spec: } } } - stage('Stitch Manifest') { - agent { - kubernetes { - defaultContainer 'manifest-tool' - yaml """ -apiVersion: v1 -kind: Pod -metadata: - namespace: jenkins -spec: - containers: - - name: manifest-tool - image: mplatform/manifest-tool:alpine-v2.2.2 - imagePullPolicy: Always - entrypoint: [ 'true' ] - tty: true - resources: - requests: - cpu: "1" - memory: 2Gi - ephemeral-storage: 4Gi -""" - } - } - environment { - IMAGE_PUSH_DESTINATION="registry.sayag.it/sayauz/web" - } - steps { - script { - env.GIT_COMMIT_SHORT = env.GIT_COMMIT ? env.GIT_COMMIT.take(7) : "unknown" - sh '''#!/busybox/sh - mkdir -p /kaniko/.docker - echo "{\"auths\":{\"https://registry.sayag.it\":{\"username\":\"jenkins\",\"password\":\"$REGISTRY_SAYAGIT_JENKINS_PASSWORD\"}}}" > /kaniko/.docker/config.json - pushToTags="$IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT-$GOARCH" - if [ "$TAG_NAME" != "" ]; then - pushToTags="$pushToTags $IMAGE_PUSH_DESTINATION:$TAG_NAME-$GOARCH" - fi - manifest-tool push from-args \ - --platforms linux/amd64,linux/arm64 \ - --template $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT-ARCH \ - --target $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT - manifest-tool push from-args \ - --platforms linux/amd64,linux/arm64 \ - --template $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT-ARCH \ - --target $IMAGE_PUSH_DESTINATION:latest - if [ "$TAG_NAME" != "" ]; then - manifest-tool push from-args \ - --platforms linux/amd64,linux/arm64 \ - --template $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT-ARCH \ - --target $IMAGE_PUSH_DESTINATION:stable - manifest-tool push from-args \ - --platforms linux/amd64,linux/arm64 \ - --template $IMAGE_PUSH_DESTINATION:commit-$GIT_COMMIT_SHORT-ARCH \ - --target $IMAGE_PUSH_DESTINATION:$TAG_NAME - fi - ''' - } - } - } } } |