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

edit workflow to add support for ppc64le image generation #1421

Merged
merged 4 commits into from
Aug 4, 2023

Conversation

Sapana-Khemkar
Copy link
Contributor

This closes #1419

Note to reviewers: remember to look at the commits in this PR and consider if they can be squashed

Summary Of Changes

This PR edits github actions workflow and add support to generate ppc64le image along with amd64 and arm64.

Additional Context

None

Local Testing

Please ensure you run the unit, integration and system tests before approving the PR.

To run the unit and integration tests:

$ make unit-tests integration-tests

You will need to target a k8s cluster and have the operator deployed for running the system tests.

For example, for a Kubernetes context named dev-bunny:

$ kubectx dev-bunny
$ make destroy deploy-dev
# wait for operator to be deployed
$ make system-tests

Copy link
Collaborator

@Zerpet Zerpet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for contributing to the cluster operator! The changes are in the right direction. I left a comment to remove two steps that won't be necessary.

Comment on lines 159 to 181
- name: OCI Metadata for single-arch ppc64le image
#if: startsWith(github.ref, 'refs/tags/v')
id: single-arch-meta-ppc64le
uses: docker/metadata-action@v4
with:
# list of Docker images to use as base name for tags
images: |
rabbitmqoperator/cluster-operator
flavor: |
latest=false
# generate Docker tags based on the following events/attributes
tags: |
type=semver,pattern={{version}},suffix=-ppc64le,latest=false
type=sha,suffix=-ppc64le,latest=false
- name: Build and push single-arch ppc64le image
#if: startsWith(github.ref, 'refs/tags/v')
uses: docker/build-push-action@v3
with:
context: .
platforms: linux/ppc64le
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.single-arch-meta-ppc64le.outputs.tags }}
labels: ${{ steps.single-arch-meta-ppc64le.outputs.labels }}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't need a special case for single-arch image for ppc64. The other single-arch image cases are to workaround a limitation from one of our internal processes. The ppc64 arch won't flow as part of that internal process, so this case won't be needed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Zerpet Noted and removed single arch image case for ppc64le

@Zerpet Zerpet self-assigned this Aug 4, 2023
@Zerpet
Copy link
Collaborator

Zerpet commented Aug 4, 2023

CI fails because the fork doesn't have access to the repo secrets. The Operator builds fine, and that should be enough. The entire pipeline will run after merging.

@Sapana-Khemkar
Copy link
Contributor Author

@Zerpet

Thank you for contributing to the cluster operator! The changes are in the right direction. I left a comment to remove two steps that won't be necessary.

@Zerpet thanks for quick review

@Zerpet
Copy link
Collaborator

Zerpet commented Aug 4, 2023

Thank you!

@Zerpet Zerpet merged commit bd5e152 into rabbitmq:main Aug 4, 2023
@Sapana-Khemkar
Copy link
Contributor Author

@Zerpet when is your next release planned so we can avoid using sha value docker pull

@Zerpet
Copy link
Collaborator

Zerpet commented Aug 7, 2023

There's not much to release a new minor yet v2.4.0...main

Probably after summer.

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.

Make rabbitmq/cluster-operator image available for ppc64le architecture
2 participants