Skip to content

Conversation

@octo-sts
Copy link
Contributor

@octo-sts octo-sts bot commented May 21, 2025

@octo-sts octo-sts bot added request-version-update request for a newer version of a package automated pr labels May 21, 2025
@octo-sts
Copy link
Contributor Author

octo-sts bot commented May 21, 2025

⛓️ Build Failed: Constraint Not Satisfied

Error: Expected shell-tag: 14.41.0 but got: 14.42.0

Build Details

Category Details
Build System Melange (Wolfi package builder)
Failure Point Verify all the vars tags are up to date with the upstream

Root Cause Analysis 🔍

The build failed during a version verification step. The system expected shell-tag version 14.41.0 but found version 14.42.0 instead. This is likely a version constraint in the package definition that doesn't match the actual tag in the Git repository.


🔍 Build failure fix suggestions

Found similar build failures that have been fixed in the past and analyzed them to suggest a fix:

Similar PRs with fixes

Suggested Changes

File: gitlab-cng-17.11.yaml

  • update at line 16-17 (vars section)
    Original:
  # Shell tags: https://gitlab.com/gitlab-org/gitlab-shell/-/tags
  shell-commit: 8b00540589eeeefc1774c92260286b7da1a112d1
  shell-tag: 14.41.0

Replacement:

  # Shell tags: https://gitlab.com/gitlab-org/gitlab-shell/-/tags
  shell-commit: 45ab63c75241bc63a8d63a4b1689df20c4d32fec
  shell-tag: 14.42.0
Click to expand fix analysis

Analysis

The pattern across all similar fixed build failures shows that these issues occur when expected version tags in the package YAML file don't match the actual tags in the upstream repositories. Specifically, in each example:

  1. In fix #0, the 'exporter-tag' version was updated from 15.0.0 to 15.2.0 along with its corresponding commit hash.
  2. In fix Add binutils-2.39 configuration #1, the 'expected-commit' value was updated to match the actual commit hash for the specified version tag.
  3. In fix Add pax-utils into the OS. #2, both the package version and expected commit hash were updated to match the latest version.

In all cases, the solution involved updating version tags and corresponding commit hashes in the YAML file to match what actually exists in the upstream repositories. The current build failure follows this same pattern - the shell-tag is specified as 14.41.0 in the vars section, but the actual tag in the upstream repository is 14.42.0.

Click to expand fix explanation

Explanation

The build is failing because there's a mismatch between the expected shell-tag version in the YAML file (14.41.0) and the actual version in the upstream repository (14.42.0) as indicated by the error message: "Error: Expected shell-tag: 14.41.0 but got: 14.42.0".

The solution is to update the shell-tag in the vars section from 14.41.0 to 14.42.0. Additionally, the shell-commit hash needs to be updated to match the commit corresponding to the v14.42.0 tag in the gitlab-shell repository. The commit hash 45ab63c75241bc63a8d63a4b1689df20c4d32fec is the correct commit for tag v14.42.0 (obtained from examining the gitlab-shell repository tags).

This fix follows the same pattern as the previous fixes, where the version information in the package YAML file needs to be synchronized with the actual values in the upstream repositories. The build failure occurs during the "Verify all the vars tags are up to date with the upstream" step, which specifically checks that the tag values in the vars section match what's defined in the CNG repository's variables.yml file.

The YAML file explicitly has comments directing maintainers to check the vars section when updating versions, reinforcing that these values need to be kept in sync with upstream.

Click to expand alternative approaches

Alternative Approaches

  • Instead of updating the shell-tag to match the upstream value (14.42.0), another approach could be to investigate why the CNG repository is now using 14.42.0 instead of 14.41.0 and potentially pin to an older CNG commit that still uses the 14.41.0 shell version. However, this goes against Wolfi's principle of keeping packages up to date with upstream releases, so updating to 14.42.0 is the preferred approach.
  • If there are concerns about the newer shell version, a more comprehensive update could be done by checking if any other components also have version mismatches and updating them all simultaneously. This would require examining CNG's variables.yml file to verify all the other version tags (registry, exporter, logger) are also in sync.

Was this comment helpful? Please use 👍 or 👎 reactions on this comment.

@octo-sts octo-sts bot added the ai/skip-comment Stop AI from commenting on PR label May 21, 2025
@AmberArcadia AmberArcadia self-assigned this May 22, 2025
Signed-off-by: Amber Arcadia <[email protected]>
@AmberArcadia
Copy link
Member

Moved to enterprise, automation should retry this.

@octo-sts octo-sts bot deleted the wolfictl-df5d49dd-da63-49f5-86e8-72a089a1fdcc branch May 23, 2025 00:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai/skip-comment Stop AI from commenting on PR automated pr request-version-update request for a newer version of a package

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants