Files
ansible-dev/.gitea/workflows/build-test.yml
Chris Hammer 59dd8dc90c
All checks were successful
Docker Image Build Pipeline / Clean-Stale-Artifacts (push) Successful in 3s
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 3m2s
Docker Image Build Pipeline / Push-Images (push) Successful in 2m17s
Docker Image Build Pipeline / Cleanup-Build-Images (push) Successful in 0s
Docker Image Build Pipeline / Cleanup-Docker-Login (push) Successful in 0s
Remove schedules; not working appropriately at this time
2025-08-19 12:29:02 -04:00

116 lines
3.9 KiB
YAML

name: Docker Image Build Pipeline
on:
push:
branches:
- testing
jobs:
Clean-Stale-Artifacts:
runs-on: self-hosted
defaults:
run:
working-directory: /home/builds/src
steps:
- name: Cleanup Stale Artifacts
run: rm -rfv *
- name: Cleanup Build Cache
run: docker system prune -af
Check-Environment:
runs-on: self-hosted
needs: [Clean-Stale-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
Clone-Repo:
runs-on: self-hosted
needs: [Check-Environment]
defaults:
run:
working-directory: /home/builds/src
steps:
- name: Clone Repository
run: |
git clone https://gitea.thezengarden.net/podman/ansible-dev.git
cd ansible-dev
git checkout ${{ env.GITHUB_REF_NAME }}
- name: Verify Current Commit
run: cd ansible-dev && git log -1
Build-Images:
runs-on: self-hosted
needs: [Check-Environment, Clone-Repo]
defaults:
run:
working-directory: /home/builds/src/ansible-dev
steps:
- name: CentOS
run: |
echo "docker build --no-cache -f build/Containerfile.centos -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_CENTOS }}:${{ env.GITHUB_REF_NAME }} ."
docker build --no-cache -f build/Containerfile.centos -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_CENTOS }}:${{ env.GITHUB_REF_NAME }} .
- name: Fedora
run: |
echo "docker build --no-cache -f build/Containerfile.fedora -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_FEDORA }}:${{ env.GITHUB_REF_NAME }} ."
docker build --no-cache -f build/Containerfile.fedora -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_FEDORA }}:${{ env.GITHUB_REF_NAME }} .
- name: Debian
run: |
echo "docker build --no-cache -f build/Containerfile.debian -t ${{ vars.REGISTRY }}/${{ env.GITHUB_REPOSITORY }}/${{ vars.BUILD_NAME_DEBIAN }}:${{ env.GITHUB_REF_NAME }} ."
docker build --no-cache -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