From 4aac45b57fbb9f6b82df41a80dee87d998631f88 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 15 Jan 2025 16:40:54 -0500 Subject: [PATCH 1/2] Updates to release build file --- .gitea/workflows/build-release.yml | 42 ++++-------------------------- 1 file changed, 5 insertions(+), 37 deletions(-) diff --git a/.gitea/workflows/build-release.yml b/.gitea/workflows/build-release.yml index 5ecc2b3..2bac5d6 100644 --- a/.gitea/workflows/build-release.yml +++ b/.gitea/workflows/build-release.yml @@ -6,56 +6,24 @@ on: - release jobs: - Cleanup-Old-Artifacts: + Checkout-Branch: runs-on: self-hosted defaults: run: - working-directory: /home/builds/src + working-directory: /home/builds/src/ansible-dev 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 + - name: Checkout release branch 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 + run: git log -1 Build-Images: runs-on: self-hosted - needs: [Check-Environment] + needs: [Checkout-Branch] defaults: run: working-directory: /home/builds/src/ansible-dev -- 2.47.1 From 74e029b155b148229d4a32d0b0a55623697b7316 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 15 Jan 2025 16:43:21 -0500 Subject: [PATCH 2/2] Add staging CI file for testing releases --- .gitea/workflows/build-stage.yml | 73 ++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 .gitea/workflows/build-stage.yml diff --git a/.gitea/workflows/build-stage.yml b/.gitea/workflows/build-stage.yml new file mode 100644 index 0000000..a65f856 --- /dev/null +++ b/.gitea/workflows/build-stage.yml @@ -0,0 +1,73 @@ +name: Docker Image Build Pipeline + +on: + push: + branches: + - staging + +jobs: + Checkout-Branch: + runs-on: self-hosted + defaults: + run: + working-directory: /home/builds/src/ansible-dev + + steps: + - name: Checkout staging branch + run: | + 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 -- 2.47.1