All checks were successful
Docker Image Build Pipeline / Cleanup-Old-Artifacts (push) Successful in 0s
Docker Image Build Pipeline / Check-Environment (push) Successful in 0s
Docker Image Build Pipeline / Clone-Repo (push) Successful in 0s
Docker Image Build Pipeline / Build-Images (push) Successful in 2m16s
Docker Image Build Pipeline / Push-Images (push) Successful in 1m41s
Docker Image Build Pipeline / Cleanup-Build-Images (push) Successful in 0s
Docker Image Build Pipeline / Cleanup-Docker-Login (push) Successful in 0s
90 lines
2.6 KiB
YAML
90 lines
2.6 KiB
YAML
name: Docker Image Build Pipeline
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- release
|
|
|
|
jobs:
|
|
Cleanup-Old-Artifacts:
|
|
runs-on: self-hosted
|
|
defaults:
|
|
run:
|
|
working-directory: /home/builds/src
|
|
|
|
steps:
|
|
- name: Cleanup old code
|
|
run: rm -rfv *
|
|
|
|
|
|
Check-Environment:
|
|
runs-on: self-hosted
|
|
needs: [Cleanup-Old-Artifacts]
|
|
defaults:
|
|
run:
|
|
working-directory: /home/builds/src
|
|
|
|
steps:
|
|
- name: Environment check
|
|
run: |
|
|
echo "BUILD_USER: $(whoami)" && echo
|
|
echo "PWD: $(pwd)" && echo
|
|
hostnamectl && echo
|
|
lscpu && echo
|
|
env && echo
|
|
docker info && echo
|
|
|
|
|
|
Build-Images:
|
|
runs-on: self-hosted
|
|
needs: [Check-Environment]
|
|
defaults:
|
|
run:
|
|
working-directory: /home/builds/src/ansible-dev
|
|
|
|
steps:
|
|
- name: Verify current commit
|
|
run: |
|
|
git checkout ${{ env.GITHUB_REF_NAME }}
|
|
git log -1
|
|
|
|
- name: Build Fedora Image
|
|
run: |
|
|
echo "docker build -f build/Containerfile.fedora -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_FEDORA }}:${{ env.GITHUB_REF_NAME }} ."
|
|
docker build -f build/Containerfile.fedora -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_FEDORA }}:${{ env.GITHUB_REF_NAME }} .
|
|
|
|
- name: Build Debian Image
|
|
run: |
|
|
echo "docker build -f build/Containerfile.debian -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_DEBIAN }}:${{ env.GITHUB_REF_NAME }} ."
|
|
docker build -f build/Containerfile.debian -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_DEBIAN }}:${{ env.GITHUB_REF_NAME }} .
|
|
|
|
|
|
Push-Images:
|
|
runs-on: self-hosted
|
|
needs: [Build-Images]
|
|
steps:
|
|
- name: Docker login
|
|
run: echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login --username ${{ secrets.REGISTRY_USER }} --password-stdin ${{ vars.REGISTRY }}
|
|
|
|
- name: Push Registry Images
|
|
run: |
|
|
pwd
|
|
docker push ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_FEDORA }}:${{ env.GITHUB_REF_NAME }}
|
|
docker push ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_DEBIAN }}:${{ env.GITHUB_REF_NAME }}
|
|
|
|
|
|
Cleanup-Build-Images:
|
|
runs-on: self-hosted
|
|
needs: [Build-Images, Push-Images]
|
|
steps:
|
|
- name: Cleanup build images
|
|
run: docker system prune -af
|
|
|
|
|
|
Cleanup-Docker-Login:
|
|
runs-on: self-hosted
|
|
needs: [Push-Images]
|
|
steps:
|
|
- name: Cleanup Docker login
|
|
run: rm -v /home/builds/.docker/config.json
|