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

REQUEST: Adding a github application for self-actuated #1821

Closed
atoulme opened this issue Nov 28, 2023 · 25 comments
Closed

REQUEST: Adding a github application for self-actuated #1821

atoulme opened this issue Nov 28, 2023 · 25 comments
Assignees
Labels
area/repo-maintenance Maintenance of repos in the open-telemetry org

Comments

@atoulme
Copy link
Contributor

atoulme commented Nov 28, 2023

Please install this application:
https://github.com/apps/self-actuated

self-actuated offers github action runners that run on native ARM, which are offered by the CNCF.

See background and context here: https://actuated.dev/blog/arm-ci-cncf-ampere

Several CNCF projects already use this setup to run native ARM builds.

@atoulme atoulme added the area/repo-maintenance Maintenance of repos in the open-telemetry org label Nov 28, 2023
@trask
Copy link
Member

trask commented Nov 28, 2023

this looks great!

do you know if we still need to contact them to onboard?

If you are working on a CNCF project and would like access, please contact us via this form. If your project gets selected for the pilot, there are a couple of things you may need to do.

@atoulme
Copy link
Contributor Author

atoulme commented Nov 28, 2023

I have contacted them and went through an onboarding call this morning. I can be the liaison moving forward, and add more folks from the TC to run this.

@alexellis
Copy link

Hi @trask, I'm the founder of actuated 👋

@atoulme has been through onboarding and we just need the app installed so he can start building on the managed server pool.

The program is now fully subscribed, so we really need each project to move forward to keep their place. When do you think you can get the installation done?

Thanks,

Alex

@alexellis
Copy link

@atoulme we have limited availability for sponsored Arm CI, is there a problem blocking moving foward?

@atoulme
Copy link
Contributor Author

atoulme commented Dec 11, 2023

There is no problem, just inertia. @open-telemetry/technical-committee do you have cycles to perform the installation please?

@dneary
Copy link

dneary commented Jan 25, 2024

Hi! Following up now that we are in the new year, it seems that https://github.com/apps/self-actuated still needs to be installed for the OpenTelemetry org to allow projects under the org to use the Actuated build service.

What is the decision process for changes like this?

Thanks!

@tigrannajaryan
Copy link
Member

@atoulme a couple questions to clarify:

  • Do we need this to make Collector builds or something else?
  • What platforms does it add? I see we already have Darwin ARM builds. Does it add other ARMs?
  • You said you "went through an onboarding call this morning" and can add TC. What is the purpose of adding TC? Just knowledge sharing or there is any sort of ongoing account management needed?
  • Generally do we expect any maintenance needed from the TC for this? Do we need to add runners or do anything special? What does the process of using self-actuated look like from Otel perspective?

@atoulme
Copy link
Contributor Author

atoulme commented Jan 25, 2024

@atoulme a couple questions to clarify:

  • Do we need this to make Collector builds or something else?

It is useful across all projects, and for example the Node.js SDK would benefit.

  • What platforms does it add? I see we already have Darwin ARM builds. Does it add other ARMs?

It adds linux arm64.

  • You said you "went through an onboarding call this morning" and can add TC. What is the purpose of adding TC? Just knowledge sharing or there is any sort of ongoing account management needed?

I need TC to install the github app. I don't have administrative privileges.

  • Generally do we expect any maintenance needed from the TC for this? Do we need to add runners or do anything special? What does the process of using self-actuated look like from Otel perspective?

My understanding is that further discovery is gated by the install of the github app, but it wouldn't be on the TC to run any more maintenance efforts after this. The runners become available via the github app.

@trask
Copy link
Member

trask commented Jan 25, 2024

we've had other requests for arm CI support in #1162, #1281

cc @dmathieu @bobstrecansky @Kielek @austinlparker

@austinlparker
Copy link
Member

Yes, the demo project needs this.

@Kielek
Copy link

Kielek commented Jan 26, 2024

.NET Auto-Instrumentation needs ARM64 to build and tests instrumentation on such machines. We have had requests to support linux systems on ARM64.

@tigrannajaryan
Copy link
Member

As per the process here, permissions requested are:

  • to receive notifications from GitHub when you trigger Workflows
  • to register VMs it has launched for you as runners

