Merge branch 'docs-markdown-whitespaces' into 'master'
Docs: Remove extra whitespaces in docs See merge request gitlab-org/gitlab-ce!30493
This commit is contained in:
commit
735f360cb4
28 changed files with 67 additions and 77 deletions
|
@ -72,7 +72,7 @@ To archive those legacy job traces, please follow the instruction below.
|
|||
```
|
||||
|
||||
After you executed this task, GitLab instance queues up Sidekiq jobs (asynchronous processes)
|
||||
for migrating job trace files from local storage to object storage.
|
||||
for migrating job trace files from local storage to object storage.
|
||||
It could take time to complete the all migration jobs. You can check the progress by the following command
|
||||
|
||||
```bash
|
||||
|
|
|
@ -11,7 +11,7 @@ The Packages feature allows GitLab to act as a repository for the following:
|
|||
| [Maven Repository](../user/project/packages/maven_repository.md) | The GitLab Maven Repository enables every project in GitLab to have its own space to store [Maven](https://maven.apache.org/) packages. | 11.3+ |
|
||||
| [NPM Registry](../user/project/packages/npm_registry.md) | The GitLab NPM Registry enables every project in GitLab to have its own space to store [NPM](https://www.npmjs.com/) packages. | 11.7+ |
|
||||
|
||||
Don't you see your package management system supported yet?
|
||||
Don't you see your package management system supported yet?
|
||||
Please consider contributing
|
||||
to GitLab. This [development documentation](../development/packages.md) will guide you through the process.
|
||||
|
||||
|
|
|
@ -22,9 +22,9 @@ To configure the pseudonymizer, you need to:
|
|||
|
||||
- Provide a manifest file that describes which fields should be included or
|
||||
pseudonymized ([example `manifest.yml` file](https://gitlab.com/gitlab-org/gitlab-ee/tree/master/config/pseudonymizer.yml)).
|
||||
A default manifest is provided with the GitLab installation. Using a relative file path will be resolved from the Rails root.
|
||||
A default manifest is provided with the GitLab installation. Using a relative file path will be resolved from the Rails root.
|
||||
Alternatively, you can use an absolute file path.
|
||||
- Use an object storage and specify the connection parameters in the `pseudonymizer.upload.connection` configuration option.
|
||||
- Use an object storage and specify the connection parameters in the `pseudonymizer.upload.connection` configuration option.
|
||||
|
||||
**For Omnibus installations:**
|
||||
|
||||
|
|
|
@ -6,19 +6,19 @@ Two different storage layouts can be used
|
|||
to store the repositories on disk and their characteristics.
|
||||
|
||||
GitLab can be configured to use one or multiple repository shard locations
|
||||
that can be:
|
||||
that can be:
|
||||
|
||||
- Mounted to the local disk
|
||||
- Exposed as an NFS shared volume
|
||||
- Acessed via [gitaly] on its own machine.
|
||||
|
||||
In GitLab, this is configured in `/etc/gitlab/gitlab.rb` by the `git_data_dirs({})`
|
||||
configuration hash. The storage layouts discussed here will apply to any shard
|
||||
configuration hash. The storage layouts discussed here will apply to any shard
|
||||
defined in it.
|
||||
|
||||
The `default` repository shard that is available in any installations
|
||||
that haven't customized it, points to the local folder: `/var/opt/gitlab/git-data`.
|
||||
Anything discussed below is expected to be part of that folder.
|
||||
Anything discussed below is expected to be part of that folder.
|
||||
|
||||
## Legacy Storage
|
||||
|
||||
|
@ -108,7 +108,7 @@ question.
|
|||
### How to migrate to Hashed Storage
|
||||
|
||||
To start a migration, enable Hashed Storage for new projects:
|
||||
|
||||
|
||||
1. Go to **Admin > Settings > Repository** and expand the **Repository Storage** section.
|
||||
2. Select the **Use hashed storage paths for newly created and renamed projects** checkbox.
|
||||
|
||||
|
@ -129,7 +129,7 @@ an Omnibus Gitlab installation:
|
|||
sudo gitlab-rake gitlab:storage:migrate_to_hashed ID_FROM=50 ID_TO=100
|
||||
```
|
||||
|
||||
Check the [documentation][rake/migrate-to-hashed] for additional information and instructions for
|
||||
Check the [documentation][rake/migrate-to-hashed] for additional information and instructions for
|
||||
source-based installation.
|
||||
|
||||
#### Rollback
|
||||
|
@ -140,12 +140,12 @@ projects:
|
|||
1. Go to **Admin > Settings > Repository** and expand the **Repository Storage** section.
|
||||
2. Uncheck the **Use hashed storage paths for newly created and renamed projects** checkbox.
|
||||
|
||||
To schedule a complete rollback, see the
|
||||
To schedule a complete rollback, see the
|
||||
[rake task documentation for storage rollback](raketasks/storage.md#rollback-from-hashed-storage-to-legacy-storage) for instructions.
|
||||
|
||||
The rollback task also supports specifying a range of Project IDs. Here is an example
|
||||
of limiting the rollout to Project IDs 50 to 100, in an Omnibus Gitlab installation:
|
||||
|
||||
|
||||
```bash
|
||||
sudo gitlab-rake gitlab:storage:rollback_to_legacy ID_FROM=50 ID_TO=100
|
||||
```
|
||||
|
|
|
@ -229,7 +229,6 @@ PUT /projects/:id/boards/:board_id
|
|||
| `labels` | string | no | Comma-separated list of label names which the board should be scoped to |
|
||||
| `weight` | integer | no | The weight range from 0 to 9, to which the board should be scoped to |
|
||||
|
||||
|
||||
```bash
|
||||
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/projects/5/boards/1?name=new_name&milestone_id=43&assignee_id=1&labels=Doing&weight=4
|
||||
```
|
||||
|
|
|
@ -19,13 +19,13 @@ Example response:
|
|||
{
|
||||
"id": 1,
|
||||
"title": "Public key",
|
||||
"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
|
||||
"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
|
||||
"created_at": "2013-10-02T10:12:29Z"
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"title": "Another Public key",
|
||||
"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
|
||||
"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
|
||||
"created_at": "2013-10-02T11:12:29Z"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -302,7 +302,7 @@ POST /groups/:id/epics/:epic_iid/todo
|
|||
| Attribute | Type | Required | Description |
|
||||
|-------------|---------|----------|--------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](README.md#namespaced-path-encoding) owned by the authenticated user |
|
||||
| `epic_iid ` | integer | yes | The internal ID of a group's epic |
|
||||
| `epic_iid` | integer | yes | The internal ID of a group's epic |
|
||||
|
||||
```bash
|
||||
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/groups/1/epics/5/todo
|
||||
|
|
|
@ -67,7 +67,6 @@ POST /projects/:id/issues/:issue_iid/links
|
|||
| `target_project_id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) of a target project |
|
||||
| `target_issue_iid` | integer/string | yes | The internal ID of a target project's issue |
|
||||
|
||||
|
||||
```json
|
||||
{
|
||||
"source_issue" : {
|
||||
|
@ -141,14 +140,12 @@ Deletes an issue link, thus removes the two-way relationship.
|
|||
DELETE /projects/:id/issues/:issue_iid/links/:issue_link_id
|
||||
```
|
||||
|
||||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------|---------|----------|--------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user |
|
||||
| `issue_iid` | integer | yes | The internal ID of a project's issue |
|
||||
| `issue_link_id` | integer/string | yes | The ID of an issue relationship |
|
||||
|
||||
|
||||
```json
|
||||
{
|
||||
"source_issue" : {
|
||||
|
|
|
@ -57,7 +57,7 @@ GET /issues?confidential=true
|
|||
| `created_before` | datetime | no | Return issues created on or before the given time |
|
||||
| `updated_after` | datetime | no | Return issues updated on or after the given time |
|
||||
| `updated_before` | datetime | no | Return issues updated on or before the given time |
|
||||
| `confidential ` | Boolean | no | Filter confidential or public issues. |
|
||||
| `confidential` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
```bash
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/issues
|
||||
|
@ -206,7 +206,7 @@ GET /groups/:id/issues?confidential=true
|
|||
| `created_before` | datetime | no | Return issues created on or before the given time |
|
||||
| `updated_after` | datetime | no | Return issues updated on or after the given time |
|
||||
| `updated_before` | datetime | no | Return issues updated on or before the given time |
|
||||
| `confidential ` | Boolean | no | Filter confidential or public issues. |
|
||||
| `confidential` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
```bash
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/groups/4/issues
|
||||
|
@ -355,7 +355,7 @@ GET /projects/:id/issues?confidential=true
|
|||
| `created_before` | datetime | no | Return issues created on or before the given time |
|
||||
| `updated_after` | datetime | no | Return issues updated on or after the given time |
|
||||
| `updated_before` | datetime | no | Return issues updated on or before the given time |
|
||||
| `confidential ` | Boolean | no | Filter confidential or public issues. |
|
||||
| `confidential` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
|
||||
```bash
|
||||
|
|
|
@ -43,7 +43,7 @@ GET /issues_statistics?confidential=true
|
|||
| `created_before` | datetime | no | Return issues created on or before the given time |
|
||||
| `updated_after` | datetime | no | Return issues updated on or after the given time |
|
||||
| `updated_before` | datetime | no | Return issues updated on or before the given time |
|
||||
| `confidential ` | Boolean | no | Filter confidential or public issues. |
|
||||
| `confidential` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
```bash
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/issues_statistics
|
||||
|
@ -99,7 +99,7 @@ GET /groups/:id/issues_statistics?confidential=true
|
|||
| `created_before` | datetime | no | Return issues created on or before the given time |
|
||||
| `updated_after` | datetime | no | Return issues updated on or after the given time |
|
||||
| `updated_before` | datetime | no | Return issues updated on or before the given time |
|
||||
| `confidential ` | Boolean | no | Filter confidential or public issues. |
|
||||
| `confidential` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
```bash
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/groups/4/issues_statistics
|
||||
|
@ -155,8 +155,7 @@ GET /projects/:id/issues_statistics?confidential=true
|
|||
| `created_before` | datetime | no | Return issues created on or before the given time |
|
||||
| `updated_after` | datetime | no | Return issues updated on or after the given time |
|
||||
| `updated_before` | datetime | no | Return issues updated on or before the given time |
|
||||
| `confidential ` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
| `confidential` | Boolean | no | Filter confidential or public issues. |
|
||||
|
||||
```bash
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/projects/4/issues_statistics
|
||||
|
|
|
@ -485,7 +485,7 @@ Parameters
|
|||
| Attribute | Type | Required | Description |
|
||||
|-----------------|----------------|----------|------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user. |
|
||||
| `job_id ` | integer | yes | The unique job identifier. |
|
||||
| `job_id` | integer | yes | The unique job identifier. |
|
||||
| `artifact_path` | string | yes | Path to a file inside the artifacts archive. |
|
||||
|
||||
Example request:
|
||||
|
@ -782,7 +782,6 @@ DELETE /projects/:id/jobs/:job_id/artifacts
|
|||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `job_id` | integer | yes | ID of a job. |
|
||||
|
||||
|
||||
Example request:
|
||||
|
||||
```sh
|
||||
|
|
|
@ -131,7 +131,6 @@ Returns:
|
|||
- `201 Created` if the license is successfully added.
|
||||
- `400 Bad Request` if the license couldn't be added, with an error message explaining the reason.
|
||||
|
||||
|
||||
## Delete a license
|
||||
|
||||
```
|
||||
|
|
|
@ -105,7 +105,7 @@ DELETE /projects/:id/managed_licenses/:managed_license_id
|
|||
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/managed_licenses/4"
|
||||
```
|
||||
|
||||
When successful, it replies with an HTTP 204 response.
|
||||
When successful, it replies with an HTTP 204 response.
|
||||
|
||||
## Edit an existing managed license
|
||||
|
||||
|
|
|
@ -178,7 +178,6 @@ PUT /projects/:id/approvers
|
|||
}
|
||||
```
|
||||
|
||||
|
||||
## Merge Request-level MR approvals
|
||||
|
||||
Configuration for approvals on a specific Merge Request. Must be authenticated for all endpoints.
|
||||
|
@ -250,7 +249,6 @@ POST /projects/:id/merge_requests/:merge_request_iid/approvals
|
|||
| `merge_request_iid` | integer | yes | The IID of MR |
|
||||
| `approvals_required` | integer | yes | Approvals required before MR can be merged |
|
||||
|
||||
|
||||
```json
|
||||
{
|
||||
"id": 5,
|
||||
|
|
|
@ -192,7 +192,7 @@ access_token = client.password.get_token('user@example.com', 'secret')
|
|||
puts access_token.token
|
||||
```
|
||||
|
||||
## Access GitLab API with `access token`
|
||||
## Access GitLab API with `access token`
|
||||
|
||||
The `access token` allows you to make requests to the API on behalf of a user.
|
||||
You can pass the token either as GET parameter:
|
||||
|
|
|
@ -76,7 +76,7 @@ Example response:
|
|||
|
||||
> [Introduced](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/9305) in GitLab 11.8.
|
||||
|
||||
Get a list of package files of a single package.
|
||||
Get a list of package files of a single package.
|
||||
|
||||
```
|
||||
GET /projects/:id/packages/:package_id/package_files
|
||||
|
|
|
@ -91,7 +91,7 @@ POST /projects/:id/badges
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project ](README.md#namespaced-path-encoding) owned by the authenticated user |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user |
|
||||
| `link_url` | string | yes | URL of the badge link |
|
||||
| `image_url` | string | yes | URL of the badge image |
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ GET /projects/:id/statistics
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------- | ------ | -------- | ----------- |
|
||||
| `id ` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `id` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
|
||||
Example response:
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ GET /projects/:id/templates/:type
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------- | ------ | -------- | ----------- |
|
||||
| `id ` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `id` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `type` | string | yes| The type `(dockerfiles|gitignores|gitlab_ci_ymls|licenses)` of the template |
|
||||
|
||||
Example response (licenses):
|
||||
|
@ -93,7 +93,7 @@ GET /projects/:id/templates/:type/:key
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------- | ------ | -------- | ----------- |
|
||||
| `id ` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `id` | integer / string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `type` | string | yes| The type `(dockerfiles|gitignores|gitlab_ci_ymls|licenses)` of the template |
|
||||
| `key` | string | yes | The key of the template, as obtained from the collection endpoint |
|
||||
| `project` | string | no | The project name to use when expanding placeholders in the template. Only affects licenses |
|
||||
|
|
|
@ -6,7 +6,7 @@ The SCIM API implements the [the RFC7644 protocol](https://tools.ietf.org/html/r
|
|||
|
||||
NOTE: **Note:**
|
||||
[Group SSO](../user/group/saml_sso/index.md) and the feature
|
||||
flag `:group_scim` must be enabled for the group. For more information, see [SCIM setup documentation](../user/group/saml_sso/scim_setup.md#requirements).
|
||||
flag `:group_scim` must be enabled for the group. For more information, see [SCIM setup documentation](../user/group/saml_sso/scim_setup.md#requirements).
|
||||
|
||||
## Get a list of SAML users
|
||||
|
||||
|
|
|
@ -8,8 +8,8 @@ Navigate to the **Admin** area and go to the **Appearance** page.
|
|||
Under **System header and footer** insert your header message and/or footer message.
|
||||
Both background and font color of the header and footer are customizable.
|
||||
|
||||
You can also apply the header and footer messages to gitlab emails,
|
||||
by checking the **Enable header and footer in emails** checkbox.
|
||||
You can also apply the header and footer messages to gitlab emails,
|
||||
by checking the **Enable header and footer in emails** checkbox.
|
||||
Note that color settings will only be applied within the app interface and not to emails
|
||||
|
||||
![appearance](system_header_and_footer_messages/appearance.png)
|
||||
|
|
|
@ -53,7 +53,7 @@ allowed.
|
|||
|
||||
### Exclude params from parent namespaces!
|
||||
|
||||
> By default `declared(params) `includes parameters that were defined in all
|
||||
> By default `declared(params)`includes parameters that were defined in all
|
||||
parent namespaces.
|
||||
|
||||
– <https://github.com/ruby-grape/grape#include-parent-namespaces>
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# Code comments
|
||||
|
||||
Whenever you add comment to the code that is expected to be addressed at any time
|
||||
in future, please create a technical debt issue for it. Then put a link to it
|
||||
Whenever you add comment to the code that is expected to be addressed at any time
|
||||
in future, please create a technical debt issue for it. Then put a link to it
|
||||
to the code comment you've created. This will allow other developers to quickly
|
||||
check if a comment is still relevant and what needs to be done to address it.
|
||||
|
||||
Examples:
|
||||
Examples:
|
||||
|
||||
```rb
|
||||
# Deprecated scope until code_owner column has been migrated to rule_type.
|
||||
|
|
|
@ -76,7 +76,7 @@ See the [Rails guides] for more info.
|
|||
|
||||
## Email namespace
|
||||
|
||||
As of GitLab 11.7, we support a new format for email handler addresses. This was done to
|
||||
As of GitLab 11.7, we support a new format for email handler addresses. This was done to
|
||||
support catch-all mailboxes.
|
||||
|
||||
If you need to implement a feature which requires a new email handler, follow these rules
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
# Licensed feature availability **(STARTER)**
|
||||
|
||||
As of GitLab 9.4, we've been supporting a simplified version of licensed
|
||||
feature availability checks via `ee/app/models/license.rb`, both for
|
||||
As of GitLab 9.4, we've been supporting a simplified version of licensed
|
||||
feature availability checks via `ee/app/models/license.rb`, both for
|
||||
on-premise or GitLab.com plans and features.
|
||||
|
||||
## Restricting features scoped by namespaces or projects
|
||||
|
||||
GitLab.com plans are persisted on user groups and namespaces, therefore, if you're adding a
|
||||
feature such as [Related issues](../user/project/issues/related_issues.md) or
|
||||
[Service desk](../user/project/service_desk.md),
|
||||
feature such as [Related issues](../user/project/issues/related_issues.md) or
|
||||
[Service desk](../user/project/service_desk.md),
|
||||
it should be restricted on namespace scope.
|
||||
|
||||
1. Add the feature symbol on `EES_FEATURES`, `EEP_FEATURES` or `EEU_FEATURES` constants in
|
||||
`ee/app/models/license.rb`. Note on `ee/app/models/ee/namespace.rb` that _Bronze_ GitLab.com
|
||||
1. Add the feature symbol on `EES_FEATURES`, `EEP_FEATURES` or `EEU_FEATURES` constants in
|
||||
`ee/app/models/license.rb`. Note on `ee/app/models/ee/namespace.rb` that _Bronze_ GitLab.com
|
||||
features maps to on-premise _EES_, _Silver_ to _EEP_ and _Gold_ to _EEU_.
|
||||
2. Check using:
|
||||
|
||||
|
@ -22,12 +22,12 @@ project.feature_available?(:feature_symbol)
|
|||
|
||||
## Restricting global features (instance)
|
||||
|
||||
However, for features such as [Geo](../administration/geo/replication/index.md) and
|
||||
[Load balancing](../administration/database_load_balancing.md), which cannot be restricted
|
||||
to only a subset of projects or namespaces, the check will be made directly in
|
||||
However, for features such as [Geo](../administration/geo/replication/index.md) and
|
||||
[Load balancing](../administration/database_load_balancing.md), which cannot be restricted
|
||||
to only a subset of projects or namespaces, the check will be made directly in
|
||||
the instance license.
|
||||
|
||||
1. Add the feature symbol on `EES_FEATURES`, `EEP_FEATURES` or `EEU_FEATURES` constants in
|
||||
1. Add the feature symbol on `EES_FEATURES`, `EEP_FEATURES` or `EEU_FEATURES` constants in
|
||||
`ee/app/models/license.rb`.
|
||||
2. Add the same feature symbol to `GLOBAL_FEATURES`
|
||||
3. Check using:
|
||||
|
|
|
@ -11,7 +11,7 @@ def method
|
|||
|
||||
issue.save
|
||||
|
||||
render json: issue
|
||||
render json: issue
|
||||
end
|
||||
```
|
||||
|
||||
|
@ -21,7 +21,7 @@ def method
|
|||
issue = Issue.new
|
||||
issue.save
|
||||
|
||||
render json: issue
|
||||
render json: issue
|
||||
end
|
||||
```
|
||||
|
||||
|
|
|
@ -5,11 +5,11 @@ This document will guide you through adding another [package management system](
|
|||
See already supported package types in [Packages documentation](../administration/packages.md)
|
||||
|
||||
Since GitLab packages' UI is pretty generic, it is possible to add new
|
||||
package system support by solely backend changes. This guide is superficial and does
|
||||
not cover the way the code should be written. However, you can find a good example
|
||||
by looking at existing merge requests with Maven and NPM support:
|
||||
package system support by solely backend changes. This guide is superficial and does
|
||||
not cover the way the code should be written. However, you can find a good example
|
||||
by looking at existing merge requests with Maven and NPM support:
|
||||
|
||||
- [NPM registry support](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/8673).
|
||||
- [NPM registry support](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/8673).
|
||||
- [Maven repository](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/6607).
|
||||
- [Instance level endpoint for Maven repository](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/8757)
|
||||
|
||||
|
@ -17,44 +17,44 @@ by looking at existing merge requests with Maven and NPM support:
|
|||
|
||||
The existing database model requires the following:
|
||||
|
||||
- Every package belongs to a project.
|
||||
- Every package belongs to a project.
|
||||
- Every package file belongs to a package.
|
||||
- A package can have one or more package files.
|
||||
- The package model is based on storing information about the package and its version.
|
||||
|
||||
## API endpoints
|
||||
|
||||
Package systems work with GitLab via API. For example `ee/lib/api/npm_packages.rb`
|
||||
implements API endpoints to work with NPM clients. So, the first thing to do is to
|
||||
add a new `ee/lib/api/your_name_packages.rb` file with API endpoints that are
|
||||
necessary to make the package system client to work. Usually that means having
|
||||
endpoints like:
|
||||
Package systems work with GitLab via API. For example `ee/lib/api/npm_packages.rb`
|
||||
implements API endpoints to work with NPM clients. So, the first thing to do is to
|
||||
add a new `ee/lib/api/your_name_packages.rb` file with API endpoints that are
|
||||
necessary to make the package system client to work. Usually that means having
|
||||
endpoints like:
|
||||
|
||||
- GET package information.
|
||||
- GET package file content.
|
||||
- PUT upload package.
|
||||
|
||||
Since the packages belong to a project, it's expected to have project-level endpoint
|
||||
for uploading and downloading them. For example:
|
||||
for uploading and downloading them. For example:
|
||||
|
||||
```
|
||||
GET https://gitlab.com/api/v4/projects/<your_project_id>/packages/npm/
|
||||
PUT https://gitlab.com/api/v4/projects/<your_project_id>/packages/npm/
|
||||
```
|
||||
|
||||
Group-level and instance-level endpoints are good to have but are optional.
|
||||
Group-level and instance-level endpoints are good to have but are optional.
|
||||
|
||||
NOTE: **Note:**
|
||||
To avoid name conflict for instance-level endpoints we use
|
||||
To avoid name conflict for instance-level endpoints we use
|
||||
[the package naming convention](../user/project/packages/npm_registry.md#package-naming-convention)
|
||||
|
||||
## Configuration
|
||||
|
||||
GitLab has a `packages` section in its configuration file (`gitlab.rb`).
|
||||
It applies to all package systems supported by GitLab. Usually you don't need
|
||||
to add anything there.
|
||||
GitLab has a `packages` section in its configuration file (`gitlab.rb`).
|
||||
It applies to all package systems supported by GitLab. Usually you don't need
|
||||
to add anything there.
|
||||
|
||||
Packages can be configured to use object storage, therefore your code must support it.
|
||||
Packages can be configured to use object storage, therefore your code must support it.
|
||||
|
||||
## Database
|
||||
|
||||
|
@ -63,6 +63,6 @@ Every time you upload a new package, you can either create a new record of `Pack
|
|||
or add files to existing record. `PackageFile` should be able to store all file-related
|
||||
information like the file `name`, `side`, `sha1`, etc.
|
||||
|
||||
If there is specific data necessary to be stored for only one package system support,
|
||||
consider creating a separate metadata model. See `packages_maven_metadata` table
|
||||
If there is specific data necessary to be stored for only one package system support,
|
||||
consider creating a separate metadata model. See `packages_maven_metadata` table
|
||||
and `Packages::MavenMetadatum` model as example for package specific data.
|
||||
|
|
|
@ -654,7 +654,6 @@ and related tools such as:
|
|||
- <https://explain.depesz.com/>
|
||||
- <http://tatiyants.com/postgres-query-plan-visualization/>
|
||||
|
||||
|
||||
## Producing query plans
|
||||
|
||||
There are a few ways to get the output of a query plan. Of course you
|
||||
|
|
Loading…
Reference in a new issue