Skip to content

Conversation

@Bodigrim
Copy link
Contributor

No description provided.

@Bodigrim Bodigrim closed this Jan 14, 2023
@Bodigrim Bodigrim reopened this Jan 15, 2023
@Bodigrim Bodigrim force-pushed the ci-again branch 3 times, most recently from b8ff3b0 to db82ba8 Compare January 23, 2023 00:17
@Bodigrim Bodigrim changed the title Another attempt with self-hosted runners Fix i386 CI job + switch ARM jobs to self-hosted runners Jan 23, 2023
@Bodigrim Bodigrim marked this pull request as ready for review January 23, 2023 00:56
@Bodigrim Bodigrim requested review from clyring and sjakobi January 23, 2023 00:56
matrix:
arch: [arm32v7, arm64v8]
steps:
- uses: docker://arm64v8/ubuntu:focal
Copy link
Contributor Author

@Bodigrim Bodigrim Jan 24, 2023

Choose a reason for hiding this comment

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

@hasufell I copied this incantation from your example, but could you advice what's the deal here? Why do we need an ARM container to run find -delete? Could it be the same container as below, in build steps?

Copy link
Member

Choose a reason for hiding this comment

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

I'm also unclear on this. And we seem to use an arm64v8 container in both versions of the job. Is this right?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That’s fine. I assume the only thing which matters is to run rm under docker to get correct access rights. Basically any container would do.

Copy link
Member

Choose a reason for hiding this comment

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

Yeah, the problem is that the self hosted runners are just processes on the host and don't run in temporary environments.

Since we run docker, the resulting files will be owned by root instead of the github user and the next actions/checkout will fail (because it runs as github user).

# back to emulation jobs above.
arm:
needs: build
runs-on: [self-hosted, Linux, ARM64]
Copy link
Member

Choose a reason for hiding this comment

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

Only one of the runners can execute 32bit.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Are you sure? I have not spot any issues so far using both runners.

Copy link
Member

Choose a reason for hiding this comment

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

Ok @angerman says the aarch64-linux-2-1-new machine can do EL0 AArch32 (32bit applications), just no full system AArch32 emulation.

@Bodigrim Bodigrim mentioned this pull request Jan 28, 2023
@Bodigrim
Copy link
Contributor Author

@clyring @sjakobi just a gentle ping, I'd like to fix the CI before reviewing open PRs.

@Bodigrim
Copy link
Contributor Author

Bodigrim commented Feb 3, 2023

@clyring @sjakobi another reminder to review. I hate broken CIs :)

@Bodigrim Bodigrim merged commit 50b07d9 into master Feb 8, 2023
@Bodigrim Bodigrim deleted the ci-again branch February 8, 2023 23:21
@Bodigrim Bodigrim added this to the 0.11.5.0 milestone Apr 25, 2023
Bodigrim added a commit to Bodigrim/bytestring that referenced this pull request May 28, 2023
* Fix i386 build

* Use self-hosted runners for ARM

* Simplify ARM CI jobs
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.

4 participants