144 lines
2.1 KiB
YAML
144 lines
2.1 KiB
YAML
kind: pipeline
|
|
name: tests
|
|
|
|
trigger:
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
steps:
|
|
- name: run tests
|
|
image: ubuntu:bionic
|
|
commands:
|
|
- apt-get update
|
|
- apt-get install -y make
|
|
- make test
|
|
|
|
---
|
|
kind: pipeline
|
|
name: linux-amd64
|
|
|
|
depends_on:
|
|
- tests
|
|
|
|
trigger:
|
|
branch:
|
|
- master
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
steps:
|
|
- name: get qemu
|
|
image: busybox
|
|
commands:
|
|
- sh ./get_qemu.sh x86_64
|
|
|
|
- name: build
|
|
image: plugins/docker
|
|
settings:
|
|
repo: iamthefij/multiarch-pipeline-test
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-amd64
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|
|
|
|
---
|
|
kind: pipeline
|
|
name: linux-arm
|
|
|
|
depends_on:
|
|
- tests
|
|
|
|
trigger:
|
|
branch:
|
|
- master
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
steps:
|
|
- name: get qemu
|
|
image: busybox
|
|
commands:
|
|
- sh ./get_qemu.sh arm
|
|
|
|
- name: build
|
|
image: plugins/docker
|
|
settings:
|
|
repo: iamthefij/multiarch-pipeline-test
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-arm
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|
|
build_args:
|
|
- ARCH=arm
|
|
- REPO=arm32v6
|
|
|
|
---
|
|
kind: pipeline
|
|
name: linux-arm64
|
|
|
|
depends_on:
|
|
- tests
|
|
|
|
trigger:
|
|
branch:
|
|
- master
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
steps:
|
|
- name: get qemu
|
|
image: busybox
|
|
commands:
|
|
- sh ./get_qemu.sh aarch64
|
|
|
|
- name: build
|
|
image: plugins/docker
|
|
settings:
|
|
repo: iamthefij/multiarch-pipeline-test
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-arm64
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|
|
build_args:
|
|
- ARCH=aarch64
|
|
- REPO=arm64v8
|
|
|
|
---
|
|
kind: pipeline
|
|
name: manifest
|
|
|
|
depends_on:
|
|
- linux-amd64
|
|
- linux-arm
|
|
- linux-arm64
|
|
|
|
trigger:
|
|
branch:
|
|
- master
|
|
event:
|
|
- push
|
|
- tag
|
|
|
|
steps:
|
|
- name: publish manifest
|
|
image: plugins/manifest
|
|
settings:
|
|
spec: manifest.tmpl
|
|
auto_tag: true
|
|
ignore_missing: true
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|
|
|