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

build: enable GitPod prebuilds #43698

Merged
merged 1 commit into from
Jul 9, 2022
Merged

build: enable GitPod prebuilds #43698

merged 1 commit into from
Jul 9, 2022

Conversation

Trott
Copy link
Member

@Trott Trott commented Jul 6, 2022

The goal here is to make it easier to get started contributing to Node.js. Ongoing contributors will find something like this useful too, although there are limitations (such as it won't be useful for compiling Windows executables for testing).

Experience it now by going to https://gitpod.io/#https://github.com/Trott/io.js (which is this PR up and running on my fork of this repository). If you have a GitPod account, you will get (in a matter of seconds) a development environment with a compiled version of the Node.js binary and artifacts in place so that recompiling small changes won't take much time either. People wishing to get started developing in Node.js core (and people wishing to not have to recompile after every V8 update, etc.) won't need to install the compilation tool chain and so on.

This will be very useful to have installed (even if only temporarily) for Grace Hopper Open Source Day.

This will probably require installing the GitPod app to this repository, so /ping @nodejs/tsc.

@Trott Trott added the tsc-agenda Issues and PRs to discuss during the meetings of the TSC. label Jul 6, 2022
@nodejs-github-bot nodejs-github-bot added the meta Issues and PRs related to the general management of the project. label Jul 6, 2022
@targos
Copy link
Member

targos commented Jul 6, 2022

The changes look good and simple enough, but I thought that our goal was to enable prebuilds for GitHub codespaces.

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

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

lgtm

@Trott
Copy link
Member Author

Trott commented Jul 6, 2022

I thought that our goal was to enable prebuilds for GitHub codespaces.

@targos I have arguments against such an approach, but if a conversation already happened, it's likely those arguments have been addressed. Is this in an issue somewhere?

My hope would be that we could land this and start using it immediately, and switch to (or add) another approach if a better (or more company-neutral) one becomes available. The advantages of using GitPod right now are:

  • We can start today if we wanted to. There is no additional work to be done aside from landing this PR and enabling the GitHub app. It's ready. (This is especially useful given the Open Source Day plans.) @danielleadams @fhinkel
  • Free for us.
  • Free tier for end users.
  • This is something we could stop doing at any time very easily.
  • Users do not need to install anything, not even an IDE. They can do everything in a browser. (But they don't have to. You can connect VS Code or whatever locally.)

Similar efforts:

@targos
Copy link
Member

targos commented Jul 6, 2022

Free for us.

Who is "us" ?

Is this in an issue somewhere?

A PR: #40825

I have no intention to block this, (the easier it is for everyone to contribute, the better), but I'd like to understand what your arguments against Codespaces are, as I think a lot of time was already spent trying to set that up.

@Trott
Copy link
Member Author

Trott commented Jul 6, 2022

Free for us.

Who is "us" ?

Node.js. You, me, the rest of the TSC, the OpenJS Foundation..... There's no cost for the node core repo to use this. (There are limitations of the free tier and we may run up against a limitation at some point, but getting started with this is certainly free, and it's worked OK for my fork.)

@Trott
Copy link
Member Author

Trott commented Jul 6, 2022

Is this in an issue somewhere?

A PR: #40825

I have no intention to block this, (the easier it is for everyone to contribute, the better), but I'd like to understand what your arguments against Codespaces are, as I think a lot of time was already spent trying to set that up.

@targos That PR is an attempt to set up a vendor-neutral configuration file that could be used by CodeSpaces, GitPod, and presumably other vendors. If that PR lands, it would make this one obsolete when devcontainers.json support lands in GitPod. Until then, both files can live side-by-side.

@Trott
Copy link
Member Author

Trott commented Jul 6, 2022

I'd like to understand what your arguments against Codespaces are

The main concerns I have is that (IIUC) there is no free tier for open source projects like ours in Codespaces. But I wouldn't be at all surprised if that is outdated/incorrect or otherwise irrelevant to our situation.

Copy link
Member

@mhdawson mhdawson left a comment

Choose a reason for hiding this comment

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

LGTM

@Trott
Copy link
Member Author

Trott commented Jul 6, 2022

GitHub app permissions required are specified at https://www.gitpod.io/docs/github-integration. They are:

  • Read access to code and metadata
  • Read and write access to commit statuses and pull requests

@F3n67u
Copy link
Member

F3n67u commented Jul 7, 2022

I usually use GitPod. I have not built nodejs successfully at CodeSpace, the machine in CodeSpace is only 4 core, 8 GB RAM. it is very limited. So I will strong +1 for this pr.

@benjamingr
Copy link
Member

@ErickWendel

@Trott Trott added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. and removed tsc-agenda Issues and PRs to discuss during the meetings of the TSC. labels Jul 8, 2022
Copy link
Contributor

@RaisinTen RaisinTen left a comment

Choose a reason for hiding this comment

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

LGTM

@aduh95 aduh95 added the commit-queue Add this label to land a pull request using GitHub Actions. label Jul 9, 2022
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Jul 9, 2022
@nodejs-github-bot nodejs-github-bot merged commit d4b1c23 into nodejs:main Jul 9, 2022
@nodejs-github-bot
Copy link
Collaborator

Landed in d4b1c23

@Trott Trott deleted the gitpod branch July 9, 2022 14:53
targos pushed a commit that referenced this pull request Jul 12, 2022
PR-URL: #43698
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Danielle Adams <adamzdanielle@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
@ghuntley
Copy link

👋 from Gitpod. Extending an ICMYI regarding our https://www.gitpod.io/blog/gitpod-for-opensource program which provides plan upgrades for open-source maintainers and key contributors. Members of the nodejs GitHub organisation are already are pre-approved and will receive their account upgrades automatically the next time a project is started on GitHub. If I missed anyone during the import (ie. GitHub user profile was private) or new folks have joined please put through an application (details in the blog post above).

targos pushed a commit that referenced this pull request Jul 20, 2022
PR-URL: #43698
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Danielle Adams <adamzdanielle@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
targos pushed a commit that referenced this pull request Jul 31, 2022
PR-URL: #43698
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Danielle Adams <adamzdanielle@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
guangwong pushed a commit to noslate-project/node that referenced this pull request Oct 10, 2022
PR-URL: nodejs/node#43698
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Danielle Adams <adamzdanielle@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. meta Issues and PRs related to the general management of the project.
Projects
None yet
Development

Successfully merging this pull request may close these issues.