--- resource_types: - name: ssh-edge type: registry-image source: repository: redxef/concourse-ssh-resource tag: edge - name: ssh type: registry-image source: repository: redxef/concourse-ssh-resource tag: latest - name: oci-image type: registry-image source: repository: redxef/concourse-oci-resource tag: latest resources: - name: source type: git source: uri: https://gitea.redxef.at/redxef/concourse-ssh-resource branch: master fetch_tags: true - name: upstream-image type: registry-image source: repository: alpine - name: image type: oci-image source: repository: redxef/concourse-ssh-resource tag: edge username: ((docker.username)) password: ((docker.password)) - name: test-server type: ssh-edge source: hostname: ((test-server.hostname)) user: ((test-server.user)) identity: ((test-server.identity)) hostkey: ((test-server.hostkey)) files: - file/hello.txt jobs: - name: build-push-edge plan: - get: source trigger: true - get: upstream-image trigger: true - task: compute-docker-tags config: platform: linux image_resource: type: registry-image source: repository: alpine/git inputs: - name: source path: . outputs: - name: docker-tags run: path: sh args: - -c - | #!/usr/bin/env sh git rev-parse --short HEAD > docker-tags/tags.txt git show-ref --tags | \ sed -n "/$(git rev-parse HEAD)/ s|$(git rev-parse HEAD).refs/tags/||gp" \ >> docker-tags/tags.txt - task: build privileged: true config: platform: linux image_resource: type: registry-image source: repository: redxef/concourse-buildkit inputs: - name: source path: . outputs: - name: build-output params: dest: build-output/image.tar platform: aarch64,arm,i386,ppc64le,s390x,x86_64 run: path: build - put: image inputs: - build-output - docker-tags params: image: build-output/image.tar additional_tags: docker-tags/tags.txt - name: test plan: - get: image trigger: true passed: - build-push-edge - task: create-put-file config: platform: linux image_resource: type: registry-image source: repository: alpine outputs: - name: file run: path: sh args: - -c - | echo Hello > file/hello.txt - put: test-server inputs: - file params: command: - ls - -la - name: tag-latest plan: - get: image trigger: true passed: - test - task: write-latest-file config: platform: linux image_resource: type: registry-image source: repository: alpine outputs: - name: latest-tag run: path: sh args: - -c - | #!/usr/bin/env sh echo latest > latest-tag/tags.txt - put: image inputs: - image - latest-tag params: image: image/image.tar additional_tags: latest-tag/tags.txt