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

EFI: Move to GitHub actions #181

Open
sheplu opened this issue Feb 21, 2024 · 10 comments
Open

EFI: Move to GitHub actions #181

sheplu opened this issue Feb 21, 2024 · 10 comments
Assignees

Comments

@sheplu
Copy link
Member

sheplu commented Feb 21, 2024

Motivation

GitHub Action is a well know CI/CD tool that is also the main tools on Github. Using said actions would allow us to reduce the number of external dependencies while also using all the feature from github (and the integration).
If possible all other solutions (like jenkins or saas) should be remove and rewritten to leverage github action

Expectation

Only rely on github action for all ci/cd operation, without using external SaaS solution with different configuration

Implementation

Go through all projects and all orgs, removing and updation ci/cd implementation

Status

Part: Technical
Status:

  • jshttp
  • pillarjs
  • expressjs

Draft

GitHub Actions are a great tool widely used by all Open Source Projects. This is still relatively new (a few years already) but allows all projects to not have to switch between different technologies and providers for the CI/CD part.

@UlisesGascon
Copy link
Member

Here is a list of projects using Travis across the organization:

Some of them have high chance to be just deprecated, based on #134. Note that api-error-handler is archived but not deprecated in NPM

@kibertoad
Copy link
Contributor

kibertoad commented Feb 29, 2024

@wesleytodd I can pickup some of this work, if it's already time for it

@wesleytodd
Copy link
Member

This is like the third issue I have seen with a list of repos which need something. I think we should make a spreadsheet with all of these as rows and each column being "needs X to be done" so we can track it centrally.

@kibertoad Can we do a central shared workflow for this? So that we can just reference that and have the bulk of the stuff in one place? Other than that I think yeah lets go on it!

@sheplu
Copy link
Member Author

sheplu commented Feb 29, 2024

@wesleytodd yep this would be the plan, to have some repo like a "express-actions" (or other name) that would only provide github action (step / workflows) and this would be imported everywhere. This would include

  • install
  • run test (all of them, maybe split them on multiple job for parallelism)
  • get all reports / compute reports (other things)
  • publish a package

By doing that we should be able to reduce all the workflow to only importing from a central repo, having a lot less maintenance.
As they are not harmonized right now, do we want to target and have that only for a new major release of all packages?

CF this issue #182

@wesleytodd
Copy link
Member

Ship IT!

@kibertoad kibertoad self-assigned this Feb 29, 2024
@kibertoad
Copy link
Contributor

@wesleytodd Can I get permissions to create repos for the org?

@sheplu
Copy link
Member Author

sheplu commented Feb 29, 2024

@kibertoad jumping in my train and creating that + access

Are we good with the name "github-action" ? I guess we can rename that later on too

@wesleytodd
Copy link
Member

Ah, I think that is an admin thing. We should probably document the process for that, but maybe for now lets just use the .github repo? https://github.com/expressjs/.github/

@wesleytodd
Copy link
Member

Before we make repos we should have a bit of a cool off to make sure folks have time to reply.

@kibertoad
Copy link
Contributor

Let's start with .github and see if we'll need an extra repo as we go

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

No branches or pull requests

4 participants