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

Pants - Works On Arm Sponsored #314

Closed
benjyw opened this issue Nov 24, 2022 · 12 comments
Closed

Pants - Works On Arm Sponsored #314

benjyw opened this issue Nov 24, 2022 · 12 comments
Assignees
Labels
approved hardware/ampere-altra Projects getting Ampere Altra hardware

Comments

@benjyw
Copy link

benjyw commented Nov 24, 2022

If you are interested in filing a request for access to the Works on Arm test and
CI infrastructure, please fill out the details below.

Proposals will be evaluated on a biweekly cycle or on a best effort basis by Arm and Equinix Metal.

Name, email, company, job title

Benjy Weinberger, [email protected]
Pants Build, Maintainer
Toolchain, Co-founder/CEO

Project Title and description

The Pants Build System

Pants is a modern build system with a strong focus on Python, as well as JVM, Go and other languages. It uses static analysis to infer dependencies automatically, instead of requiring large amounts of accompanying config and metadata. Pants is written in a combination of Rust and Python. It is distributed on PyPI as a set of per-platform native Python wheels with an embedded .so built from the Rust code.

Pants currently has around 20 active maintainers, across several companies and organizations, plus many more casual, occasional contributors.

Describe your use case for these machines

As Linux on aarch64 becomes increasingly popular, more of our users are requesting that Pants run on this platform. To support this we need access to this platform to run CI to build, test and package Pants.

Which members of the community would benefit from your work?

An increasing number of users have been asking for this recently, including those who have commented on this ticket: pantsbuild/pants#12183

These fall into two broad categories:

  • People who must run Pants in CI or desktop on Arm because they are building native code to deploy to Arm in production
  • People running Pants on their CI or desktop Arm machines, even if their own code is not platform-specific

Is the code that you’re going to run 100% open source?

Yes.

Provide the URLs where it is located, or a Git repository.

Project code is here: https://github.com/pantsbuild/pants
Documentation is here: https://www.pantsbuild.org/

Does this project require ARMv8.2 (Yes/No/Not Sure)? If Yes, please provide details

I'm not sure. I don't have enough expertise here, and don't know what the forward/backward compatibility guarantees and constraints are. But we need whatever version will later run on a platform that identifies as Linux aarch64, so I'm guessing not v8.2 specifically?

What infrastructure (computing resources and network access) do you need?

We need resources sufficient to run a GitHub Actions self-hosted runner that would download third-party Rust and Python dependencies, compile Rust code, and run our platform-specific tests and smoke tests. For comparison, the specs for the Mac Minis we build on are: 8 cores, 16-32GB RAM, 256-512GB SSD, 1Gb network, and one of those each for x86 and M1 usually suffices.

Our request is for continuous ongoing support. Pants is supported by Pants Build, a registered California 501c(6) non-profit (I am the treasurer of that organization).

Describe / Name the continuous integration (CI) system for this project.

We use GitHub Actions, with hosted runners for Linux x86_64 and macOS 11 x86_64, and self-hosted runners for macOS 11 M1 and macOS 10.15 x86_64. We do not yet support Windows.

Our request is for hardware on which to run a self-hosted runner for Linux aarch64.

Will these machines be exclusively used for CI purposes?

Yes. See https://github.com/pantsbuild/pants/actions for CI dashboard.

Does the project allows the use of your project logo on ARM's developer website freely? Yes / No / Not Sure

Yes, we own our logo and as an officer of Pants Build I can approve this usage.

Please state your contributions to the open source community and any other relevant initiatives.

Brag a little bit about yourself, please!

If you insist... :)

I've been a software engineer for over 25 years, at companies such as Google, Twitter, and Foursquare. I was one of the co-creators of the original Pants v1 project back in 2010, and now am a core maintainer of its replacement, Pants v2. I've authored well over 1000 PRs to the Pants project. I also provide user support on Pants's support channels on Slack and GitHub discussions, respond to GitHub issues, perform code reviews for other maintainers, and so on. Almost all my work is now open-source work.

Thank you for considering our project! We would love to support Arm, and we must, but not having resources to run CI on has been the biggest blocker.

Important reminders and logistics

Approved projects will be expected to provide credit back to Works on Arm
in the form of a logo display, blog post, Twitter post, news release, or
some other suitable acknowledgement.

Approved projects are subject to a 90 day review process for termination.

When resources are not required anymore or when the project ends, please add comments on this issue so that we can reuse the hardware for someone else!
In case a project goes through ownership change or key people leaving, please promptly inform the team by adding comments on this issue. Our team will maintain dialogue with new members.

For more project information, see the following social channels:

@pgmwoa
Copy link
Contributor

pgmwoa commented Nov 28, 2022

Thanks for your interest in WoA. We will review the request and get back to you.

@benjyw
Copy link
Author

benjyw commented Nov 30, 2022

Thanks @pgmwoa!

@pgmwoa
Copy link
Contributor

pgmwoa commented Dec 9, 2022

@benjyw Pls refer to the email sent on 7th Dec related to this request.

@benjyw
Copy link
Author

benjyw commented Dec 9, 2022

Thanks! It went into my spam folder, so good thing you gave me a heads up here!

@benjyw
Copy link
Author

benjyw commented Dec 9, 2022

@pgmwoa I have replied to that email, thanks!

@pgmwoa
Copy link
Contributor

pgmwoa commented Dec 21, 2022

Resolved, closing the ticket

@pgmwoa pgmwoa closed this as completed Dec 21, 2022
@benjyw
Copy link
Author

benjyw commented Feb 9, 2023

I just wanted to follow up with the news that, thanks to the WoA hardware, we're now releasing Pants for Linux ARM. See for example https://pypi.org/project/pantsbuild.pants/2.16.0.dev6/#files . Pants 2.16.0 will be the first stable release with Linux ARM support, and we're very excited to announce that to our community soon!

Thanks again for helping us get to this milestone.

@shipra-ps
Copy link
Collaborator

Hi Benjy,

I had been trying to reach out to you to update that your duration for the server availability has already expired.

Can you please provide us an update on your current server usage and future plans for the project builds on ARM?

Regards,
Shipra Snehi
WoA Program Team

@benjyw
Copy link
Author

benjyw commented Jul 5, 2023 via email

@vielmetti
Copy link
Contributor

For reference, this is the published list of organizations using Pants.

https://www.pantsbuild.org/page/who-uses-pants

@benjyw
Copy link
Author

benjyw commented Jul 5, 2023

Thanks for posting that @vielmetti ! To clarify, that is a very small subset of the many hundreds (at least) of orgs using Pants.

@shipra-ps
Copy link
Collaborator

Hi @benjyw ,

I have sent one important communication to you over email on 10th Jul'24. Request you to check that and acknowledge.

Regards,
Shipra Snehi
WoA Program Team

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved hardware/ampere-altra Projects getting Ampere Altra hardware
Projects
None yet
Development

No branches or pull requests

5 participants