133 lines
3 KiB
YAML
133 lines
3 KiB
YAML
|
---
|
||
|
resources:
|
||
|
- name: source
|
||
|
type: git
|
||
|
source:
|
||
|
uri: https://gitea.redxef.at/redxef/concourse-http-resource
|
||
|
branch: main
|
||
|
fetch_tags: true
|
||
|
- name: image
|
||
|
type: registry-image
|
||
|
source:
|
||
|
repository: redxef/concourse-http-resource
|
||
|
tag: edge
|
||
|
username: ((docker.username))
|
||
|
password: ((docker.password))
|
||
|
|
||
|
jobs:
|
||
|
- name: build-push-edge
|
||
|
plan:
|
||
|
- get: source
|
||
|
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: concourse/oci-build-task
|
||
|
inputs:
|
||
|
- name: source
|
||
|
path: .
|
||
|
outputs:
|
||
|
- name: output-image
|
||
|
path: image
|
||
|
params:
|
||
|
IMAGE_PLATFORM: aarch64,x86_64
|
||
|
OUTPUT_OCI: true
|
||
|
UNPACK_ROOTFS: true
|
||
|
run:
|
||
|
path: build
|
||
|
- put: image
|
||
|
inputs:
|
||
|
- output-image
|
||
|
- docker-tags
|
||
|
params:
|
||
|
image: output-image/image
|
||
|
additional_tags: docker-tags/tags.txt
|
||
|
get_params:
|
||
|
format: oci
|
||
|
|
||
|
|
||
|
#- 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
|