Add NPM registry support to GitLab packages
What does this MR do?
Add NPM registry support to GitLab packages:
- A user should be able to upload new packages to GitLab via
- A user should be able to install scoped package dependency from GitLab via
- Authentication is done via oauth token.
npm loginis not supported at this stage.
This MR adds 3 API endpoints:
GET packages/npm/:package_nameallows NPM to receive information about the package and all available versions.
GET projects/:id/packages/npm/:package_name/-/*file_nameallows NPM to download a package file.
PUT projects/:id/packages/npm/:package_nameis where npm will send JSON about uploaded package including base64 encoded content of package itself
Existing UI was reused 100%.
What are the relevant issue numbers?
Does this MR meet the acceptance criteria?
- Changelog entry added, if necessary
- Documentation created/updated
- Tests added for this feature/bug
- Conforms to the code review guidelines
- Conforms to the merge request performance guidelines
- Conforms to the style guides
- Conforms to the database guides
- Link to e2e tests MR added if this MR has Requires e2e tests label. See the Test Planning Process.
EE specific content should be in the top level
- For a paid feature, have we considered GitLab.com plans, how it works for groups, and is there a design for promoting it to users who aren't on the correct plan?
- Security reports checked/validated by reviewer
Closes #5934 (closed)