@@ -24,85 +24,86 @@ The Packages feature allows GitLab to act as a repository for the following:
| [Go Proxy](go_proxy/index.md)**(PREMIUM)** | The Go proxy for GitLab enables every project in GitLab to be fetched with the [Go proxy protocol](https://proxy.golang.org/). | 13.1+ |
| [Composer Repository](composer_repository/index.md)**(PREMIUM)** | The GitLab Composer Repository will enable every project in GitLab to have its own space to store [Composer](https://getcomposer.org/) packages. | 13.2+ |
## Enable the Package Registry for your project
## View packages
If you cannot find the **{package}****Packages & Registries > Package
Registry** entry under your project's sidebar, ensure that:
You can view packages for your project or group.
1. The GitLab Package Registry has been enabled by your administrator (following
[this documentation](../../administration/packages/index.md)); and
1. The Package Registry has been enabled for your project.
1. Go to the project or group.
1. Go to **{package}****Packages & Registries > Package Registry**.
Once an administrator has enabled the GitLab Package Registry for your GitLab
instance, to enable Package Registry for your project:
You can search, sort, and filter packages on this page.
1. Go to your project's **Settings > General** page.
1. Expand the **Visibility, project features, permissions** section and enable the
**Packages** feature on your project.
1. Press **Save changes** for the changes to take effect. You should now be able to
see the **Packages & Registries > Package Registry** link in the sidebar.
For information on how to create and upload a package, view the GitLab documentation for your package type.
### View Packages for your project
## Use GitLab CI/CD to build packages
Navigating to your project's **{package}****Packages & Registries > Package Registry** will show a list
of all packages that have been added to your project.
You can use [GitLab CI/CD](./../../ci/README.md) to build packages.
For Maven and NPM packages, and Composer dependencies, you can
authenticate with GitLab by using the `CI_JOB_TOKEN`.
You can view which pipeline published the package, as well as the commit and
user who triggered it. To see if a package type supports being built via CI/CD,
check the specific documentation for your package type.
The Package Registry is automatically enabled.
If you are using a self-managed instance of GitLab, your administrator can remove
the menu item, **{package}****Packages & Registries**, from the GitLab sidebar. For more information,
see the [administration documentation](../../administration/packages/index.md).
You can also remove the Package Registry for your project specifically:
1. In your project, go to **{settings}****Settings > General**.
1. Expand the **Visibility, project features, permissions** section and disable the
**Packages** feature.
1. Click **Save changes**.
The **{package}****Packages & Registries > Package Registry** entry is removed from the sidebar.
## Package workflows
Learn how to use the GitLab Package Registry to build your own custom package workflow.
-[Use a project as a package registry](./workflows/project_registry.md) to publish all of your packages to one project.
- Publish multiple different packages from one [monorepo project](./workflows/monorepo.md).
## Suggested contributions
...
...
@@ -125,10 +126,3 @@ are adding support for [PHP](https://gitlab.com/gitlab-org/gitlab/-/merge_reques
| [RubyGems](https://gitlab.com/gitlab-org/gitlab/-/issues/803) | Use GitLab to host your own gems. |
| [SBT](https://gitlab.com/gitlab-org/gitlab/-/issues/36898) | Resolve dependencies from and deploy build output to SBT repositories when running SBT builds. |
| [Vagrant](https://gitlab.com/gitlab-org/gitlab/-/issues/36899) | Securely host your Vagrant boxes in local repositories. |
## Package workflows
Learning how to use the GitLab Package Registry will help you build your own custom package workflow.
-[Use a project as a package registry](./workflows/project_registry.md) to publish all of your packages to one project.
-[Working with a monorepo](./workflows/monorepo.md): Learn how to publish multiple different packages from one monorepo project.