Files
ansible-dev/.gitea/workflows/build-release.yml
Chris Hammer 1c868a7d56
Some checks failed
Docker Image Build Pipeline / Clean-Stale-Artifacts (push) Successful in 2s
Docker Image Build Pipeline / Check-Environment (push) Successful in 1s
Docker Image Build Pipeline / Clone-Repo (push) Successful in 1s
Docker Image Build Pipeline / Build-Images (push) Successful in 3m13s
Docker Image Build Pipeline / Push-Images (push) Failing after 1s
Docker Image Build Pipeline / Cleanup-Build-Images (push) Has been skipped
Docker Image Build Pipeline / Cleanup-Docker-Login (push) Has been skipped
Adjust schedules for testing
2025-08-19 01:38:13 -04:00

85 lines
3.2 KiB
YAML

name: Docker Image Build Pipeline
on:
schedule:
- cron: '30 0 * * 0'
push:
branches:
- release
jobs:
Checkout-Branch:
runs-on: self-hosted
defaults:
run:
working-directory: /home/builds/src/ansible-dev
steps:
- name: "Checkout Branch: ${{ env.GITHUB_REF_NAME }}"
run: |
git fetch origin ${{ env.GITHUB_REF_NAME }}:${{ env.GITHUB_REF_NAME }}
git checkout ${{ env.GITHUB_REF_NAME }}
- name: Verify Current Commit
run: git log -1
Build-Images:
runs-on: self-hosted
needs: [Checkout-Branch]
defaults:
run:
working-directory: /home/builds/src/ansible-dev
steps:
- name: CentOS
run: |
echo "docker build -f build/Containerfile.centos -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_CENTOS }}:${{ env.GITHUB_REF_NAME }} ."
docker build -f build/Containerfile.centos -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_CENTOS }}:${{ env.GITHUB_REF_NAME }} .
- name: Fedora
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: Debian
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 Images to Registry
run: |
pwd
docker push ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_CENTOS }}:${{ env.GITHUB_REF_NAME }}
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: |
pwd
docker rmi ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_CENTOS }}:${{ env.GITHUB_REF_NAME }}
docker rmi ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_FEDORA }}:${{ env.GITHUB_REF_NAME }}
docker rmi ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_DEBIAN }}:${{ env.GITHUB_REF_NAME }}
Cleanup-Docker-Login:
runs-on: self-hosted
needs: [Push-Images]
steps:
- name: Cleanup Docker login
run: rm -v /home/builds/.docker/config.json