ansible-dev/.gitea/workflows/build-release.yml
Chris Hammer e247105e3f
All checks were successful
Docker Image Build Pipeline / Cleanup-Old-Artifacts (push) Successful in 3s
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 2m15s
Docker Image Build Pipeline / Push-Images (push) Successful in 1m43s
Docker Image Build Pipeline / Cleanup-Build-Images (push) Successful in 0s
Docker Image Build Pipeline / Cleanup-Docker-Login (push) Successful in 0s
Updates to CI workflow
2025-01-15 17:53:50 -05:00

75 lines
2.5 KiB
YAML

name: Docker Image Build Pipeline
on:
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: 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_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_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