This looks acceptable to me.

@tigrannajaryan
Copy link
Member

As per the process here, @open-telemetry/collector-maintainers please confirm the need for this app.

@alexellis
Copy link

I'm glad to see this seems to be moving forward again.

There's limited sponsored slots in the program, and we've now held this place for Open Telemetry for 2 months without it going ahead on your end. That means another project could have been enrolled and running builds for 60 days already.

How much longer do you expect it to take before @atoulme could have the app installed and start running builds?

@tigrannajaryan
Copy link
Member

I have just learned that we can use the CNCF Cluster today for arm builds for free https://github.com/cncf/cluster
Have we looked into this?

@dneary
Copy link

dneary commented Jan 26, 2024

Yes! That is this.

Backing up: last Fall, Ampere and CNCF put together a pilot program to enable CNCF projects to run their GitHub Arm builds through Actuated. For projects, this means that you're not dealing with infrastructure provisioning, or managing VMs on a cloud as self-hosted runners. Instead, your build run in a MicroVM on an Equinix server (part of the CNCF Infrastructure Lab)where the server's resources (160 cores, I believe) are shared by a number of projects. Actuated takes care of the plumbing. This post from Alex describes the pilot in detail.

This is free to projects, and is the easiest way to do CI on Arm with GitHub Actions.

@atoulme
Copy link
Contributor Author

atoulme commented Jan 31, 2024

@tigrannajaryan please see above - Dave originally pointed me at this post and in particular the form it contains to request access.

@mx-psi
Copy link
Member

mx-psi commented Feb 1, 2024

I would love having Linux ARM64 testing on CI on the OpenTelemetry Collector. It's a fairly common OS-architecture combination for which we currently have very limited testing and given the complexity of the Collector and the presence of architecture-specific code it would be great to ensure that our test suite passes there.

@alexellis
Copy link

This has already been talked about on an hour's call with @atoulme who has an immediate usecase and need for securely managed Arm64 CI, we've allocated the space to OTEL and just need the TC to say yes so he can get on with things.

Who needs to make a decision here, is there a particular person who we need to ping or a particular meeting @atoulme needs to attend?

All details are in the docs and the announcement blog post that @dneary linked already.

@tigrannajaryan tigrannajaryan self-assigned this Feb 1, 2024
@tigrannajaryan
Copy link
Member

tigrannajaryan commented Feb 1, 2024

I have just had a brief chat with @atoulme to better understand the request. He will post back his findings and we can move from there.

I am assigning this to myself to make sure it doesn't fall through the cracks.

@alexellis
Copy link

Here is everything you should need to know. It's an add-on to GitHub Actions to provide ephemeral CI runners for Arm, for CNCF projects:

https://actuated.dev/blog/arm-ci-cncf-ampere

@atoulme is going to do the work to port jobs to Arm, if you have specific concerns or process, let us know.

@atoulme
Copy link
Contributor Author

atoulme commented Feb 2, 2024

I have contacted Alex Ellis, the CEO of Actuated, and he has explained to me that all the hardware and resources is going to Equinix just like the CNCF cluster project, tapping into the same funds and same approach.
What Actuated offers on top of this is a layer of management for github action runners so we don't have to do maintenance of servers.
Actuated provides the provisioning of the runners and their ongoing care.
At this time, etcd, runc, containerd, ArgoCD and fluent, cilium, falco all use it at scale.
Here's more info on what they do if you're interested: https://actuated.dev/blog/is-the-self-hosted-runner-safe-github-actions

@tigrannajaryan
Copy link
Member

Thank you all for clarifications.

I installed the app and gave it access to the following repositories:

open-telemetry/opentelemetry-collector-releases
open-telemetry/opentelemetry-collector-contrib
open-telemetry/opentelemetry-collector

If we need permissions for other repos please let me know.

@trask
Copy link
Member

trask commented Feb 6, 2024

Closing, if any other repos need access, please open a repo maintenance request issue, thx!

@atoulme
Copy link
Contributor Author

atoulme commented Feb 15, 2024

Here is a first attempt at running using actuated: open-telemetry/opentelemetry-collector#9584

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/repo-maintenance Maintenance of repos in the open-telemetry org
Projects
None yet
Development

No branches or pull requests

8 participants