Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Metadata Handling and Manifest Creation for Multi-Architecture Docker Builds #7

Closed

Conversation

Bcoderx6
Copy link

This PR resolves issues related to metadata handling, manifest creation, and multi-architecture Docker image builds in the CI/CD pipeline. The following key improvements have been made:

  • Improved Metadata Logging: Added a step to log the metadata JSON output to ensure that tags and other relevant fields are properly captured and debugged.
  • Fixed Tag Extraction: Updated the use of jq to correctly extract and format tags from the metadata JSON, ensuring that tags are properly applied during manifest creation.
  • Enhanced Manifest Creation: Implemented a loop to iterate over each platform digest, creating and pushing the manifest for all specified platforms. This ensures that all architecture digests are processed correctly.
  • Debug Steps Added: Additional logging and debug steps to trace issues with platforms, digests, and metadata.
  • Platform Support: Support for amd64 and 386 platforms is maintained, and other platforms such as arm/v7, arm64, and ppc64le are prepared for future inclusion once issues are resolved.

This PR aims to fix build and push issues, particularly when creating multi-architecture manifests for the Docker registry.

@viferga

@viferga
Copy link
Member

viferga commented Oct 22, 2024

You truly caught the issue with your commit related to architectures, it was here:
https://github.com/metacall/guix/pull/7/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721R74

As there was many other changers that were irrelevant, I have ended up making the changes directly into master, here are the commits:

  • The first one solves the architecture thing you pointed out in your PR: 51aea85
  • The second one solves the tagging issue, changing master into latest and implementing for the first time versioning: 5d82fcf

You can check out here that it worked:
https://hub.docker.com/repository/docker/metacall/guix/tags

I am going to close the PR as it is working on master. Thanks for your catch mate.

@viferga viferga closed this Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants