From 2412f7e0c1235651e4884053294f8c9ee63f69b4 Mon Sep 17 00:00:00 2001 From: Caleb Cumpian Date: Fri, 29 May 2026 15:17:01 -0500 Subject: [PATCH] Update actions for better versioning Signed-off-by: Caleb Cumpian --- .github/workflows/test-and-deploy.yml | 45 ++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test-and-deploy.yml b/.github/workflows/test-and-deploy.yml index cf3f430..8ecc3da 100644 --- a/.github/workflows/test-and-deploy.yml +++ b/.github/workflows/test-and-deploy.yml @@ -4,7 +4,6 @@ on: push: branches: - main - - add-gh-actions - ibm-cloud-secrets-manager tags: - '*' @@ -14,9 +13,7 @@ on: env: PYTHON_VERSION: '3.12.13' - CONTAINER_REGISTRY: icr.io IBM_CLOUD_REGION: us-east - DOCKER_IMAGE_NAME: icr.io/git-defenders/detect-secrets-stream jobs: test: @@ -32,13 +29,30 @@ jobs: with: python-version: ${{ env.PYTHON_VERSION }} - - name: Set VERSION environment variable + - name: Set build environment variables run: | - if [ -n "${{ github.ref_type == 'tag' && github.ref_name || '' }}" ]; then + # Set VERSION based on ref type + if [ "${{ github.ref_type }}" == "tag" ]; then echo "VERSION=${{ github.ref_name }}" >> $GITHUB_ENV + elif [ "${{ github.ref }}" == "refs/heads/main" ]; then + echo "VERSION=main-${{ github.run_number }}-$(date +%Y%m%d-%H%M%S)" >> $GITHUB_ENV + elif [ "${{ github.ref }}" == "refs/heads/ibm-cloud-secrets-manager" ]; then + echo "VERSION=ibm-cloud-secrets-manager-${{ github.run_number }}-$(date +%Y%m%d-%H%M%S)" >> $GITHUB_ENV else echo "VERSION=github-actions-${{ github.run_number }}-$(date +%Y%m%d-%H%M%S)" >> $GITHUB_ENV fi + + # Set CONTAINER_REGISTRY and DOCKER_IMAGE_NAME based on branch + if [ "${{ github.ref }}" == "refs/heads/ibm-cloud-secrets-manager" ] || [ "${{ github.ref_type }}" == "tag" ]; then + echo "CONTAINER_REGISTRY=icr.io" >> $GITHUB_ENV + echo "DOCKER_IMAGE_NAME=icr.io/git-defenders/detect-secrets-stream" >> $GITHUB_ENV + elif [ "${{ github.ref }}" == "refs/heads/main" ]; then + echo "CONTAINER_REGISTRY=icr.io" >> $GITHUB_ENV + echo "DOCKER_IMAGE_NAME=icr.io/git-defenders/detect-secrets-stream-dev" >> $GITHUB_ENV + else + echo "CONTAINER_REGISTRY=icr.io" >> $GITHUB_ENV + echo "DOCKER_IMAGE_NAME=icr.io/git-defenders/detect-secrets-stream-test" >> $GITHUB_ENV + fi - name: Display build version run: echo "Build Version=${{ env.VERSION }}" @@ -153,15 +167,30 @@ jobs: with: python-version: ${{ env.PYTHON_VERSION }} - - name: Set VERSION environment variable + - name: Set deployment environment variables run: | - if [ -n "${{ github.ref_type == 'tag' && github.ref_name || '' }}" ]; then + # Set VERSION based on ref type + if [ "${{ github.ref_type }}" == "tag" ]; then echo "VERSION=${{ github.ref_name }}" >> $GITHUB_ENV + elif [ "${{ github.ref }}" == "refs/heads/main" ]; then + echo "VERSION=main-${{ github.run_number }}-$(date +%Y%m%d-%H%M%S)" >> $GITHUB_ENV elif [ "${{ github.ref }}" == "refs/heads/ibm-cloud-secrets-manager" ]; then - echo "VERSION=ibm-cloud-secrets-manager-$(date +%Y.%m.%d)" >> $GITHUB_ENV + echo "VERSION=ibm-cloud-secrets-manager-${{ github.run_number }}-$(date +%Y%m%d-%H%M%S)" >> $GITHUB_ENV else echo "VERSION=github-actions-${{ github.run_number }}-$(date +%Y%m%d-%H%M%S)" >> $GITHUB_ENV fi + + # Set CONTAINER_REGISTRY and DOCKER_IMAGE_NAME based on branch + if [ "${{ github.ref }}" == "refs/heads/ibm-cloud-secrets-manager" ] || [ "${{ github.ref_type }}" == "tag" ]; then + echo "CONTAINER_REGISTRY=icr.io" >> $GITHUB_ENV + echo "DOCKER_IMAGE_NAME=icr.io/git-defenders/detect-secrets-stream" >> $GITHUB_ENV + elif [ "${{ github.ref }}" == "refs/heads/main" ]; then + echo "CONTAINER_REGISTRY=icr.io" >> $GITHUB_ENV + echo "DOCKER_IMAGE_NAME=icr.io/git-defenders/detect-secrets-stream-dev" >> $GITHUB_ENV + else + echo "CONTAINER_REGISTRY=icr.io" >> $GITHUB_ENV + echo "DOCKER_IMAGE_NAME=icr.io/git-defenders/detect-secrets-stream-test" >> $GITHUB_ENV + fi - name: Display build version run: echo "Build Version=${{ env.VERSION }}"