Skip to content

feat(ci): isolate Azure flavor builds and standardize CST test tags#3060

Merged
ChristophShyper merged 6 commits into
masterfrom
dependency/alpine-3-24-1
Jul 7, 2026
Merged

feat(ci): isolate Azure flavor builds and standardize CST test tags#3060
ChristophShyper merged 6 commits into
masterfrom
dependency/alpine-3-24-1

Conversation

@github-actions

@github-actions github-actions Bot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

📝 Brief description

fix(ci): isolate Azure flavor builds and standardize CST test tags
fix: pass AZ_VERSION in proper order
fix: make default alpine packages install
fix: refresh docker-terragrunt dependencies and test matrix
Merge branch 'master' into dependency/alpine-3-24-1
chore: small improvements and cleanup

💻 Commits

  • b4280fa - ChristophShyper - 2026-07-07 21:12:46
    | chore: small improvements and cleanup
    |

  • fca4534 - Krzysztof Szyper - 2026-07-07 21:11:53
    | Merge branch 'master' into dependency/alpine-3-24-1
    | Signed-off-by: Krzysztof Szyper 45788587+ChristophShyper@users.noreply.github.com

  • 2ebd812 - ChristophShyper - 2026-07-07 18:38:41
    | fix: refresh docker-terragrunt dependencies and test matrix
    | Update docker-terragrunt to the current managed dependency set across
    | Terraform, OpenTofu, Terragrunt, GCP CLI, sops, Alpine package pins,
    | and selected Python requirements.
    |
    | Align the cron and Dependabot schedules with the org policy by moving
    | weekly dependency scans to Monday morning and Dependabot updates to
    | Wednesday morning.
    |
    | Make dependency:update run Alpine updates first, then package and tool
    | updates, and extend it to manage pip requirement pins as well. Use the
    | published docker-azure-cli release tag as the Azure source of truth so
    | docker-terragrunt only targets Azure versions that are actually
    | available as a base image.
    |
    | Normalize container-structure-test expectations to exact templated
    | versions, update the documented release tags, and remove the redundant
    | Azure CLI reinstall from Dockerfile.azure so Azure variants reuse the
    | docker-azure-cli base image instead of rebuilding that layer on every
    | image build.
    |

  • a89ba6c - ChristophShyper - 2026-06-24 23:22:19
    | fix: make default alpine packages install
    |

  • cd05443 - ChristophShyper - 2026-06-24 23:09:44
    | fix: pass AZ_VERSION in proper order
    |

  • c29fc07 - ChristophShyper - 2026-06-24 22:00:56
    fix(ci): isolate Azure flavor builds and standardize CST test tags
    Move Azure CLI installation and validation out of the base Dockerfile and
    into Dockerfile.azure so non-Azure flavors stay clean and only Azure-enabled
    images pull the Azure stack.

    Align the image set with the updated Azure CLI base by bumping Alpine to
    3.24.1, refreshing Alpine package pins, and updating structure tests to
    assert the new Alpine release and Azure version where applicable.

    Standardize CI candidate image tagging on the shared suffix format
    (-test) instead of the previous prefix-based test tags. Update the
    Taskfiles and PR/weekly workflows to build, pull, inspect, and run
    container-structure-tests against the suffix-tagged images consistently.

    Expand the PR and dependency-update workflow matrices to cover all supported
    terragrunt flavors, and make every Azure-aware workflow resolve AZ_VERSION
    from Dockerfile.azure so release and validation paths use the same source of
    truth.

    This keeps the plain/slim/AWS/GCP images free of Azure dependencies, makes
    the Azure variants explicit, and removes the CST tag mismatch that was
    breaking reusable workflow runs.

📁 Modified files

.dockerignore | 1 +
.github/dependabot.yml | 8 +-
.github/workflows/auto-pull-request-create.yml | 22 +--
.github/workflows/cron-dependency-update.yml | 24 +--
.github/workflows/manual-release-create.yml | 8 +-
Dockerfile | 16 +-
Dockerfile.azure (new) | 205 +++++++++++++++++++++++++
README.md | 2 +
Taskfile.docker.yml | 10 +-
Taskfile.scripts.yml | 85 +++++++++-
Taskfile.terragrunt.yml | 129 +++++++++++-----
pip/aws/requirements.txt | 2 +-
tests/aws-azure-gcp.yml | 31 +---
tests/aws-azure.yml | 29 +---
tests/aws-gcp.yml | 27 +---
tests/aws.yml | 25 +--
tests/azure-gcp.yml | 24 +--
tests/azure.yml | 22 +--
tests/gcp.yml | 20 +--
tests/ot.yml | 4 +-
tests/plain.yml | 18 +--
tests/slim.yml | 2 +-
tests/tf.yml | 4 +-
23 files changed, 475 insertions(+), 243 deletions(-)

⚠️ Additional information

  • Pushed to a branch with a proper name and provided proper commit message.
  • Provided a clear and concise description of what the issue is.

Check CONTRIBUTING.md and CODE_OF_CONDUCT.md for more information

Move Azure CLI installation and validation out of the base Dockerfile and
into Dockerfile.azure so non-Azure flavors stay clean and only Azure-enabled
images pull the Azure stack.

Align the image set with the updated Azure CLI base by bumping Alpine to
3.24.1, refreshing Alpine package pins, and updating structure tests to
assert the new Alpine release and Azure version where applicable.

Standardize CI candidate image tagging on the shared suffix format
(<tag>-test) instead of the previous prefix-based test tags. Update the
Taskfiles and PR/weekly workflows to build, pull, inspect, and run
container-structure-tests against the suffix-tagged images consistently.

Expand the PR and dependency-update workflow matrices to cover all supported
terragrunt flavors, and make every Azure-aware workflow resolve AZ_VERSION
from Dockerfile.azure so release and validation paths use the same source of
truth.

This keeps the plain/slim/AWS/GCP images free of Azure dependencies, makes
the Azure variants explicit, and removes the CST tag mismatch that was
breaking reusable workflow runs.
Update docker-terragrunt to the current managed dependency set across
Terraform, OpenTofu, Terragrunt, GCP CLI, sops, Alpine package pins,
and selected Python requirements.

Align the cron and Dependabot schedules with the org policy by moving
weekly dependency scans to Monday morning and Dependabot updates to
Wednesday morning.

Make dependency:update run Alpine updates first, then package and tool
updates, and extend it to manage pip requirement pins as well. Use the
published docker-azure-cli release tag as the Azure source of truth so
docker-terragrunt only targets Azure versions that are actually
available as a base image.

Normalize container-structure-test expectations to exact templated
versions, update the documented release tags, and remove the redundant
Azure CLI reinstall from Dockerfile.azure so Azure variants reuse the
docker-azure-cli base image instead of rebuilding that layer on every
image build.
@ChristophShyper ChristophShyper changed the title fix(ci): isolate Azure flavor builds and standardize CST test tags feat(ci): isolate Azure flavor builds and standardize CST test tags Jul 7, 2026
Signed-off-by: Krzysztof Szyper <45788587+ChristophShyper@users.noreply.github.com>
@ChristophShyper ChristophShyper merged commit 7194936 into master Jul 7, 2026
6 checks passed
@ChristophShyper ChristophShyper deleted the dependency/alpine-3-24-1 branch July 7, 2026 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant