Skip to content

GitLab Next

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • GitLab GitLab
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 39,511
    • Issues 39,511
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 1,221
    • Merge requests 1,221
  • Requirements
    • Requirements
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
    • Value stream
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GitLab.org
  • GitLabGitLab
  • Merge requests
  • !8673

Merged
Created Dec 03, 2018 by Dmitriy Zaporozhets (DZ)@dzaporozhetsOwner4 of 11 tasks completed4/11 tasks

Add NPM registry support to GitLab packages

  • Overview 59
  • Commits 18
  • Pipelines 41
  • Changes 33

What does this MR do?

Add NPM registry support to GitLab packages:

  1. A user should be able to upload new packages to GitLab via npm publish.
  2. A user should be able to install scoped package dependency from GitLab via npm install.
  3. Authentication is done via oauth token. npm login is not supported at this stage.

Implementation

This MR adds 3 API endpoints:

  1. GET packages/npm/:package_name allows NPM to receive information about the package and all available versions.
  2. GET projects/:id/packages/npm/:package_name/-/*file_name allows NPM to download a package file.
  3. PUT projects/:id/packages/npm/:package_name is where npm will send JSON about uploaded package including base64 encoded content of package itself

Screenshot

Existing UI was reused 100%.

Screenshot_20181225_220704

What are the relevant issue numbers?

#5934 (closed)

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 /ee folder
  • 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)

Edited Dec 27, 2018 by Dmitriy Zaporozhets (DZ)
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: 5934-npm-package-management-mvc

Enable Gitpod?

To use Gitpod you must first enable the feature in the integrations section of your user preferences.

Cancel Enable Gitpod