Skip to content

chore(ci): run tests on both amd64 and arm64 #3889

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

Merged
merged 2 commits into from
Feb 6, 2025

Conversation

kolesnikovae
Copy link
Collaborator

@kolesnikovae kolesnikovae commented Feb 5, 2025

  • Enables Go unit tests on arm64.
  • arm64 e2e: enabled for the regular path only. The canvas library cypress depends on is not released for linux/arm64, so I had to add some dependencies.
    • The test will take longer and will likely determine the overall CI workflow duration. Given that the test is not very extensive, we may consider disabling it. However, even a smoke test is better than nothing – this is why I kept it.
  • Linting is still only run for linux/amd64. As long as we don't have arch-dependent code, this is fine. Let me know if you want to enable linting for arm64 as well.

Resolves #3880

@kolesnikovae kolesnikovae changed the title chore(ci): run unit and integration tests on both amd64 and arm64 chore(ci): run unit tests on both amd64 and arm64 Feb 5, 2025
@kolesnikovae kolesnikovae force-pushed the chore/ci-test-multiarch branch from 8be1d3a to 412607f Compare February 5, 2025 03:35
@korniltsev
Copy link
Collaborator

I think we can remove yarn --frozen-lockfile and all the dependencies from workflows alltogether. The legacy frontend is build in docker

@kolesnikovae kolesnikovae force-pushed the chore/ci-test-multiarch branch from 5fa7bb6 to 71faf6c Compare February 5, 2025 03:46
@kolesnikovae kolesnikovae force-pushed the chore/ci-test-multiarch branch from 121fb6f to 544761c Compare February 5, 2025 04:53
Comment on lines +37 to +38
- name: Install node-canvas
run: sudo apt-get update && sudo apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
Copy link
Collaborator Author

@kolesnikovae kolesnikovae Feb 5, 2025

Choose a reason for hiding this comment

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

This is for cypress, not our frontend. This is not required for amd64, but I added it there as well just in case – frankly, it doesn't matter what exactly version of canvas we use in cypress, but I think it's better to keep steps identical

@kolesnikovae kolesnikovae marked this pull request as ready for review February 5, 2025 05:11
@kolesnikovae kolesnikovae requested a review from a team as a code owner February 5, 2025 05:11
@kolesnikovae kolesnikovae changed the title chore(ci): run unit tests on both amd64 and arm64 chore(ci): run tests on both amd64 and arm64 Feb 5, 2025
Copy link
Contributor

@simonswine simonswine 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 your work

Comment on lines 20 to 23
- arch: amd64
runner: ubuntu-latest
- arch: arm64
runner: github-hosted-ubuntu-arm64
Copy link
Contributor

Choose a reason for hiding this comment

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

According to this https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/ this image might be free/cheaper

Suggested change
- arch: amd64
runner: ubuntu-latest
- arch: arm64
runner: github-hosted-ubuntu-arm64
- arch: amd64
runner: ubuntu-24.04
- arch: arm64
runner: ubuntu-24.04-arm

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

TIL Azure Cobalt 100

@kolesnikovae kolesnikovae force-pushed the chore/ci-test-multiarch branch from 5091c21 to 3f565dd Compare February 6, 2025 02:54
@kolesnikovae kolesnikovae merged commit b28a42c into main Feb 6, 2025
21 checks passed
@kolesnikovae kolesnikovae deleted the chore/ci-test-multiarch branch February 6, 2025 03:04
shelldandy pushed a commit to shelldandy/pyroscope that referenced this pull request Mar 14, 2025
* run tests on both amd64 and arm64

* use ubuntu-24.04 runners
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.

Multi-arch unit and integration tests
3 participants