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

scheduled workflow: Support multi-arch #27

Merged
merged 9 commits into from
Feb 14, 2025

Conversation

furushchev
Copy link
Contributor

@furushchev furushchev commented Feb 10, 2025

Hi!
This PR introduces Arm64 architecture support for scheduled workflows in GitHub Actions in addition to x64.
I hope this change will reduce some toil of the maintainer for the deployment.

Notes:
The use of sg on the Ubuntu Arm64 runners fails because it requires password inputs.
https://github.com/furushchev/ros-builder-action/actions/runs/13248229556/job/36979770116#step:6:6145

I changed the src/build.sh to use sudo instead of sg for running sbuild command.

Copy link
Member

@rhaschke rhaschke left a comment

Choose a reason for hiding this comment

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

Is Arm64 support publicly available on GHA now?
Last year, when I set that up, I had to resort to self-hosted runners.
Please, add an ARM job to the unittests in ci.yaml

@@ -13,34 +13,8 @@ jobs:
fail-fast: false
matrix:
DEB_DISTRO: [jammy, noble]
uses: ubi-agni/ros-builder-action/.github/workflows/build.yaml@main
ARCH: [x64, arm64]
uses: ./.github/workflows/scheduled_job.yaml
Copy link
Member

Choose a reason for hiding this comment

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

Why did you factor out the actual build rules? scheduled_job.yaml is not used elsewhere, is it?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

From what I've researched, it seems that the function to execute the deploy job upon success for each of the matrix-ized Jobs in Github Actions has not been implemented.
Therefore, I've decided to create a set of the jobs for each element of the matrix (build) and the deploy job as a reusable workflow, and then put that workflow job into a matrix.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@furushchev
Copy link
Contributor Author

@rhaschke

Is Arm64 support publicly available on GHA now?
Last year, when I set that up, I had to resort to self-hosted runners.
Please, add an ARM job to the unittests in ci.yaml

It is now available as public preview.
https://docs.github.com/en/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners#standard-github-hosted-runners-for-public-repositories
I updated the ci.yaml to enable the test on ARM. 👍

@rhaschke
Copy link
Member

@furushchev
Copy link
Contributor Author

@rhaschke Thank you for checking the scheduled workflow!

I think now it's ready for your review (and merge).

Copy link
Member

@rhaschke rhaschke left a comment

Choose a reason for hiding this comment

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

After having cleaned up this a little bit, I approach. Thanks for your effort!

@rhaschke rhaschke merged commit d0f11bd into ubi-agni:main Feb 14, 2025
10 checks passed
@furushchev furushchev deleted the scheduled-multiarch branch February 14, 2025 15:04
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