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

Implement API pipeline #140

Merged
merged 83 commits into from
Apr 7, 2021
Merged

Implement API pipeline #140

merged 83 commits into from
Apr 7, 2021

Conversation

f-f
Copy link
Member

@f-f f-f commented Mar 8, 2021

What does this do?

As per title, this PR implements and deploys a first working version of the main CI pipeline that implements the backend of the Registry API.

Rough summary of what happens in the pipeline:

  • someone puts a JSON value in an issue
  • a GitHub action kicks off and tries to parse that
  • if it conforms to an API Operation then it starts the publishing pipeline, which:
    • grabs the package from its location
    • if necessary converts it from Bower format
    • runs a bunch of checks on the package (see Implement CI checks pipeline #23)
    • repackages everything and uploads on our official package backend (which is up and running!)

Things not in scope for this PR

Can I publish packages after we merge this?

No. Because:

  • all the packages in the Bower registry need to be uploaded first
  • and we need some other improvements to the Manifest schema before that (e.g. Manifest description #124)

How to review this

  • all the TODOs left in the code are not supposed to be tackled now, they are either not urgent to get this off the ground, or just placeholders for future code. Some things we are not implementing now:
  • the main file you'll want to look at is ci/src/Registry/API.purs, everything else is built to support that
  • feel free to ignore the BowerImport module, I'll heavily refactor that in the next PR anyways
  • refactoring suggestions and improvements on the Registry design are most welcome, while things along the lines of "add more code" are less welcome (the PR is already giant, we just want to get this merged really)

Ticket bureaucracy

Fixes #96, fixes #3, fixes #16, fixes #23

@f-f f-f marked this pull request as ready for review March 30, 2021 21:17
@f-f
Copy link
Member Author

f-f commented Apr 2, 2021

I just realized we should forbid here the use of build metadata in the package version, as we agreed in #80

@f-f f-f merged commit 3d091b1 into master Apr 7, 2021
@f-f f-f deleted the api-pipeline branch April 7, 2021 09:14
@f-f f-f mentioned this pull request Sep 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants