Commit 7f2e14fe authored by GitLab Bot's avatar GitLab Bot

Automatic merge of gitlab-org/gitlab-ce master

parents 4d2d2d03 44c9de80
---
type: reference, howto
---
# Introduction to job artifacts # Introduction to job artifacts
> **Notes:** > - Introduced in GitLab 8.2 and GitLab Runner 0.7.0.
> > - Starting with GitLab 8.4 and GitLab Runner 1.0, the artifacts archive format changed to `ZIP`, and it is now possible to browse its contents, with the added ability of downloading the files separately.
> - Since GitLab 8.2 and GitLab Runner 0.7.0, job artifacts that are created by > - In GitLab 8.17, builds were renamed to jobs.
> GitLab Runner are uploaded to GitLab and are downloadable as a single archive > - The artifacts browser will be available only for new artifacts that are sent to GitLab using GitLab Runner version 1.0 and up. It will not be possible to browse old artifacts already uploaded to GitLab.
> (`tar.gz`) using the GitLab UI.
> - Starting with GitLab 8.4 and GitLab Runner 1.0, the artifacts archive format Artifacts are a list of files and directories which created by a job
> changed to `ZIP`, and it is now possible to browse its contents, with the added once it finishes. This feature is [enabled by default](../../../administration/job_artifacts.md) in all
> ability of downloading the files separately.
> - Starting with GitLab 8.17, builds are renamed to jobs.
> - The artifacts browser will be available only for new artifacts that are sent
> to GitLab using GitLab Runner version 1.0 and up. It will not be possible to
> browse old artifacts already uploaded to GitLab.
>- This is the user documentation. For the administration guide see
> [administration/job_artifacts](../../../administration/job_artifacts.md).
Artifacts is a list of files and directories which are attached to a job
after it finishes. This feature is enabled by default in all
GitLab installations. GitLab installations.
Job artifacts that are created by GitLab Runner are uploaded to GitLab and are downloadable as a single archive using the GitLab UI.
<i class="fa fa-youtube-play youtube" aria-hidden="true"></i>
For an overview, watch the video [GitLab CI Pipeline, Artifacts, and Environments](https://www.youtube.com/watch?v=PCKDICEe10s).
Watch also [GitLab CI pipeline tutorial for beginners](https://www.youtube.com/watch?v=Jav4vbUrqII).
## Defining artifacts in `.gitlab-ci.yml` ## Defining artifacts in `.gitlab-ci.yml`
A simple example of using the artifacts definition in `.gitlab-ci.yml` would be A simple example of using the artifacts definition in `.gitlab-ci.yml` would be
...@@ -50,11 +50,8 @@ For more examples on artifacts, follow the [artifacts reference in ...@@ -50,11 +50,8 @@ For more examples on artifacts, follow the [artifacts reference in
## Browsing artifacts ## Browsing artifacts
> **Note:**
> With GitLab 9.2, PDFs, images, videos and other formats can be previewed > With GitLab 9.2, PDFs, images, videos and other formats can be previewed
> directly in the job artifacts browser without the need to download them. > directly in the job artifacts browser without the need to download them.
>
> **Note:**
> With [GitLab 10.1][ce-14399], HTML files in a public project can be previewed > With [GitLab 10.1][ce-14399], HTML files in a public project can be previewed
> directly in a new tab without the need to download them when > directly in a new tab without the need to download them when
> [GitLab Pages](../../../administration/pages/index.md) is enabled. > [GitLab Pages](../../../administration/pages/index.md) is enabled.
...@@ -108,7 +105,7 @@ inside GitLab that make that possible. ...@@ -108,7 +105,7 @@ inside GitLab that make that possible.
It is possible to download the latest artifacts of a job via a well known URL It is possible to download the latest artifacts of a job via a well known URL
so you can use it for scripting purposes. so you can use it for scripting purposes.
>**Note:** NOTE: **Note:**
The latest artifacts are considered as the artifacts created by jobs in the The latest artifacts are considered as the artifacts created by jobs in the
latest pipeline that succeeded for the specific ref. latest pipeline that succeeded for the specific ref.
Artifacts for other pipelines can be accessed with direct access to them. Artifacts for other pipelines can be accessed with direct access to them.
...@@ -169,9 +166,9 @@ https://gitlab.com/gitlab-org/gitlab-ce/-/jobs/artifacts/master/file/htmlcov/ind ...@@ -169,9 +166,9 @@ https://gitlab.com/gitlab-org/gitlab-ce/-/jobs/artifacts/master/file/htmlcov/ind
The latest builds are also exposed in the UI in various places. Specifically, The latest builds are also exposed in the UI in various places. Specifically,
look for the download button in: look for the download button in:
- the main project's page - The main project's page
- the branches page - The branches page
- the tags page - The tags page
If the latest job has failed to upload the artifacts, you can see that If the latest job has failed to upload the artifacts, you can see that
information in the UI. information in the UI.
...@@ -201,3 +198,15 @@ In order to retrieve a job artifact of a different project, you might need to us ...@@ -201,3 +198,15 @@ In order to retrieve a job artifact of a different project, you might need to us
[expiry date]: ../../../ci/yaml/README.md#artifactsexpire_in [expiry date]: ../../../ci/yaml/README.md#artifactsexpire_in
[ce-14399]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14399 [ce-14399]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14399
<!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
---
type: reference, howto
---
# Pipeline schedules # Pipeline schedules
> **Notes**:
>
> - Introduced in GitLab 9.1 as [Trigger Schedule](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10533). > - Introduced in GitLab 9.1 as [Trigger Schedule](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10533).
> - [Renamed to Pipeline Schedule](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10853) in GitLab 9.2. > - [Renamed to Pipeline Schedule](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10853) in GitLab 9.2.
> - Cron notation is parsed by [Fugit](https://github.com/floraison/fugit). > - Cron notation is parsed by [Fugit](https://github.com/floraison/fugit).
...@@ -118,3 +120,15 @@ on the target branch, the schedule will stop creating new pipelines. This can ...@@ -118,3 +120,15 @@ on the target branch, the schedule will stop creating new pipelines. This can
happen if, for example, the owner is blocked or removed from the project, or happen if, for example, the owner is blocked or removed from the project, or
the target branch or tag is protected. In this case, someone with sufficient the target branch or tag is protected. In this case, someone with sufficient
privileges must take ownership of the schedule. privileges must take ownership of the schedule.
<!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
---
type: reference, howto
---
# Pipelines settings # Pipelines settings
To reach the pipelines settings navigate to your project's To reach the pipelines settings navigate to your project's
...@@ -5,6 +9,10 @@ To reach the pipelines settings navigate to your project's ...@@ -5,6 +9,10 @@ To reach the pipelines settings navigate to your project's
The following settings can be configured per project. The following settings can be configured per project.
<i class="fa fa-youtube-play youtube" aria-hidden="true"></i>
For an overview, watch the video [GitLab CI Pipeline, Artifacts, and Environments](https://www.youtube.com/watch?v=PCKDICEe10s).
Watch also [GitLab CI pipeline tutorial for beginners](https://www.youtube.com/watch?v=Jav4vbUrqII).
## Git strategy ## Git strategy
With Git strategy, you can choose the default way your repository is fetched With Git strategy, you can choose the default way your repository is fetched
...@@ -216,3 +224,15 @@ https://example.gitlab.com/<namespace>/<project>/badges/<branch>/coverage.svg?st ...@@ -216,3 +224,15 @@ https://example.gitlab.com/<namespace>/<project>/badges/<branch>/coverage.svg?st
## Environment Variables ## Environment Variables
[Environment variables](../../../ci/variables/README.html#gitlab-cicd-environment-variables) can be set in an environment to be available to a runner. [Environment variables](../../../ci/variables/README.html#gitlab-cicd-environment-variables) can be set in an environment to be available to a runner.
<!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
---
type: reference, howto
---
# Protected Branches # Protected Branches
[Permissions](../permissions.md) in GitLab are fundamentally defined around the [Permissions](../permissions.md) in GitLab are fundamentally defined around the
...@@ -9,13 +13,13 @@ created protected branches. ...@@ -9,13 +13,13 @@ created protected branches.
By default, a protected branch does four simple things: By default, a protected branch does four simple things:
- it prevents its creation, if not already created, from everybody except users - It prevents its creation, if not already created, from everybody except users
with Maintainer permission with Maintainer permission.
- it prevents pushes from everybody except users with Maintainer permission - It prevents pushes from everybody except users with Maintainer permission.
- it prevents **anyone** from force pushing to the branch - It prevents **anyone** from force pushing to the branch.
- it prevents **anyone** from deleting the branch - It prevents **anyone** from deleting the branch.
>**Note**: NOTE: **Note:**
A GitLab admin is allowed to push to the protected branches. A GitLab admin is allowed to push to the protected branches.
See the [Changelog](#changelog) section for changes over time. See the [Changelog](#changelog) section for changes over time.
...@@ -68,7 +72,7 @@ they are set to "Maintainers" by default. ...@@ -68,7 +72,7 @@ they are set to "Maintainers" by default.
## Restricting push and merge access to certain users **(STARTER)** ## Restricting push and merge access to certain users **(STARTER)**
> This feature was [introduced][ce-5081] in [GitLab Starter][ee] 8.11. > [Introduced][ce-5081] in [GitLab Starter][ee] 8.11.
With GitLab Enterprise Edition you can restrict access to protected branches With GitLab Enterprise Edition you can restrict access to protected branches
by choosing a role (Maintainers, Developers) as well as certain users. From the by choosing a role (Maintainers, Developers) as well as certain users. From the
...@@ -174,11 +178,21 @@ for details about the pipelines security model. ...@@ -174,11 +178,21 @@ for details about the pipelines security model.
- Allow developers to merge into a protected branch without having push access [gitlab-org/gitlab-ce!4892][ce-4892] - Allow developers to merge into a protected branch without having push access [gitlab-org/gitlab-ce!4892][ce-4892]
- Allow specifying protected branches using wildcards [gitlab-org/gitlab-ce!4665][ce-4665] - Allow specifying protected branches using wildcards [gitlab-org/gitlab-ce!4665][ce-4665]
---
[ce-4665]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4665 "Allow specifying protected branches using wildcards" [ce-4665]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4665 "Allow specifying protected branches using wildcards"
[ce-4892]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4892 "Allow developers to merge into a protected branch without having push access" [ce-4892]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4892 "Allow developers to merge into a protected branch without having push access"
[ce-5081]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5081 "Allow creating protected branches that can't be pushed to" [ce-5081]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5081 "Allow creating protected branches that can't be pushed to"
[ce-21393]: https://gitlab.com/gitlab-org/gitlab-ce/issues/21393 [ce-21393]: https://gitlab.com/gitlab-org/gitlab-ce/issues/21393
[perm]: ../permissions.md [perm]: ../permissions.md
[ee]: https://about.gitlab.com/pricing/ [ee]: https://about.gitlab.com/pricing/
<!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
---
type: reference, howto
---
# Protected Tags # Protected Tags
> [Introduced][ce-10356] in GitLab 9.1. > [Introduced][ce-10356] in GitLab 9.1.
...@@ -14,19 +18,19 @@ Protected tags will prevent anyone from updating or deleting the tag, as and wil ...@@ -14,19 +18,19 @@ Protected tags will prevent anyone from updating or deleting the tag, as and wil
To protect a tag, you need to have at least Maintainer permission level. To protect a tag, you need to have at least Maintainer permission level.
1. Navigate to the project's Settings -> Repository page 1. Navigate to the project's **Settings > Repository**:
![Repository Settings](img/project_repository_settings.png) ![Repository Settings](img/project_repository_settings.png)
1. From the **Tag** dropdown menu, select the tag you want to protect or type and click `Create wildcard`. In the screenshot below, we chose to protect all tags matching `v*`. 1. From the **Tag** dropdown menu, select the tag you want to protect or type and click **Create wildcard**. In the screenshot below, we chose to protect all tags matching `v*`:
![Protected tags page](img/protected_tags_page.png) ![Protected tags page](img/protected_tags_page.png)
1. From the `Allowed to create` dropdown, select who will have permission to create matching tags and then click `Protect`. 1. From the **Allowed to create** dropdown, select who will have permission to create matching tags and then click **Protect**:
![Allowed to create tags dropdown](img/protected_tags_permissions_dropdown.png) ![Allowed to create tags dropdown](img/protected_tags_permissions_dropdown.png)
1. Once done, the protected tag will appear in the "Protected tags" list. 1. Once done, the protected tag will appear in the **Protected tags** list:
![Protected tags list](img/protected_tags_list.png) ![Protected tags list](img/protected_tags_list.png)
...@@ -45,13 +49,23 @@ matching the wildcard. For example: ...@@ -45,13 +49,23 @@ matching the wildcard. For example:
Two different wildcards can potentially match the same tag. For example, Two different wildcards can potentially match the same tag. For example,
`*-stable` and `production-*` would both match a `production-stable` tag. `*-stable` and `production-*` would both match a `production-stable` tag.
In that case, if _any_ of these protected tags have a setting like In that case, if _any_ of these protected tags have a setting like
"Allowed to create", then `production-stable` will also inherit this setting. **Allowed to create**, then `production-stable` will also inherit this setting.
If you click on a protected tag's name, you will be presented with a list of If you click on a protected tag's name, you will be presented with a list of
all matching tags: all matching tags:
![Protected tag matches](img/protected_tag_matches.png) ![Protected tag matches](img/protected_tag_matches.png)
--- <!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
[ce-10356]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10356 "Protected Tags" [ce-10356]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/10356 "Protected Tags"
# GitLab quick actions ---
type: reference
---
# GitLab Quick Actions
Quick actions are textual shortcuts for common actions on issues, epics, merge requests, Quick actions are textual shortcuts for common actions on issues, epics, merge requests,
and commits that are usually done by clicking buttons or dropdowns in GitLab's UI. and commits that are usually done by clicking buttons or dropdowns in GitLab's UI.
...@@ -7,7 +11,7 @@ in comments of issues, epics, merge requests, and commits. Each command should b ...@@ -7,7 +11,7 @@ in comments of issues, epics, merge requests, and commits. Each command should b
on a separate line in order to be properly detected and executed. Once executed, on a separate line in order to be properly detected and executed. Once executed,
the commands are removed from the text body and not visible to anyone else. the commands are removed from the text body and not visible to anyone else.
## Quick actions for issues and merge requests ## Quick Actions for issues and merge requests
The following quick actions are applicable to both issues and merge requests threads, The following quick actions are applicable to both issues and merge requests threads,
discussions, and descriptions: discussions, and descriptions:
...@@ -96,3 +100,15 @@ The following quick actions are applicable for epics threads and description: ...@@ -96,3 +100,15 @@ The following quick actions are applicable for epics threads and description:
| `/remove_child_epic <&epic | group&epic | Epic URL>` | Removes child epic from epic ([introduced in GitLab 12.0](https://gitlab.com/gitlab-org/gitlab-ee/issues/7330)) | | `/remove_child_epic <&epic | group&epic | Epic URL>` | Removes child epic from epic ([introduced in GitLab 12.0](https://gitlab.com/gitlab-org/gitlab-ee/issues/7330)) |
| `/parent_epic <&epic | group&epic | Epic URL>` | Sets parent epic to epic ([introduced in GitLab 12.1](https://gitlab.com/gitlab-org/gitlab-ee/issues/10556)) | | `/parent_epic <&epic | group&epic | Epic URL>` | Sets parent epic to epic ([introduced in GitLab 12.1](https://gitlab.com/gitlab-org/gitlab-ee/issues/10556)) |
| `/remove_parent_epic` | Removes parent epic from epic ([introduced in GitLab 12.1](https://gitlab.com/gitlab-org/gitlab-ee/issues/10556)) | | `/remove_parent_epic` | Removes parent epic from epic ([introduced in GitLab 12.1](https://gitlab.com/gitlab-org/gitlab-ee/issues/10556)) |
<!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
---
type: reference, howto
---
# Releases # Releases
> [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/41766) in GitLab 11.7. > [Introduced](https://gitlab.com/gitlab-org/gitlab-ce/issues/41766) in GitLab 11.7.
...@@ -60,3 +64,15 @@ Navigate to **Project > Releases** in order to see the list of releases for a gi ...@@ -60,3 +64,15 @@ Navigate to **Project > Releases** in order to see the list of releases for a gi
project. project.
![Releases list](img/releases.png) ![Releases list](img/releases.png)
<!-- ## Troubleshooting
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
one might have when setting this up, or when something is changed, or on upgrading, it's
important to describe those, too. Think of things that may go wrong and include them here.
This is important to minimize requests for support, and to avoid doc comments with
questions that you know someone might ask.
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
If you have none to add when creating a doc, leave this section in place
but commented out to help encourage others to add to it in the future. -->
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment