Skip to content

TST: Use free Linux ARM64 runner#17645

Merged
pllim merged 3 commits intoastropy:mainfrom
pllim:free-arm
Jan 22, 2025
Merged

TST: Use free Linux ARM64 runner#17645
pllim merged 3 commits intoastropy:mainfrom
pllim:free-arm

Conversation

@pllim
Copy link
Member

@pllim pllim commented Jan 17, 2025

Description

This pull request is to switch from paid to free Linux ARM64 runner (in public beta now). Also see:

TODO

  • By checking this box, the PR author has requested that maintainers do NOT use the "Squash and Merge" button. Maintainers should respect this when possible; however, the final decision is at the discretion of the maintainer that merges the PR.

(in public beta now)
@pllim pllim added this to the v7.0.1 milestone Jan 17, 2025
@github-actions
Copy link
Contributor

Thank you for your contribution to Astropy! 🌌 This checklist is meant to remind the package maintainers who will review this pull request of some common things to look for.

  • Do the proposed changes actually accomplish desired goals?
  • Do the proposed changes follow the Astropy coding guidelines?
  • Are tests added/updated as required? If so, do they follow the Astropy testing guidelines?
  • Are docs added/updated as required? If so, do they follow the Astropy documentation guidelines?
  • Is rebase and/or squash necessary? If so, please provide the author with appropriate instructions. Also see instructions for rebase and squash.
  • Did the CI pass? If no, are the failures related? If you need to run daily and weekly cron jobs as part of the PR, please apply the "Extra CI" label. Codestyle issues can be fixed by the bot.
  • Is a change log needed? If yes, did the change log check pass? If no, add the "no-changelog-entry-needed" label. If this is a manual backport, use the "skip-changelog-checks" label unless special changelog handling is necessary.
  • Is this a big PR that makes a "What's new?" entry worthwhile and if so, is (1) a "what's new" entry included in this PR and (2) the "whatsnew-needed" label applied?
  • At the time of adding the milestone, if the milestone set requires a backport to release branch(es), apply the appropriate "backport-X.Y.x" label(s) before merge.

@github-actions

This comment was marked as resolved.

@pllim

This comment was marked as resolved.

@Rhys-T
Copy link

Rhys-T commented Jan 17, 2025

The permissions are actually right - the environment variables $PATH and $XDG_CONFIG_HOME (and possibly $HOME for some users?) are just pointing at the wrong directories (see actions/partner-runner-images#25, actions/partner-runner-images#27). They're working on fixing it.

If you need a temporary workaround for now, this is what I'm using. It's based off of actions/partner-runner-images#25 (comment), but adapted to fix both of the affected variables.

# Insert this at the beginning of the `steps` array:
    - name: Fix environment for ARM64 Linux runners (actions/partner-runner-images#25)
      run: for var in PATH XDG_CONFIG_HOME; do sed -Ee "s/^/${var}=/" -e 's/(runner)admin/\1/g' <<< "${!var}"; done | tee -a "$GITHUB_ENV"

$HOME actually seems to be right on mine, but if it's giving you problems too, you can just add it to the for loop.

@pllim pllim added the Upstream Action Required Was: Upstream Fix Required label Jan 17, 2025
@Rhys-T
Copy link

Rhys-T commented Jan 20, 2025

This seems to have been fixed on GitHub's end now. The runner now gets the correct /home/runner paths in its environment instead of /home/runneradmin.

@pllim
Copy link
Member Author

pllim commented Jan 22, 2025

Thank you. It is green! 🎉

Took 5m ish vs 9m for the paid runner. 🧐

@pllim pllim marked this pull request as ready for review January 22, 2025 17:16
@pllim
Copy link
Member Author

pllim commented Jan 22, 2025

The other jobs were cancelled on purpose because they are irrelevant here.

What do you think, @Cadair ? Merge?


# Native arm64 testing - we keep this in the weekly cron as we need to pay for it so we should
# minimize how many jobs we do.
# Native arm64 testing - we keep this in the weekly cron to avoid exceeding free quota.
Copy link
Member

Choose a reason for hiding this comment

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

I mean we have never exceeded the free quota on x86 jobs ;)

Seriously tho we could make one of the main jobs aarch64.

Copy link
Member Author

@pllim pllim Jan 22, 2025

Choose a reason for hiding this comment

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

I think moving it to CI proper would be much simpler if I wait for OpenAstronomy?

I can open follow-up issue here (#17656). Thanks!

Copy link
Member Author

Choose a reason for hiding this comment

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

Re: quota -- since it is still in "public beta," I am playing safe for now...

@Cadair
Copy link
Member

Cadair commented Jan 22, 2025

But yes :shipit:

@pllim pllim merged commit cd90ff2 into astropy:main Jan 22, 2025
22 of 43 checks passed
@pllim pllim deleted the free-arm branch January 22, 2025 19:36
meeseeksmachine pushed a commit to meeseeksmachine/astropy that referenced this pull request Jan 22, 2025
@pllim pllim removed the Upstream Action Required Was: Upstream Fix Required label Jan 22, 2025
pllim added a commit that referenced this pull request Jan 22, 2025
…645-on-v7.0.x

Backport PR #17645 on branch v7.0.x (TST: Use free Linux ARM64 runner)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants