From 4aac45b57fbb9f6b82df41a80dee87d998631f88 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 15 Jan 2025 16:40:54 -0500 Subject: [PATCH 1/5] 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/5] 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 From 248c228ebbadaf1221673703fd153d31f2710262 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 15 Jan 2025 16:52:43 -0500 Subject: [PATCH 3/5] Update build-stage.yml --- .gitea/workflows/build-stage.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitea/workflows/build-stage.yml b/.gitea/workflows/build-stage.yml index a65f856..cfe911b 100644 --- a/.gitea/workflows/build-stage.yml +++ b/.gitea/workflows/build-stage.yml @@ -15,6 +15,7 @@ jobs: steps: - name: Checkout staging branch run: | + git fetch origin ${{ env.GITHUB_REF_NAME }}:${{ env.GITHUB_REF_NAME }} git checkout ${{ env.GITHUB_REF_NAME }} - name: Verify current commit -- 2.47.1 From 78739dfb8f3317a5641398ed9675b8d3b9df6846 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 15 Jan 2025 17:41:04 -0500 Subject: [PATCH 4/5] Updates to CI workflow --- .gitea/workflows/build-release.yml | 70 ------------------- ...uild-stage.yml => build-stage-release.yml} | 4 +- .gitea/workflows/build-test.yml | 3 + 3 files changed, 5 insertions(+), 72 deletions(-) delete mode 100644 .gitea/workflows/build-release.yml rename .gitea/workflows/{build-stage.yml => build-stage-release.yml} (96%) diff --git a/.gitea/workflows/build-release.yml b/.gitea/workflows/build-release.yml deleted file mode 100644 index 2bac5d6..0000000 --- a/.gitea/workflows/build-release.yml +++ /dev/null @@ -1,70 +0,0 @@ -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 release 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: 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 diff --git a/.gitea/workflows/build-stage.yml b/.gitea/workflows/build-stage-release.yml similarity index 96% rename from .gitea/workflows/build-stage.yml rename to .gitea/workflows/build-stage-release.yml index cfe911b..5c944f6 100644 --- a/.gitea/workflows/build-stage.yml +++ b/.gitea/workflows/build-stage-release.yml @@ -3,7 +3,7 @@ name: Docker Image Build Pipeline on: push: branches: - - staging + - staging,release jobs: Checkout-Branch: @@ -13,7 +13,7 @@ jobs: working-directory: /home/builds/src/ansible-dev steps: - - name: Checkout staging branch + - 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 }} diff --git a/.gitea/workflows/build-test.yml b/.gitea/workflows/build-test.yml index 18f41b4..2bbb6b4 100644 --- a/.gitea/workflows/build-test.yml +++ b/.gitea/workflows/build-test.yml @@ -16,6 +16,9 @@ jobs: - name: Cleanup old code run: rm -rfv * + - name: Cleanup old build cache + run: docker system prune -af + Check-Environment: runs-on: self-hosted -- 2.47.1 From e247105e3f0adb6944da3f8cc72dcae0f0b96025 Mon Sep 17 00:00:00 2001 From: Chris Hammer Date: Wed, 15 Jan 2025 17:53:50 -0500 Subject: [PATCH 5/5] Updates to CI workflow --- .gitea/workflows/{build-stage-release.yml => build-release.yml} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename .gitea/workflows/{build-stage-release.yml => build-release.yml} (99%) diff --git a/.gitea/workflows/build-stage-release.yml b/.gitea/workflows/build-release.yml similarity index 99% rename from .gitea/workflows/build-stage-release.yml rename to .gitea/workflows/build-release.yml index 5c944f6..e120d18 100644 --- a/.gitea/workflows/build-stage-release.yml +++ b/.gitea/workflows/build-release.yml @@ -3,7 +3,7 @@ name: Docker Image Build Pipeline on: push: branches: - - staging,release + - release jobs: Checkout-Branch: -- 2.47.1