Commit e52f97a9 authored by Achilleas Pipinellis's avatar Achilleas Pipinellis

Merge branch 'docs/remove-consecutive-blank-lines' into 'master'

Remove consecutive blank lines from markdown files

See merge request gitlab-org/gitlab-ce!25280
parents 951e8912 47fb1c52
...@@ -50,7 +50,6 @@ Authentiq will generate a Client ID and the accompanying Client Secret for you t ...@@ -50,7 +50,6 @@ Authentiq will generate a Client ID and the accompanying Client Secret for you t
} }
``` ```
1. The `scope` is set to request the user's name, email (required and signed), and permission to send push notifications to sign in on subsequent visits. 1. The `scope` is set to request the user's name, email (required and signed), and permission to send push notifications to sign in on subsequent visits.
See [OmniAuth Authentiq strategy](https://github.com/AuthentiqID/omniauth-authentiq/wiki/Scopes,-callback-url-configuration-and-responses) for more information on scopes and modifiers. See [OmniAuth Authentiq strategy](https://github.com/AuthentiqID/omniauth-authentiq/wiki/Scopes,-callback-url-configuration-and-responses) for more information on scopes and modifiers.
......
...@@ -448,7 +448,6 @@ ldapsearch -H ldaps://$host:$port -D "$bind_dn" -y bind_dn_password.txt -b "$ba ...@@ -448,7 +448,6 @@ ldapsearch -H ldaps://$host:$port -D "$bind_dn" -y bind_dn_password.txt -b "$ba
port. port.
- We are assuming the password for the bind_dn user is in bind_dn_password.txt. - We are assuming the password for the bind_dn user is in bind_dn_password.txt.
### Invalid credentials when logging in ### Invalid credentials when logging in
- Make sure the user you are binding with has enough permissions to read the user's - Make sure the user you are binding with has enough permissions to read the user's
......
...@@ -140,7 +140,6 @@ Now that the Okta app is configured, it's time to enable it in GitLab. ...@@ -140,7 +140,6 @@ Now that the Okta app is configured, it's time to enable it in GitLab.
} }
``` ```
1. [Reconfigure][reconf] or [restart] GitLab for Omnibus and installations 1. [Reconfigure][reconf] or [restart] GitLab for Omnibus and installations
from source respectively for the changes to take effect. from source respectively for the changes to take effect.
......
...@@ -542,7 +542,6 @@ Read more about the Container Registry notifications config options in the ...@@ -542,7 +542,6 @@ Read more about the Container Registry notifications config options in the
>**Note:** >**Note:**
Multiple endpoints can be configured for the Container Registry. Multiple endpoints can be configured for the Container Registry.
**Omnibus GitLab installations** **Omnibus GitLab installations**
To configure a notification endpoint in Omnibus: To configure a notification endpoint in Omnibus:
......
...@@ -855,7 +855,6 @@ To make sure your configuration is correct: ...@@ -855,7 +855,6 @@ To make sure your configuration is correct:
You should see a different port after a few seconds delay You should see a different port after a few seconds delay
(the failover/reconnect time). (the failover/reconnect time).
## Changelog ## Changelog
Changes to Redis HA over time. Changes to Redis HA over time.
......
...@@ -52,7 +52,6 @@ http://localhost:8080/plantuml ...@@ -52,7 +52,6 @@ http://localhost:8080/plantuml
you can change these defaults by editing the `/etc/tomcat7/server.xml` file. you can change these defaults by editing the `/etc/tomcat7/server.xml` file.
## GitLab ## GitLab
You need to enable PlantUML integration from Settings under Admin Area. To do You need to enable PlantUML integration from Settings under Admin Area. To do
......
...@@ -20,7 +20,6 @@ configuration settings if you have used the advanced Redis ...@@ -20,7 +20,6 @@ configuration settings if you have used the advanced Redis
settings outlined in settings outlined in
[Configuration Files Documentation](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/README.md). [Configuration Files Documentation](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/README.md).
First we define a shell function with the proper Redis connection details. First we define a shell function with the proper Redis connection details.
``` ```
......
...@@ -41,7 +41,6 @@ Registry, etc. ...@@ -41,7 +41,6 @@ Registry, etc.
## Hashed Storage ## Hashed Storage
Hashed Storage is the new storage behavior we rolled out with 10.0. Instead Hashed Storage is the new storage behavior we rolled out with 10.0. Instead
of coupling project URL and the folder structure where the repository will be of coupling project URL and the folder structure where the repository will be
stored on disk, we are coupling a hash, based on the project's ID. This makes stored on disk, we are coupling a hash, based on the project's ID. This makes
......
...@@ -137,7 +137,6 @@ If you are using other init systems, like systemd, you can check the ...@@ -137,7 +137,6 @@ If you are using other init systems, like systemd, you can check the
[GitLab Recipes][gl-recipes] repository for some unofficial services. These are [GitLab Recipes][gl-recipes] repository for some unofficial services. These are
**not** officially supported so use them at your own risk. **not** officially supported so use them at your own risk.
[omnibus-dl]: https://about.gitlab.com/downloads/ "Download the Omnibus packages" [omnibus-dl]: https://about.gitlab.com/downloads/ "Download the Omnibus packages"
[install]: ../install/installation.md "Documentation to install GitLab from source" [install]: ../install/installation.md "Documentation to install GitLab from source"
[mailroom]: reply_by_email.md "Used for replying by email in GitLab issues and merge requests" [mailroom]: reply_by_email.md "Used for replying by email in GitLab issues and merge requests"
......
...@@ -18,7 +18,6 @@ GET /projects/:id/repository/commits ...@@ -18,7 +18,6 @@ GET /projects/:id/repository/commits
| `all` | boolean | no | Retrieve every commit from the repository | | `all` | boolean | no | Retrieve every commit from the repository |
| `with_stats` | boolean | no | Stats about each commit will be added to the response | | `with_stats` | boolean | no | Stats about each commit will be added to the response |
```bash ```bash
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/repository/commits" curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/repository/commits"
``` ```
...@@ -81,7 +80,6 @@ POST /projects/:id/repository/commits ...@@ -81,7 +80,6 @@ POST /projects/:id/repository/commits
| `author_name` | string | no | Specify the commit author's name | | `author_name` | string | no | Specify the commit author's name |
| `stats` | boolean | no | Include commit stats. Default is true | | `stats` | boolean | no | Include commit stats. Default is true |
| `actions[]` Attribute | Type | Required | Description | | `actions[]` Attribute | Type | Required | Description |
| --------------------- | ---- | -------- | ----------- | | --------------------- | ---- | -------- | ----------- |
| `action` | string | yes | The action to perform, `create`, `delete`, `move`, `update`, `chmod`| | `action` | string | yes | The action to perform, `create`, `delete`, `move`, `update`, `chmod`|
...@@ -601,7 +599,6 @@ GET /projects/:id/repository/commits/:sha/merge_requests ...@@ -601,7 +599,6 @@ GET /projects/:id/repository/commits/:sha/merge_requests
| `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
| `sha` | string | yes | The commit SHA | `sha` | string | yes | The commit SHA
```bash ```bash
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/repository/commits/af5b13261899fb2c0db30abdd0af8b07cb44fdc5/merge_requests" curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/repository/commits/af5b13261899fb2c0db30abdd0af8b07cb44fdc5/merge_requests"
``` ```
......
...@@ -16,7 +16,6 @@ GET /projects/:id/registry/repositories ...@@ -16,7 +16,6 @@ GET /projects/:id/registry/repositories
| --------- | ---- | -------- | ----------- | | --------- | ---- | -------- | ----------- |
| `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. |
```bash ```bash
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/registry/repositories" curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/registry/repositories"
``` ```
......
...@@ -641,7 +641,6 @@ Parameters: ...@@ -641,7 +641,6 @@ Parameters:
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/projects/5/merge_requests/11/discussions/6a9c1750b37d513a43987b574953fceb50b03ce7?resolved=true curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/projects/5/merge_requests/11/discussions/6a9c1750b37d513a43987b574953fceb50b03ce7?resolved=true
``` ```
### Add note to existing merge request discussion ### Add note to existing merge request discussion
Adds a new note to the discussion. Adds a new note to the discussion.
......
...@@ -48,7 +48,6 @@ Example Response: ...@@ -48,7 +48,6 @@ Example Response:
] ]
``` ```
## Get single milestone ## Get single milestone
Gets a single group milestone. Gets a single group milestone.
......
...@@ -15,7 +15,6 @@ POST /import/github ...@@ -15,7 +15,6 @@ POST /import/github
| `new_name` | string | no | New repo name | | `new_name` | string | no | New repo name |
| `target_namespace` | string | yes | Namespace to import repo into | | `target_namespace` | string | yes | Namespace to import repo into |
```bash ```bash
curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" --data "personal_access_token=abc123&repo_id=12345&target_namespace=root" https://gitlab.example.com/api/v4/import/github curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" --data "personal_access_token=abc123&repo_id=12345&target_namespace=root" https://gitlab.example.com/api/v4/import/github
``` ```
...@@ -30,4 +29,3 @@ Example response: ...@@ -30,4 +29,3 @@ Example response:
"full_name": "Administrator / my-repo" "full_name": "Administrator / my-repo"
} }
``` ```
...@@ -168,7 +168,6 @@ GET /groups/:id/issues?my_reaction_emoji=star ...@@ -168,7 +168,6 @@ GET /groups/:id/issues?my_reaction_emoji=star
| `updated_after` | datetime | no | Return issues updated on or after 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 | | `updated_before` | datetime | no | Return issues updated on or before the given time |
```bash ```bash
curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/groups/4/issues curl --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/groups/4/issues
``` ```
...@@ -568,7 +567,6 @@ PUT /projects/:id/issues/:issue_iid ...@@ -568,7 +567,6 @@ PUT /projects/:id/issues/:issue_iid
| `due_date` | string | no | Date time string in the format YEAR-MONTH-DAY, e.g. `2016-03-11` | | `due_date` | string | no | Date time string in the format YEAR-MONTH-DAY, e.g. `2016-03-11` |
| `discussion_locked` | boolean | no | Flag indicating if the issue's discussion is locked. If the discussion is locked only project members can add or edit comments. | | `discussion_locked` | boolean | no | Flag indicating if the issue's discussion is locked. If the discussion is locked only project members can add or edit comments. |
```bash ```bash
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/projects/4/issues/85?state_event=close curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/projects/4/issues/85?state_event=close
``` ```
...@@ -822,7 +820,6 @@ Example response: ...@@ -822,7 +820,6 @@ Example response:
**Note**: `assignee` column is deprecated, now we show it as a single-sized array `assignees` to conform to the GitLab EE API. **Note**: `assignee` column is deprecated, now we show it as a single-sized array `assignees` to conform to the GitLab EE API.
**Note**: The `closed_by` attribute was [introduced in GitLab 10.6][ce-17042]. This value will only be present for issues which were closed after GitLab 10.6 and when the user account that closed the issue still exists. **Note**: The `closed_by` attribute was [introduced in GitLab 10.6][ce-17042]. This value will only be present for issues which were closed after GitLab 10.6 and when the user account that closed the issue still exists.
## Unsubscribe from an issue ## Unsubscribe from an issue
...@@ -990,7 +987,6 @@ Example response: ...@@ -990,7 +987,6 @@ Example response:
**Note**: `assignee` column is deprecated, now we show it as a single-sized array `assignees` to conform to the GitLab EE API. **Note**: `assignee` column is deprecated, now we show it as a single-sized array `assignees` to conform to the GitLab EE API.
**Note**: The `closed_by` attribute was [introduced in GitLab 10.6][ce-17042]. This value will only be present for issues which were closed after GitLab 10.6 and when the user account that closed the issue still exists. **Note**: The `closed_by` attribute was [introduced in GitLab 10.6][ce-17042]. This value will only be present for issues which were closed after GitLab 10.6 and when the user account that closed the issue still exists.
## Set a time estimate for an issue ## Set a time estimate for an issue
...@@ -1288,7 +1284,6 @@ Example response: ...@@ -1288,7 +1284,6 @@ Example response:
] ]
``` ```
## Participants on issues ## Participants on issues
``` ```
...@@ -1327,7 +1322,6 @@ Example response: ...@@ -1327,7 +1322,6 @@ Example response:
] ]
``` ```
## Comments on issues ## Comments on issues
Comments are done via the [notes](notes.md) resource. Comments are done via the [notes](notes.md) resource.
......
...@@ -161,7 +161,6 @@ PUT /projects/:id/labels ...@@ -161,7 +161,6 @@ PUT /projects/:id/labels
| `description` | string | no | The new description of the label | | `description` | string | no | The new description of the label |
| `priority` | integer | no | The new priority of the label. Must be greater or equal than zero or `null` to remove the priority. | | `priority` | integer | no | The new priority of the label. Must be greater or equal than zero or `null` to remove the priority. |
```bash ```bash
curl --request PUT --data "name=documentation&new_name=docs&color=#8E44AD&description=Documentation" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/labels" curl --request PUT --data "name=documentation&new_name=docs&color=#8E44AD&description=Documentation" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/labels"
``` ```
......
...@@ -160,7 +160,6 @@ will be the same. In the case of a merge request from a fork, ...@@ -160,7 +160,6 @@ will be the same. In the case of a merge request from a fork,
`target_project_id` and `project_id` will be the same and `target_project_id` and `project_id` will be the same and
`source_project_id` will be the fork project's ID. `source_project_id` will be the fork project's ID.
Parameters: Parameters:
| Attribute | Type | Required | Description | | Attribute | Type | Required | Description |
...@@ -531,7 +530,6 @@ Parameters: ...@@ -531,7 +530,6 @@ Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user - `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `merge_request_iid` (required) - The internal ID of the merge request - `merge_request_iid` (required) - The internal ID of the merge request
```json ```json
[ [
{ {
...@@ -566,7 +564,6 @@ Parameters: ...@@ -566,7 +564,6 @@ Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user - `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `merge_request_iid` (required) - The internal ID of the merge request - `merge_request_iid` (required) - The internal ID of the merge request
```json ```json
[ [
{ {
......
...@@ -206,4 +206,3 @@ or you can put the token to the Authorization header: ...@@ -206,4 +206,3 @@ or you can put the token to the Authorization header:
``` ```
curl --header "Authorization: Bearer OAUTH-TOKEN" https://gitlab.example.com/api/v4/user curl --header "Authorization: Bearer OAUTH-TOKEN" https://gitlab.example.com/api/v4/user
``` ```
...@@ -124,7 +124,6 @@ Parameters: ...@@ -124,7 +124,6 @@ Parameters:
> **Notes:** > **Notes:**
> [Introduced][ce-29508] in GitLab 9.4. > [Introduced][ce-29508] in GitLab 9.4.
Available only for admins. Available only for admins.
``` ```
......
...@@ -101,7 +101,6 @@ GET /projects/:id/templates/:type/:key ...@@ -101,7 +101,6 @@ GET /projects/:id/templates/:type/:key
Example response (Dockerfile): Example response (Dockerfile):
```json ```json
{ {
"name": "Binary", "name": "Binary",
......
...@@ -281,7 +281,6 @@ Example response: ...@@ -281,7 +281,6 @@ Example response:
] ]
``` ```
## Group Search API ## Group Search API
Search within the specified group. Search within the specified group.
...@@ -520,7 +519,6 @@ Search the expression within the specified scope. Currently these scopes are sup ...@@ -520,7 +519,6 @@ Search the expression within the specified scope. Currently these scopes are sup
The response depends on the requested scope. The response depends on the requested scope.
### Scope: issues ### Scope: issues
```bash ```bash
......
...@@ -149,4 +149,3 @@ Example response: ...@@ -149,4 +149,3 @@ Example response:
} }
} }
``` ```
...@@ -163,7 +163,6 @@ Parameters: ...@@ -163,7 +163,6 @@ Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user - `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `tag_name` (required) - The name of a tag - `tag_name` (required) - The name of a tag
## Create a new release ## Create a new release
Add release notes to the existing git tag. If there Add release notes to the existing git tag. If there
......
...@@ -1043,7 +1043,6 @@ Will return `201 OK` on success, `404 User Not Found` is user cannot be found or ...@@ -1043,7 +1043,6 @@ Will return `201 OK` on success, `404 User Not Found` is user cannot be found or
Please refer to the [Events API documentation](events.md#get-user-contribution-events) Please refer to the [Events API documentation](events.md#get-user-contribution-events)
## Get all impersonation tokens of a user ## Get all impersonation tokens of a user
> Requires admin permissions. > Requires admin permissions.
......
...@@ -119,7 +119,6 @@ PUT /projects/:id/wikis/:slug ...@@ -119,7 +119,6 @@ PUT /projects/:id/wikis/:slug
| `format` | string | no | The format of the wiki page. Available formats are: `markdown` (default), `rdoc`, and `asciidoc` | | `format` | string | no | The format of the wiki page. Available formats are: `markdown` (default), `rdoc`, and `asciidoc` |
| `slug` | string | yes | The slug (a unique string) of the wiki page | | `slug` | string | yes | The slug (a unique string) of the wiki page |
```bash ```bash
curl --request PUT --data "format=rdoc&content=documentation&title=Docs" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis/foo" curl --request PUT --data "format=rdoc&content=documentation&title=Docs" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis/foo"
``` ```
......
--- ---
redirect_to: '../../install/openshift_and_gitlab/index.html' redirect_to: '../../install/openshift_and_gitlab/index.html'
--- ---
...@@ -46,7 +46,6 @@ needed to compile the project: ...@@ -46,7 +46,6 @@ needed to compile the project:
with stages and shared artifacts before investing time in changes to the with stages and shared artifacts before investing time in changes to the
setup. setup.
It's sometimes confusing because the name artifact sounds like something that It's sometimes confusing because the name artifact sounds like something that
is only useful outside of the job, like for downloading a final image. But is only useful outside of the job, like for downloading a final image. But
artifacts are also available in between stages within a pipeline. So if you artifacts are also available in between stages within a pipeline. So if you
......
...@@ -4,7 +4,6 @@ This guide covers the building dependencies of a PHP project while compiling ass ...@@ -4,7 +4,6 @@ This guide covers the building dependencies of a PHP project while compiling ass
While is possible to create your own image with custom PHP and Node JS versions, for brevity, we will use an existing [Docker image](https://hub.docker.com/r/tetraweb/php/) that contains both PHP and NodeJS installed. While is possible to create your own image with custom PHP and Node JS versions, for brevity, we will use an existing [Docker image](https://hub.docker.com/r/tetraweb/php/) that contains both PHP and NodeJS installed.
```yaml ```yaml
image: tetraweb/php image: tetraweb/php
``` ```
......
...@@ -68,7 +68,6 @@ Since we have our app up and running locally, it's time to push the codebase to ...@@ -68,7 +68,6 @@ Since we have our app up and running locally, it's time to push the codebase to
Let's create [a new project](../../../gitlab-basics/create-project.md) in GitLab named `laravel-sample`. Let's create [a new project](../../../gitlab-basics/create-project.md) in GitLab named `laravel-sample`.
After that, follow the command line instructions displayed on the project's homepage to initiate the repository on our machine and push the first commit. After that, follow the command line instructions displayed on the project's homepage to initiate the repository on our machine and push the first commit.
```bash ```bash
cd laravel-sample cd laravel-sample
git init git init
...@@ -127,7 +126,6 @@ We'll use this variable in the `.gitlab-ci.yml` later, to easily connect to our ...@@ -127,7 +126,6 @@ We'll use this variable in the `.gitlab-ci.yml` later, to easily connect to our
We also need to add the public key to **Project** > **Settings** > **Repository** as a [Deploy Key](../../../ssh/README.md#deploy-keys), which gives us the ability to access our repository from the server through [SSH protocol](../../../gitlab-basics/command-line-commands.md#start-working-on-your-project). We also need to add the public key to **Project** > **Settings** > **Repository** as a [Deploy Key](../../../ssh/README.md#deploy-keys), which gives us the ability to access our repository from the server through [SSH protocol](../../../gitlab-basics/command-line-commands.md#start-working-on-your-project).
```bash ```bash
# As the deployer user on the server # As the deployer user on the server
# #
...@@ -186,7 +184,6 @@ To use Envoy, we should first install it on our local machine [using the given i ...@@ -186,7 +184,6 @@ To use Envoy, we should first install it on our local machine [using the given i
The pros of Envoy is that it doesn't require Blade engine, it just uses Blade syntax to define tasks. The pros of Envoy is that it doesn't require Blade engine, it just uses Blade syntax to define tasks.
To start, we create an `Envoy.blade.php` in the root of our app with a simple task to test Envoy. To start, we create an `Envoy.blade.php` in the root of our app with a simple task to test Envoy.
```php ```php
@servers(['web' => 'remote_username@remote_host']) @servers(['web' => 'remote_username@remote_host'])
...@@ -220,7 +217,6 @@ Our deployment plan is to clone the latest release from GitLab repository, insta ...@@ -220,7 +217,6 @@ Our deployment plan is to clone the latest release from GitLab repository, insta
The first step of our deployment process is to define a set of variables within [@setup](https://laravel.com/docs/envoy/#setup) directive. The first step of our deployment process is to define a set of variables within [@setup](https://laravel.com/docs/envoy/#setup) directive.
You may change the `app` to your application's name: You may change the `app` to your application's name:
```php ```php
... ...
...@@ -246,7 +242,6 @@ You may change the `app` to your application's name: ...@@ -246,7 +242,6 @@ You may change the `app` to your application's name:
The [@story](https://laravel.com/docs/envoy/#stories) directive allows us define a list of tasks that can be run as a single task. The [@story](https://laravel.com/docs/envoy/#stories) directive allows us define a list of tasks that can be run as a single task.
Here we have three tasks called `clone_repository`, `run_composer`, `update_symlinks`. These variables are usable to making our task's codes more cleaner: Here we have three tasks called `clone_repository`, `run_composer`, `update_symlinks`. These variables are usable to making our task's codes more cleaner:
```php ```php
... ...
...@@ -618,7 +613,7 @@ Lastly, `when: manual` is used to turn the job from running automatically to a m ...@@ -618,7 +613,7 @@ Lastly, `when: manual` is used to turn the job from running automatically to a m
deploy_production: deploy_production:
script: script:
# Add the private SSH key to the build environment # Add the private SSH key to the build environment
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )' - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- eval $(ssh-agent -s) - eval $(ssh-agent -s)
- ssh-add <(echo "$SSH_PRIVATE_KEY") - ssh-add <(echo "$SSH_PRIVATE_KEY")
......
...@@ -38,7 +38,6 @@ For example, you host a service on `http://libravatar.example.com` the `plain_ur ...@@ -38,7 +38,6 @@ For example, you host a service on `http://libravatar.example.com` the `plain_ur
`http://libravatar.example.com/avatar/%{hash}?s=%{size}&d=identicon` `http://libravatar.example.com/avatar/%{hash}?s=%{size}&d=identicon`
## Omnibus-gitlab example ## Omnibus-gitlab example
In `/etc/gitlab/gitlab.rb`: In `/etc/gitlab/gitlab.rb`:
...@@ -57,10 +56,8 @@ gitlab_rails['gravatar_enabled'] = true ...@@ -57,10 +56,8 @@ gitlab_rails['gravatar_enabled'] = true
gitlab_rails['gravatar_ssl_url'] = "https://seccdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon" gitlab_rails['gravatar_ssl_url'] = "https://seccdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon"
``` ```
Run `sudo gitlab-ctl reconfigure` for changes to take effect. Run `sudo gitlab-ctl reconfigure` for changes to take effect.
## Default URL for missing images ## Default URL for missing images
[Libravatar supports different sets](https://wiki.libravatar.org/api/) of `missing images` for emails not found on the Libravatar service. [Libravatar supports different sets](https://wiki.libravatar.org/api/) of `missing images` for emails not found on the Libravatar service.
...@@ -68,7 +65,6 @@ Run `sudo gitlab-ctl reconfigure` for changes to take effect. ...@@ -68,7 +65,6 @@ Run `sudo gitlab-ctl reconfigure` for changes to take effect.
In order to use a different set other than `identicon`, replace `&d=identicon` portion of the URL with another supported set. In order to use a different set other than `identicon`, replace `&d=identicon` portion of the URL with another supported set.
For example, you can use `retro` set in which case the URL would look like: `plain_url: "http://cdn.libravatar.org/avatar/%{hash}?s=%{size}&d=retro"` For example, you can use `retro` set in which case the URL would look like: `plain_url: "http://cdn.libravatar.org/avatar/%{hash}?s=%{size}&d=retro"`
## Usage examples ## Usage examples
#### For Microsoft Office 365 #### For Microsoft Office 365
......
...@@ -35,7 +35,7 @@ run: redis: (pid 30560) 14274s; run: log: (pid 13807) 2432047s ...@@ -35,7 +35,7 @@ run: redis: (pid 30560) 14274s; run: log: (pid 13807) 2432047s
run: redis-exporter: (pid 30946) 14205s; run: log: (pid 13869) 2432045s run: redis-exporter: (pid 30946) 14205s; run: log: (pid 13869) 2432045s
run: sidekiq: (pid 30953) 14205s; run: log: (pid 13810) 2432047s run: sidekiq: (pid 30953) 14205s; run: log: (pid 13810) 2432047s
run: unicorn: (pid 30960) 14204s; run: log: (pid 13809) 2432047s run: unicorn: (pid 30960) 14204s; run: log: (pid 13809) 2432047s
``` ```
### Layers ### Layers
...@@ -51,11 +51,11 @@ GitLab can be considered to have two layers from a process perspective: ...@@ -51,11 +51,11 @@ GitLab can be considered to have two layers from a process perspective:
- Omnibus configuration options - Omnibus configuration options
- Layer: Monitoring - Layer: Monitoring
[Alert manager](https://prometheus.io/docs/alerting/alertmanager/) is a tool provided by prometheus that _"handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts."_ You can read more in [issue gitlab-ce#45740](https://gitlab.com/gitlab-org/gitlab-ce/issues/45740) about what we will be alerting on. [Alert manager](https://prometheus.io/docs/alerting/alertmanager/) is a tool provided by prometheus that _"handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts."_ You can read more in [issue gitlab-ce#45740](https://gitlab.com/gitlab-org/gitlab-ce/issues/45740) about what we will be alerting on.
### gitaly ### gitaly
- [Omnibus configuration options](https://gitlab.com/gitlab-org/gitaly/tree/master/doc/configuration) - [Omnibus configuration options](https://gitlab.com/gitlab-org/gitaly/tree/master/doc/configuration)
- Layer: Core Service (Data) - Layer: Core Service (Data)
Gitaly is a service designed by GitLab to remove our need for NFS for Git storage in distributed deployments of GitLab. (Think GitLab.com or High Availablity Deployments) As of 11.3.0, This service handles all Git level access in GitLab. You can read more about the project [in the project's readme](https://gitlab.com/gitlab-org/gitaly). Gitaly is a service designed by GitLab to remove our need for NFS for Git storage in distributed deployments of GitLab. (Think GitLab.com or High Availablity Deployments) As of 11.3.0, This service handles all Git level access in GitLab. You can read more about the project [in the project's readme](https://gitlab.com/gitlab-org/gitaly).
...@@ -63,7 +63,7 @@ Gitaly is a service designed by GitLab to remove our need for NFS for Git storag ...@@ -63,7 +63,7 @@ Gitaly is a service designed by GitLab to remove our need for NFS for Git storag
### gitlab-monitor ### gitlab-monitor
- Omnibus configuration options - Omnibus configuration options
- Layer: Monitoring - Layer: Monitoring
GitLab Monitor is a process disigned in house that allows us to export metrics about GitLab application internals to prometheus. You can read more [in the project's readme](https://gitlab.com/gitlab-org/gitlab-monitor) GitLab Monitor is a process disigned in house that allows us to export metrics about GitLab application internals to prometheus. You can read more [in the project's readme](https://gitlab.com/gitlab-org/gitlab-monitor)
...@@ -100,14 +100,14 @@ Nginx as an ingress port for all HTTP requests and routes them to the approriate ...@@ -100,14 +100,14 @@ Nginx as an ingress port for all HTTP requests and routes them to the approriate
- [Omnibus configuration options](https://docs.gitlab.com/ee/administration/monitoring/prometheus/postgres_exporter.html) - [Omnibus configuration options](https://docs.gitlab.com/ee/administration/monitoring/prometheus/postgres_exporter.html)
- Layer: Monitoring - Layer: Monitoring
[Postgres-exporter](https://github.com/wrouesnel/postgres_exporter) is the community provided Prometheus exporter that will deliver data about Postgres to prometheus for use in Grafana Dashboards. [Postgres-exporter](https://github.com/wrouesnel/postgres_exporter) is the community provided Prometheus exporter that will deliver data about Postgres to prometheus for use in Grafana Dashboards.
### postgresql ### postgresql
- [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/database.html) - [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/database.html)
- Layer: Core Service (Data) - Layer: Core Service (Data)
GitLab packages the popular Database to provide storage for Application meta data and user information. GitLab packages the popular Database to provide storage for Application meta data and user information.
### prometheus ### prometheus
...@@ -121,11 +121,11 @@ Prometheus is a time-series tool that helps GitLab administrators expose metrics ...@@ -121,11 +121,11 @@ Prometheus is a time-series tool that helps GitLab administrators expose metrics
- [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/redis.html) - [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/redis.html)
- Layer: Core Service (Data) - Layer: Core Service (Data)
Redis is packaged to provide a place to store: Redis is packaged to provide a place to store:
- session data - session data
- temporary cache information - temporary cache information
- background job queues. - background job queues.
### redis-exporter ### redis-exporter
...@@ -146,7 +146,7 @@ Sidekiq is a Ruby background job processor that pulls jobs from the redis queue ...@@ -146,7 +146,7 @@ Sidekiq is a Ruby background job processor that pulls jobs from the redis queue
- [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/unicorn.html) - [Omnibus configuration options](https://docs.gitlab.com/omnibus/settings/unicorn.html)
- Layer: Core Service (Processor) - Layer: Core Service (Processor)
[Unicorn](https://bogomips.org/unicorn/) is a Ruby application server that is used to run the core Rails Application that provides the user facing features in GitLab. Often process output you will see this as `bundle` or `config.ru` depending on the GitLab version. [Unicorn](https://bogomips.org/unicorn/) is a Ruby application server that is used to run the core Rails Application that provides the user facing features in GitLab. Often process output you will see this as `bundle` or `config.ru` depending on the GitLab version.
### Additional Processes ### Additional Processes
...@@ -176,7 +176,6 @@ When making a request to an HTTP Endpoint (Think `/users/sign_in`) the request w ...@@ -176,7 +176,6 @@ When making a request to an HTTP Endpoint (Think `/users/sign_in`) the request w
- unicorn - Since this is a web request, and it needs to access the application it will go to Unicorn. - unicorn - Since this is a web request, and it needs to access the application it will go to Unicorn.
- Postgres/Gitaly/Redis - Depending on the type of request, it may hit these services to store or retreive data. - Postgres/Gitaly/Redis - Depending on the type of request, it may hit these services to store or retreive data.
### GitLab Git Request Cycle ### GitLab Git Request Cycle
Below we describe the different pathing that HTTP vs. SSH Git requests will take. There is some overlap with the Web Request Cycle but also some differences. Below we describe the different pathing that HTTP vs. SSH Git requests will take. There is some overlap with the Web Request Cycle but also some differences.
......
...@@ -13,7 +13,6 @@ Available `RAILS_ENV` ...@@ -13,7 +13,6 @@ Available `RAILS_ENV`
- `development` (this is your main GDK db) - `development` (this is your main GDK db)
- `test` (used for tests like rspec) - `test` (used for tests like rspec)
## Nuke everything and start over ## Nuke everything and start over
If you just want to delete everything and start over with an empty DB (~1 minute): If you just want to delete everything and start over with an empty DB (~1 minute):
...@@ -36,7 +35,6 @@ If your test DB is giving you problems, it is safe to nuke it because it doesn't ...@@ -36,7 +35,6 @@ If your test DB is giving you problems, it is safe to nuke it because it doesn't
- `bundle exec rake db:migrate:up VERSION=20170926203418 RAILS_ENV=development`: Set up a migration - `bundle exec rake db:migrate:up VERSION=20170926203418 RAILS_ENV=development`: Set up a migration
- `bundle exec rake db:migrate:redo VERSION=20170926203418 RAILS_ENV=development`: Re-run a specific migration - `bundle exec rake db:migrate:redo VERSION=20170926203418 RAILS_ENV=development`: Re-run a specific migration
## Manually access the database ## Manually access the database
Access the database via one of these commands (they all get you to the same place) Access the database via one of these commands (they all get you to the same place)
...@@ -54,7 +52,6 @@ bundle exec rails db RAILS_ENV=development ...@@ -54,7 +52,6 @@ bundle exec rails db RAILS_ENV=development
- `SELECT * FROM schema_migrations WHERE version = '20170926203418';`: Check if a migration was run - `SELECT * FROM schema_migrations WHERE version = '20170926203418';`: Check if a migration was run
- `DELETE FROM schema_migrations WHERE version = '20170926203418';`: Manually remove a migration - `DELETE FROM schema_migrations WHERE version = '20170926203418';`: Manually remove a migration
## FAQ ## FAQ
### `ActiveRecord::PendingMigrationError` with Spring ### `ActiveRecord::PendingMigrationError` with Spring
......
...@@ -59,28 +59,24 @@ Gitlab::Git::DiffCollection.collection_limits[:safe_max_files] = Gitlab::Git::Di ...@@ -59,28 +59,24 @@ Gitlab::Git::DiffCollection.collection_limits[:safe_max_files] = Gitlab::Git::Di
File diffs will be collapsed (but be expandable) if 100 files have already been rendered. File diffs will be collapsed (but be expandable) if 100 files have already been rendered.
```ruby ```ruby
Gitlab::Git::DiffCollection.collection_limits[:safe_max_lines] = Gitlab::Git::DiffCollection::DEFAULT_LIMITS[:max_lines] = 5000 Gitlab::Git::DiffCollection.collection_limits[:safe_max_lines] = Gitlab::Git::DiffCollection::DEFAULT_LIMITS[:max_lines] = 5000
``` ```
File diffs will be collapsed (but be expandable) if 5000 lines have already been rendered. File diffs will be collapsed (but be expandable) if 5000 lines have already been rendered.
```ruby ```ruby
Gitlab::Git::DiffCollection.collection_limits[:safe_max_bytes] = Gitlab::Git::DiffCollection.collection_limits[:safe_max_files] * 5.kilobytes = 500.kilobytes Gitlab::Git::DiffCollection.collection_limits[:safe_max_bytes] = Gitlab::Git::DiffCollection.collection_limits[:safe_max_files] * 5.kilobytes = 500.kilobytes
``` ```
File diffs will be collapsed (but be expandable) if 500 kilobytes have already been rendered. File diffs will be collapsed (but be expandable) if 500 kilobytes have already been rendered.
```ruby ```ruby
Gitlab::Git::DiffCollection.collection_limits[:max_files] = Commit::DIFF_HARD_LIMIT_FILES = 1000 Gitlab::Git::DiffCollection.collection_limits[:max_files] = Commit::DIFF_HARD_LIMIT_FILES = 1000
``` ```
No more files will be rendered at all if 1000 files have already been rendered. No more files will be rendered at all if 1000 files have already been rendered.
```ruby ```ruby
Gitlab::Git::DiffCollection.collection_limits[:max_lines] = Commit::DIFF_HARD_LIMIT_LINES = 50000 Gitlab::Git::DiffCollection.collection_limits[:max_lines] = Commit::DIFF_HARD_LIMIT_LINES = 50000
``` ```
...@@ -129,4 +125,3 @@ Diff Viewers, which can be found on `models/diff_viewer/*` are classes used to m ...@@ -129,4 +125,3 @@ Diff Viewers, which can be found on `models/diff_viewer/*` are classes used to m
whether it's a binary, which partial should be used to render it or which File extensions this class accounts for. whether it's a binary, which partial should be used to render it or which File extensions this class accounts for.
`DiffViewer::Base` validates _blobs_ (old and new versions) content, extension and file type in order to check if it can be rendered. `DiffViewer::Base` validates _blobs_ (old and new versions) content, extension and file type in order to check if it can be rendered.
...@@ -234,7 +234,7 @@ Examples: ...@@ -234,7 +234,7 @@ Examples:
```yaml ```yaml
- category_title: Issues - category_title: Issues
category_url: 'user/project/issues/' category_url: 'user/project/issues/'
# note that the above URL does not start with a slash and # note that the above URL does not start with a slash and
# does not include index.html at the end # does not include index.html at the end
docs: docs:
...@@ -295,7 +295,6 @@ On the other hand, if the user is looking at `/ce/` docs, ...@@ -295,7 +295,6 @@ On the other hand, if the user is looking at `/ce/` docs,
all the links in the CE nav should link internally to `/ce/` all the links in the CE nav should link internally to `/ce/`
files, except for [`ee-only` docs](#ee-only-docs). files, except for [`ee-only` docs](#ee-only-docs).
```html ```html
<% if dir != 'ce' %> <% if dir != 'ce' %>
<a href="/ee/<%= sec[:section_url] %>">...</a> <a href="/ee/<%= sec[:section_url] %>">...</a>
......
...@@ -8,6 +8,5 @@ are useful for testing for potential accessibility problems in GitLab. ...@@ -8,6 +8,5 @@ are useful for testing for potential accessibility problems in GitLab.
Accessibility best-practices and more in-depth information is available on Accessibility best-practices and more in-depth information is available on
[the Audit Rules page][audit-rules] for the Chrome Accessibility Developer Tools. [the Audit Rules page][audit-rules] for the Chrome Accessibility Developer Tools.
[chrome-accessibility-developer-tools]: https://github.com/GoogleChrome/accessibility-developer-tools [chrome-accessibility-developer-tools]: https://github.com/GoogleChrome/accessibility-developer-tools
[audit-rules]: https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules [audit-rules]: https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules
...@@ -74,5 +74,4 @@ new Foo({ container: '.my-element' }); ...@@ -74,5 +74,4 @@ new Foo({ container: '.my-element' });
``` ```
You can find an example of the above in this [class][container-class-example]; You can find an example of the above in this [class][container-class-example];
[container-class-example]: https://gitlab.com/gitlab-org/gitlab-ce/blob/master/app/assets/javascripts/mini_pipeline_graph_dropdown.js [container-class-example]: https://gitlab.com/gitlab-org/gitlab-ce/blob/master/app/assets/javascripts/mini_pipeline_graph_dropdown.js
...@@ -90,7 +90,6 @@ const list = document.getElementById('list'); ...@@ -90,7 +90,6 @@ const list = document.getElementById('list');
droplab.addHook(trigger, list); droplab.addHook(trigger, list);
``` ```
### Dynamic data ### Dynamic data
Adding `data-dynamic` to your dropdown element will enable dynamic list rendering. Adding `data-dynamic` to your dropdown element will enable dynamic list rendering.
......
...@@ -13,7 +13,6 @@ to update the `input` element with. ...@@ -13,7 +13,6 @@ to update the `input` element with.
You can also set the `InputSetter` config to an array of objects, which will allow you to update multiple elements. You can also set the `InputSetter` config to an array of objects, which will allow you to update multiple elements.
```html ```html
<input id="input" value=""> <input id="input" value="">
<div id="div" data-selected-id=""></div> <div id="div" data-selected-id=""></div>
......
...@@ -169,7 +169,6 @@ General tips: ...@@ -169,7 +169,6 @@ General tips:
- [Profiling with Chrome DevTools][google-devtools-profiling] - [Profiling with Chrome DevTools][google-devtools-profiling]
- [Browser Diet][browser-diet] is a community-built guide that catalogues practical tips for improving web page performance. - [Browser Diet][browser-diet] is a community-built guide that catalogues practical tips for improving web page performance.
[web-page-test]: http://www.webpagetest.org/ [web-page-test]: http://www.webpagetest.org/
[pagespeed-insights]: https://developers.google.com/speed/pagespeed/insights/ [pagespeed-insights]: https://developers.google.com/speed/pagespeed/insights/
[google-devtools-profiling]: https://developers.google.com/web/tools/chrome-devtools/profile/?hl=en [google-devtools-profiling]: https://developers.google.com/web/tools/chrome-devtools/profile/?hl=en
......
...@@ -77,7 +77,6 @@ Inline styles should be avoided in almost all cases, they should only be used ...@@ -77,7 +77,6 @@ Inline styles should be avoided in almost all cases, they should only be used
when no alternatives can be found. This allows reusability of styles as well as when no alternatives can be found. This allows reusability of styles as well as
readability. readability.
[observatory-cli]: https://github.com/mozilla/http-observatory-cli [observatory-cli]: https://github.com/mozilla/http-observatory-cli
[qualys-ssl]: https://www.ssllabs.com/ssltest/analyze.html [qualys-ssl]: https://www.ssllabs.com/ssltest/analyze.html
[secure_headers]: https://github.com/twitter/secureheaders [secure_headers]: https://github.com/twitter/secureheaders
......
...@@ -229,7 +229,6 @@ One should apply to be a Vue.js expert by opening an MR when the Merge Request's ...@@ -229,7 +229,6 @@ One should apply to be a Vue.js expert by opening an MR when the Merge Request's
- Vuex code follows the [documented pattern](./vuex.md#actions-pattern-request-and-receive-namespaces) - Vuex code follows the [documented pattern](./vuex.md#actions-pattern-request-and-receive-namespaces)
- Knowledge about the existing Vue and Vuex applications and existing reusable components - Knowledge about the existing Vue and Vuex applications and existing reusable components
[vue-docs]: http://vuejs.org/guide/index.html [vue-docs]: http://vuejs.org/guide/index.html
[issue-boards]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/app/assets/javascripts/boards [issue-boards]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/app/assets/javascripts/boards
[environments-table]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/app/assets/javascripts/environments [environments-table]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/app/assets/javascripts/environments
......
...@@ -124,4 +124,3 @@ Feature.enable(:feature_flag_name) ...@@ -124,4 +124,3 @@ Feature.enable(:feature_flag_name)
## Enabling a feature flag (in production) ## Enabling a feature flag (in production)
Check how to [roll out changes using feature flags](rolling_out_changes_using_feature_flags.md). Check how to [roll out changes using feature flags](rolling_out_changes_using_feature_flags.md).
...@@ -20,7 +20,6 @@ There are many places where file uploading is used, according to contexts: ...@@ -20,7 +20,6 @@ There are many places where file uploading is used, according to contexts:
- LFS Objects - LFS Objects
- Merge request diffs - Merge request diffs
## Disk storage ## Disk storage
GitLab started saving everything on local disk. While directory location changed from previous versions, GitLab started saving everything on local disk. While directory location changed from previous versions,
......
...@@ -60,12 +60,12 @@ class StuckImportJobsWorker ...@@ -60,12 +60,12 @@ class StuckImportJobsWorker
Marked stuck import jobs as failed. JIDs: xyz Marked stuck import jobs as failed. JIDs: xyz
``` ```
``` ```
+-----------+ +-----------------------------------+ +-----------+ +-----------------------------------+
|Export Job |--->| Calls ActiveRecord `as_json` and | |Export Job |--->| Calls ActiveRecord `as_json` and |
+-----------+ | `to_json` on all project models | +-----------+ | `to_json` on all project models |
+-----------------------------------+ +-----------------------------------+
+-----------+ +-----------------------------------+ +-----------+ +-----------------------------------+
|Import Job |--->| Loads all JSON in memory, then | |Import Job |--->| Loads all JSON in memory, then |
+-----------+ | inserts into the DB in batches | +-----------+ | inserts into the DB in batches |
...@@ -109,13 +109,13 @@ The `AttributeCleaner` removes any prohibited keys: ...@@ -109,13 +109,13 @@ The `AttributeCleaner` removes any prohibited keys:
# Removes all `_ids` and other prohibited keys # Removes all `_ids` and other prohibited keys
class AttributeCleaner class AttributeCleaner
ALLOWED_REFERENCES = RelationFactory::PROJECT_REFERENCES + RelationFactory::USER_REFERENCES + ['group_id'] ALLOWED_REFERENCES = RelationFactory::PROJECT_REFERENCES + RelationFactory::USER_REFERENCES + ['group_id']
def clean def clean
@relation_hash.reject do |key, _value| @relation_hash.reject do |key, _value|
prohibited_key?(key) || !@relation_class.attribute_method?(key) || excluded_key?(key) prohibited_key?(key) || !@relation_class.attribute_method?(key) || excluded_key?(key)
end.except('id') end.except('id')
end end
... ...
``` ```
...@@ -133,7 +133,7 @@ The `AttributeConfigurationSpec` checks and confirms the addition of new columns ...@@ -133,7 +133,7 @@ The `AttributeConfigurationSpec` checks and confirms the addition of new columns
SAFE_MODEL_ATTRIBUTES: #{File.expand_path(safe_attributes_file)} SAFE_MODEL_ATTRIBUTES: #{File.expand_path(safe_attributes_file)}
IMPORT_EXPORT_CONFIG: #{Gitlab::ImportExport.config_file} IMPORT_EXPORT_CONFIG: #{Gitlab::ImportExport.config_file}
MSG MSG
``` ```
The `ModelConfigurationSpec` checks and confirms the addition of new models: The `ModelConfigurationSpec` checks and confirms the addition of new models:
...@@ -157,7 +157,7 @@ The `ExportFileSpec` detects encrypted or sensitive columns: ...@@ -157,7 +157,7 @@ The `ExportFileSpec` detects encrypted or sensitive columns:
```ruby ```ruby
# ExportFileSpec # ExportFileSpec
<<-MSG <<-MSG
Found a new sensitive word <#{key_found}>, which is part of the hash #{parent.inspect} Found a new sensitive word <#{key_found}>, which is part of the hash #{parent.inspect}
If you think this information shouldn't get exported, please exclude the model or attribute in If you think this information shouldn't get exported, please exclude the model or attribute in
IMPORT_EXPORT_CONFIG. IMPORT_EXPORT_CONFIG.
...@@ -214,7 +214,6 @@ We do not need to bump the version up in any of the following cases: ...@@ -214,7 +214,6 @@ We do not need to bump the version up in any of the following cases:
- Remove a column or model (unless there is a DB constraint) - Remove a column or model (unless there is a DB constraint)
- Export new things (such as a new type of upload) - Export new things (such as a new type of upload)
Every time we bump the version, the integration specs will fail and can be fixed with: Every time we bump the version, the integration specs will fail and can be fixed with:
```bash ```bash
...@@ -231,7 +230,7 @@ meaning that we want to bump the version up in the next version (or patch releas ...@@ -231,7 +230,7 @@ meaning that we want to bump the version up in the next version (or patch releas
For example: For example:
1. Add rename to `RelationRenameService` in X.Y 1. Add rename to `RelationRenameService` in X.Y
2. Remove it from `RelationRenameService` in X.Y + 1 2. Remove it from `RelationRenameService` in X.Y + 1
3. Bump Import/Export version in X.Y + 1 3. Bump Import/Export version in X.Y + 1
```ruby ```ruby
...@@ -270,8 +269,8 @@ included_attributes: ...@@ -270,8 +269,8 @@ included_attributes:
user: user:
- :id - :id
- :email - :email
... ...
``` ```
Do not include the following attributes for the models specified: Do not include the following attributes for the models specified:
...@@ -319,7 +318,7 @@ module Gitlab ...@@ -319,7 +318,7 @@ module Gitlab
ensure ensure
remove_import_file remove_import_file
end end
def restorers def restorers
[repo_restorer, wiki_restorer, project_tree, avatar_restorer, [repo_restorer, wiki_restorer, project_tree, avatar_restorer,
uploads_restorer, lfs_restorer, statistics_restorer] uploads_restorer, lfs_restorer, statistics_restorer]
...@@ -346,7 +345,7 @@ module Projects ...@@ -346,7 +345,7 @@ module Projects
end end
def save_services def save_services
[version_saver, avatar_saver, project_tree_saver, uploads_saver, repo_saver, [version_saver, avatar_saver, project_tree_saver, uploads_saver, repo_saver,
wiki_repo_saver, lfs_saver].all?(&:save) wiki_repo_saver, lfs_saver].all?(&:save)
end end
``` ```
...@@ -48,7 +48,6 @@ various database operations, such as ...@@ -48,7 +48,6 @@ various database operations, such as
and whether they require downtime and how to work around that whenever possible. and whether they require downtime and how to work around that whenever possible.
## Downtime Tagging ## Downtime Tagging
Every migration must specify if it requires downtime or not, and if it should Every migration must specify if it requires downtime or not, and if it should
......
...@@ -339,7 +339,6 @@ afterEach(() => { ...@@ -339,7 +339,6 @@ afterEach(() => {
Some regressions only affect a specific browser version. We can install and test in particular browsers with either Firefox or Browserstack using the following steps: Some regressions only affect a specific browser version. We can install and test in particular browsers with either Firefox or Browserstack using the following steps:
### Browserstack ### Browserstack
[Browserstack](https://www.browserstack.com/) allows you to test more than 1200 mobile devices and browsers. [Browserstack](https://www.browserstack.com/) allows you to test more than 1200 mobile devices and browsers.
......
...@@ -336,7 +336,6 @@ the same method won't end up retrieving data from Redis upon every call. When ...@@ -336,7 +336,6 @@ the same method won't end up retrieving data from Redis upon every call. When
memoizing cached data in an instance variable, make sure to also reset the memoizing cached data in an instance variable, make sure to also reset the
instance variable when flushing the cache. An example: instance variable when flushing the cache. An example:
```ruby ```ruby
def first_branch def first_branch
@first_branch ||= cache.fetch(:first_branch) { branches.first } @first_branch ||= cache.fetch(:first_branch) { branches.first }
......
...@@ -8,7 +8,6 @@ The policy used is based on the subject's class name - so `Ability.allowed?(user ...@@ -8,7 +8,6 @@ The policy used is based on the subject's class name - so `Ability.allowed?(user
Permissions are broken into two parts: `conditions` and `rules`. Conditions are boolean expressions that can access the database and the environment, while rules are statically configured combinations of expressions and other rules that enable or prevent certain abilities. For an ability to be allowed, it must be enabled by at least one rule, and not prevented by any. Permissions are broken into two parts: `conditions` and `rules`. Conditions are boolean expressions that can access the database and the environment, while rules are statically configured combinations of expressions and other rules that enable or prevent certain abilities. For an ability to be allowed, it must be enabled by at least one rule, and not prevented by any.
### Conditions ### Conditions
Conditions are defined by the `condition` method, and are given a name and a block. The block will be executed in the context of the policy object - so it can access `@user` and `@subject`, as well as call any methods defined on the policy. Note that `@user` may be nil (in the anonymous case), but `@subject` is guaranteed to be a real instance of the subject class. Conditions are defined by the `condition` method, and are given a name and a block. The block will be executed in the context of the policy object - so it can access `@user` and `@subject`, as well as call any methods defined on the policy. Note that `@user` may be nil (in the anonymous case), but `@subject` is guaranteed to be a real instance of the subject class.
......
...@@ -74,7 +74,6 @@ Gitlab::Profiler.print_by_total_time(result, max_percent: 60, min_percent: 2) ...@@ -74,7 +74,6 @@ Gitlab::Profiler.print_by_total_time(result, max_percent: 60, min_percent: 2)
To print the profile in HTML format, use the following example: To print the profile in HTML format, use the following example:
```ruby ```ruby
result = Gitlab::Profiler.profile('/my-user') result = Gitlab::Profiler.profile('/my-user')
...@@ -92,7 +91,6 @@ Redash to Looker](https://gitlab.com/gitlab-com/Product/issues/5#note_121194467) ...@@ -92,7 +91,6 @@ Redash to Looker](https://gitlab.com/gitlab-com/Product/issues/5#note_121194467)
We are [currently investigating how to make this data We are [currently investigating how to make this data
public](https://gitlab.com/meltano/looker/issues/294). public](https://gitlab.com/meltano/looker/issues/294).
## Sherlock ## Sherlock
Sherlock is a custom profiling tool built into GitLab. Sherlock is _only_ Sherlock is a custom profiling tool built into GitLab. Sherlock is _only_
......
...@@ -151,7 +151,6 @@ following: ...@@ -151,7 +151,6 @@ following:
bundle exec rake gemojione:digests bundle exec rake gemojione:digests
``` ```
This will update the file `fixtures/emojis/digests.json` based on the currently This will update the file `fixtures/emojis/digests.json` based on the currently
available Emoji. available Emoji.
......
...@@ -190,7 +190,7 @@ A check like this could have avoided CVE-2013-4583. ...@@ -190,7 +190,7 @@ A check like this could have avoided CVE-2013-4583.
## Properly anchor regular expressions to the start and end of strings ## Properly anchor regular expressions to the start and end of strings
When using regular expressions to validate user input that is passed as an argument to a shell command, make sure to use the `\A` and `\z` anchors that designate the start and end of the string, rather than `^` and `$`, or no anchors at all. When using regular expressions to validate user input that is passed as an argument to a shell command, make sure to use the `\A` and `\z` anchors that designate the start and end of the string, rather than `^` and `$`, or no anchors at all.
If you don't, an attacker could use this to execute commands with potentially harmful effect. If you don't, an attacker could use this to execute commands with potentially harmful effect.
...@@ -198,7 +198,7 @@ For example, when a project's `import_url` is validated like below, the user cou ...@@ -198,7 +198,7 @@ For example, when a project's `import_url` is validated like below, the user cou
```ruby ```ruby
validates :import_url, format: { with: URI.regexp(%w(ssh git http https)) } validates :import_url, format: { with: URI.regexp(%w(ssh git http https)) }
# URI.regexp(%w(ssh git http https)) roughly evaluates to /(ssh|git|http|https):(something_that_looks_like_a_url)/ # URI.regexp(%w(ssh git http https)) roughly evaluates to /(ssh|git|http|https):(something_that_looks_like_a_url)/
``` ```
Suppose the user submits the following as their import URL: Suppose the user submits the following as their import URL:
...@@ -211,7 +211,6 @@ Since there are no anchors in the used regular expression, the `git:/tmp/lol` in ...@@ -211,7 +211,6 @@ Since there are no anchors in the used regular expression, the `git:/tmp/lol` in
When importing, GitLab would execute the following command, passing the `import_url` as an argument: When importing, GitLab would execute the following command, passing the `import_url` as an argument:
```sh ```sh
git clone file://git:/tmp/lol git clone file://git:/tmp/lol
``` ```
......
...@@ -27,7 +27,6 @@ ...@@ -27,7 +27,6 @@
![SSH key single page](img/profile_settings_ssh_keys_single_key.png) ![SSH key single page](img/profile_settings_ssh_keys_single_key.png)
>**Note:** >**Note:**
Once you add a key, you cannot edit it, only remove it. In case the paste Once you add a key, you cannot edit it, only remove it. In case the paste
didn't work, you will have to remove the offending key and re-add it. didn't work, you will have to remove the offending key and re-add it.
......
...@@ -471,7 +471,6 @@ gitlab_rails['redis_port'] = 6379 ...@@ -471,7 +471,6 @@ gitlab_rails['redis_port'] = 6379
Finally, reconfigure GitLab for the change to take effect: Finally, reconfigure GitLab for the change to take effect:
```sh ```sh
sudo gitlab-ctl reconfigure sudo gitlab-ctl reconfigure
``` ```
......
This diff is collapsed.
...@@ -34,7 +34,6 @@ To use Akismet: ...@@ -34,7 +34,6 @@ To use Akismet:
![Screenshot of Akismet settings](img/akismet_settings.png) ![Screenshot of Akismet settings](img/akismet_settings.png)
## Training ## Training
> *Note:* Training the Akismet filter is only available in 8.11 and above. > *Note:* Training the Akismet filter is only available in 8.11 and above.
......
...@@ -38,7 +38,6 @@ To enable the CAS OmniAuth provider you must register your application with your ...@@ -38,7 +38,6 @@ To enable the CAS OmniAuth provider you must register your application with your
} }
] ]
``` ```
For installations from source: For installations from source:
...@@ -65,4 +64,3 @@ On the sign in page there should now be a CAS tab in the sign in form. ...@@ -65,4 +64,3 @@ On the sign in page there should now be a CAS tab in the sign in form.
[reconfigure]: ../administration/restart_gitlab.md#omnibus-gitlab-reconfigure [reconfigure]: ../administration/restart_gitlab.md#omnibus-gitlab-reconfigure
[restart GitLab]: ../administration/restart_gitlab.md#installations-from-source [restart GitLab]: ../administration/restart_gitlab.md#installations-from-source
...@@ -93,7 +93,6 @@ To get the credentials (a pair of Client ID and Client Secret), you must registe ...@@ -93,7 +93,6 @@ To get the credentials (a pair of Client ID and Client Secret), you must registe
args: { scope: 'user:email' } } args: { scope: 'user:email' } }
``` ```
For GitHub Enterprise: For GitHub Enterprise:
``` ```
......
...@@ -231,7 +231,6 @@ In order to enable/disable an OmniAuth provider, go to Admin Area -> Settings -> ...@@ -231,7 +231,6 @@ In order to enable/disable an OmniAuth provider, go to Admin Area -> Settings ->
![Enabled OAuth Sign-In sources](img/enabled-oauth-sign-in-sources.png) ![Enabled OAuth Sign-In sources](img/enabled-oauth-sign-in-sources.png)
## Disabling Omniauth ## Disabling Omniauth
Starting from version 11.4 of GitLab, Omniauth is enabled by default. This only Starting from version 11.4 of GitLab, Omniauth is enabled by default. This only
......
...@@ -249,7 +249,6 @@ If you want some SAML authentication methods to count as 2FA on a per session ba ...@@ -249,7 +249,6 @@ If you want some SAML authentication methods to count as 2FA on a per session ba
1. Save the file and [restart GitLab][] for the changes ot take effect 1. Save the file and [restart GitLab][] for the changes ot take effect
In addition to the changes in GitLab, make sure that your Idp is returning the In addition to the changes in GitLab, make sure that your Idp is returning the
`AuthnContext`. For example: `AuthnContext`. For example:
......
...@@ -8,7 +8,6 @@ We suggest you use the project name as the trigger term for simplicity and clari ...@@ -8,7 +8,6 @@ We suggest you use the project name as the trigger term for simplicity and clari
Taking the trigger term as `project-name`, the commands are: Taking the trigger term as `project-name`, the commands are:
| Command | Effect | | Command | Effect |
| ------- | ------ | | ------- | ------ |
| `/project-name help` | Shows all available slash commands | | `/project-name help` | Shows all available slash commands |
......
...@@ -442,7 +442,6 @@ backups will be copied to, and will be created if it does not exist. If the ...@@ -442,7 +442,6 @@ backups will be copied to, and will be created if it does not exist. If the
directory that you want to copy the tarballs to is the root of your mounted directory that you want to copy the tarballs to is the root of your mounted
directory, just use `.` instead. directory, just use `.` instead.
For Omnibus GitLab packages: For Omnibus GitLab packages:
1. Edit `/etc/gitlab/gitlab.rb`: 1. Edit `/etc/gitlab/gitlab.rb`:
...@@ -564,7 +563,6 @@ For installations from source: ...@@ -564,7 +563,6 @@ For installations from source:
1. [Restart GitLab] for the changes to take effect. 1. [Restart GitLab] for the changes to take effect.
```sh ```sh
sudo -u git crontab -e # Edit the crontab for the git user sudo -u git crontab -e # Edit the crontab for the git user
``` ```
......
...@@ -52,7 +52,6 @@ bundle exec rake gitlab:import:all_users_to_all_groups RAILS_ENV=production ...@@ -52,7 +52,6 @@ bundle exec rake gitlab:import:all_users_to_all_groups RAILS_ENV=production
- Enable this setting to keep new users blocked until they have been cleared by the admin (default: false). - Enable this setting to keep new users blocked until they have been cleared by the admin (default: false).
``` ```
block_auto_created_users: false block_auto_created_users: false
``` ```
...@@ -77,7 +76,6 @@ GitLab stores the secret data enabling 2FA to work in an encrypted database ...@@ -77,7 +76,6 @@ GitLab stores the secret data enabling 2FA to work in an encrypted database
column. The encryption key for this data is known as `otp_key_base`, and is column. The encryption key for this data is known as `otp_key_base`, and is
stored in `config/secrets.yml`. stored in `config/secrets.yml`.
If that file is leaked, but the individual 2FA secrets have not, it's possible If that file is leaked, but the individual 2FA secrets have not, it's possible
to re-encrypt those secrets with a new encryption key. This allows you to change to re-encrypt those secrets with a new encryption key. This allows you to change
the leaked key without forcing all users to change their 2FA details. the leaked key without forcing all users to change their 2FA details.
......
...@@ -45,7 +45,6 @@ Here's what we'll cover in this tutorial: ...@@ -45,7 +45,6 @@ Here's what we'll cover in this tutorial:
- [How to modify history](#how-modifying-history-is-done) - [How to modify history](#how-modifying-history-is-done)
- [How to remove sensitive information from repository](#deleting-sensitive-information-from-commits) - [How to remove sensitive information from repository](#deleting-sensitive-information-from-commits)
### Branching strategy ### Branching strategy
[Git][git-official] is a de-centralized version control system, which means that beside regular [Git][git-official] is a de-centralized version control system, which means that beside regular
...@@ -64,14 +63,12 @@ prevent that anything is lost or out of sync when feature is complete. You can a ...@@ -64,14 +63,12 @@ prevent that anything is lost or out of sync when feature is complete. You can a
read through this blog post on [Git Tips & Tricks][gitlab-git-tips-n-tricks] read through this blog post on [Git Tips & Tricks][gitlab-git-tips-n-tricks]
to learn how to easily **do** things in Git. to learn how to easily **do** things in Git.
## Undo local changes ## Undo local changes
Until you push your changes to any remote repository, they will only affect you. Until you push your changes to any remote repository, they will only affect you.
That broadens your options on how to handle undoing them. Still, local changes That broadens your options on how to handle undoing them. Still, local changes
can be on various stages and each stage has a different approach on how to tackle them. can be on various stages and each stage has a different approach on how to tackle them.
### Unstaged local changes (before you commit) ### Unstaged local changes (before you commit)
When a change is made, but it is not added to the staged tree, Git itself When a change is made, but it is not added to the staged tree, Git itself
...@@ -315,7 +312,6 @@ In case you want to modify something introduced in commit `B`. ...@@ -315,7 +312,6 @@ In case you want to modify something introduced in commit `B`.
You can find some more examples in [below section where we explain how to modify You can find some more examples in [below section where we explain how to modify
history](#how-modifying-history-is-done) history](#how-modifying-history-is-done)
### Redoing the Undo ### Redoing the Undo
Sometimes you realize that the changes you undid were useful and you want them Sometimes you realize that the changes you undid were useful and you want them
...@@ -396,8 +392,8 @@ a nicer history of your contribution. ...@@ -396,8 +392,8 @@ a nicer history of your contribution.
Keep in mind that this also removes the comments attached to certain commits Keep in mind that this also removes the comments attached to certain commits
in merge requests, so if you need to retain traceability in GitLab, then in merge requests, so if you need to retain traceability in GitLab, then
modifying history is not acceptable. modifying history is not acceptable.
A feature-branch of a merge request is a public branch and might be used by A feature-branch of a merge request is a public branch and might be used by
other developers, but project process and rules might allow or require other developers, but project process and rules might allow or require
you to use `git rebase` (command that changes history) to reduce number of you to use `git rebase` (command that changes history) to reduce number of
displayed commits on target branch after reviews are done (for example displayed commits on target branch after reviews are done (for example
GitLab). There is a `git merge --squash` command which does exactly that GitLab). There is a `git merge --squash` command which does exactly that
......
...@@ -706,4 +706,3 @@ Files that have been modified but are not committed. Check them by using the com ...@@ -706,4 +706,3 @@ Files that have been modified but are not committed. Check them by using the com
### YAML ### YAML
A human-readable data serialization [language](http://www.yaml.org/about.html) that takes concepts from programming languages such as C, Perl, and Python, and ideas from XML and the data format of electronic mail. A human-readable data serialization [language](http://www.yaml.org/about.html) that takes concepts from programming languages such as C, Perl, and Python, and ideas from XML and the data format of electronic mail.
...@@ -80,7 +80,6 @@ our newly created VPC. ...@@ -80,7 +80,6 @@ our newly created VPC.
![Route Table](img/route_table.png) ![Route Table](img/route_table.png)
### Internet Gateway ### Internet Gateway
Now still on the same dashboard head over to Internet Gateways and Now still on the same dashboard head over to Internet Gateways and
...@@ -238,7 +237,6 @@ running reconfigure we need to make sure all our services are tied down ...@@ -238,7 +237,6 @@ running reconfigure we need to make sure all our services are tied down
so just leave the reconfigure command until after we edit our gitlab.rb so just leave the reconfigure command until after we edit our gitlab.rb
file. file.
### Extension for PostgreSQL ### Extension for PostgreSQL
Connect to your new RDS instance to verify access and to install Connect to your new RDS instance to verify access and to install
...@@ -277,8 +275,6 @@ username, and password. ...@@ -277,8 +275,6 @@ username, and password.
Next, we only need to configure the Redis section by adding the host and Next, we only need to configure the Redis section by adding the host and
uncommenting the port. uncommenting the port.
The last configuration step is to [change the default file locations ](http://docs.gitlab.com/ee/administration/high_availability/nfs.html) The last configuration step is to [change the default file locations ](http://docs.gitlab.com/ee/administration/high_availability/nfs.html)
to make the EFS integration easier to manage. to make the EFS integration easier to manage.
...@@ -344,7 +340,6 @@ text area that allows us to add a lot of custom configurations which ...@@ -344,7 +340,6 @@ text area that allows us to add a lot of custom configurations which
allows you to add a custom script for when launching an instance. Let's allows you to add a custom script for when launching an instance. Let's
add the following script to the User Data section: add the following script to the User Data section:
#cloud-config #cloud-config
package_upgrade: true package_upgrade: true
packages: packages:
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
comments: false comments: false
--- ---
# Support Boot Camp # Support Boot Camp
**Goal:** Prepare new Service Engineers at GitLab **Goal:** Prepare new Service Engineers at GitLab
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
comments: false comments: false
--- ---
# Training # Training
This training material is the markdown used to generate training slides This training material is the markdown used to generate training slides
...@@ -205,7 +204,6 @@ git push origin squash_some_bugs ...@@ -205,7 +204,6 @@ git push origin squash_some_bugs
- Anyone can comment, not just the assignee - Anyone can comment, not just the assignee
- Push corrections to the same branch - Push corrections to the same branch
--- ---
### Merge request example ### Merge request example
...@@ -395,7 +393,6 @@ git revert vs git reset ...@@ -395,7 +393,6 @@ git revert vs git reset
Reset removes the commit while revert removes the changes but leaves the commit Reset removes the commit while revert removes the changes but leaves the commit
Revert is safer considering we can revert a revert Revert is safer considering we can revert a revert
# Changed file # Changed file
git commit -am "bug introduced" git commit -am "bug introduced"
git revert HEAD git revert HEAD
......
...@@ -40,7 +40,6 @@ Git log lists commit history. It allows searching and filtering. ...@@ -40,7 +40,6 @@ Git log lists commit history. It allows searching and filtering.
git log --since=1.month.ago --until=3.weeks.ago git log --since=1.month.ago --until=3.weeks.ago
``` ```
---------- ----------
## Git Log Workflow ## Git Log Workflow
......
...@@ -51,7 +51,6 @@ comments: false ...@@ -51,7 +51,6 @@ comments: false
1. Pull for updates 1. Pull for updates
1. Push changes 1. Push changes
---------- ----------
## Commands ## Commands
......
...@@ -97,7 +97,6 @@ Now, you can use pgloader to migrate the data from MySQL to PostgreSQL: ...@@ -97,7 +97,6 @@ Now, you can use pgloader to migrate the data from MySQL to PostgreSQL:
1. Once the migration finishes, you should see a summary table that looks like 1. Once the migration finishes, you should see a summary table that looks like
the following: the following:
``` ```
table name read imported errors total time table name read imported errors total time
----------------------------------------------- --------- --------- --------- -------------- ----------------------------------------------- --------- --------- --------- --------------
...@@ -245,7 +244,6 @@ Now, you can use pgloader to migrate the data from MySQL to PostgreSQL: ...@@ -245,7 +244,6 @@ Now, you can use pgloader to migrate the data from MySQL to PostgreSQL:
1. Once the migration finishes, you should see a summary table that looks like 1. Once the migration finishes, you should see a summary table that looks like
the following: the following:
``` ```
table name read imported errors total time table name read imported errors total time
----------------------------------------------- --------- --------- --------- -------------- ----------------------------------------------- --------- --------- --------- --------------
...@@ -286,4 +284,3 @@ If you experience 500 errors after the migration, try to clear the cache: ...@@ -286,4 +284,3 @@ If you experience 500 errors after the migration, try to clear the cache:
``` bash ``` bash
sudo -u git -H bundle exec rake cache:clear RAILS_ENV=production sudo -u git -H bundle exec rake cache:clear RAILS_ENV=production
``` ```
...@@ -80,4 +80,3 @@ exit ...@@ -80,4 +80,3 @@ exit
Once the migration is successfully marked, run the rake `db:migrate` task again. Once the migration is successfully marked, run the rake `db:migrate` task again.
You will likely have to repeat this process several times until all failed You will likely have to repeat this process several times until all failed
migrations are marked complete. migrations are marked complete.
...@@ -270,7 +270,6 @@ sudo -u gitlab-psql /opt/gitlab/embedded/bin/slon_start 1 --conf /var/opt/gitlab ...@@ -270,7 +270,6 @@ sudo -u gitlab-psql /opt/gitlab/embedded/bin/slon_start 1 --conf /var/opt/gitlab
If all went well this will produce output such as: If all went well this will produce output such as:
``` ```
Invoke slon for node 1 - /opt/gitlab/embedded/bin/slon -p /var/run/slony1/slony_replication_node1.pid -s 1000 -d2 slony_replication 'host=192.168.0.7 dbname=gitlabhq_production user=slony port=5432 password=hieng8ezohHuCeiqu0leeghai4aeyahp' > /var/log/gitlab/slony/node1/gitlabhq_production-2016-10-06.log 2>&1 & Invoke slon for node 1 - /opt/gitlab/embedded/bin/slon -p /var/run/slony1/slony_replication_node1.pid -s 1000 -d2 slony_replication 'host=192.168.0.7 dbname=gitlabhq_production user=slony port=5432 password=hieng8ezohHuCeiqu0leeghai4aeyahp' > /var/log/gitlab/slony/node1/gitlabhq_production-2016-10-06.log 2>&1 &
Slon successfully started for cluster slony_replication, node node1 Slon successfully started for cluster slony_replication, node node1
......
...@@ -25,7 +25,6 @@ To report abuse from a user's comment: ...@@ -25,7 +25,6 @@ To report abuse from a user's comment:
1. Complete an abuse report. 1. Complete an abuse report.
1. Click the **Send report** button. 1. Click the **Send report** button.
NOTE: **Note:** NOTE: **Note:**
A URL to the reported user's comment will be A URL to the reported user's comment will be
pre-filled in the abuse report's **Message** field. pre-filled in the abuse report's **Message** field.
......
...@@ -28,7 +28,6 @@ With default whitelist settings, the probes can be accessed from localhost: ...@@ -28,7 +28,6 @@ With default whitelist settings, the probes can be accessed from localhost:
- `http://localhost/-/readiness` - `http://localhost/-/readiness`
- `http://localhost/-/liveness` - `http://localhost/-/liveness`
The first endpoint, `/-/health/`, only checks whether the application server is running. It does The first endpoint, `/-/health/`, only checks whether the application server is running. It does
-not verify the database or other services are running. A successful response will return -not verify the database or other services are running. A successful response will return
a 200 status code with the following message: a 200 status code with the following message:
......
...@@ -95,7 +95,6 @@ For example, let's say we have the following Kubernetes clusters: ...@@ -95,7 +95,6 @@ For example, let's say we have the following Kubernetes clusters:
| Test | `test` | Group | | Test | `test` | Group |
| Development| `*` | Group | | Development| `*` | Group |
And the following environments are set in [`.gitlab-ci.yml`](../../../ci/yaml/README.md): And the following environments are set in [`.gitlab-ci.yml`](../../../ci/yaml/README.md):
```yaml ```yaml
......
...@@ -288,7 +288,6 @@ On Linux, you can download [Noto Color Emoji](https://www.google.com/get/noto/he ...@@ -288,7 +288,6 @@ On Linux, you can download [Noto Color Emoji](https://www.google.com/get/noto/he
Ubuntu 18.04 (like many modern Linux distros) has this font installed by default. Ubuntu 18.04 (like many modern Linux distros) has this font installed by default.
``` ```
Sometimes you want to <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/monkey.png" width="20px" height="20px"> around a bit and add some <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/star2.png" width="20px" height="20px"> to your <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/speech_balloon.png" width="20px" height="20px">. Well we have a gift for you: Sometimes you want to <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/monkey.png" width="20px" height="20px"> around a bit and add some <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/star2.png" width="20px" height="20px"> to your <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/speech_balloon.png" width="20px" height="20px">. Well we have a gift for you:
<img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/zap.png" width="20px" height="20px">You can use emoji anywhere GFM is supported. <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/v.png" width="20px" height="20px"> <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/zap.png" width="20px" height="20px">You can use emoji anywhere GFM is supported. <img src="https://gitlab.com/gitlab-org/gitlab-ce/raw/master/app/assets/images/emoji/v.png" width="20px" height="20px">
...@@ -453,14 +452,14 @@ Color written inside backticks will be followed by a color "chip". ...@@ -453,14 +452,14 @@ Color written inside backticks will be followed by a color "chip".
Examples: Examples:
`#F00` `#F00`
`#F00A` `#F00A`
`#FF0000` `#FF0000`
`#FF0000AA` `#FF0000AA`
`RGB(0,255,0)` `RGB(0,255,0)`
`RGB(0%,100%,0%)` `RGB(0%,100%,0%)`
`RGBA(0,255,0,0.7)` `RGBA(0,255,0,0.7)`
`HSL(540,70%,50%)` `HSL(540,70%,50%)`
`HSLA(540,70%,50%,0.7)` `HSLA(540,70%,50%,0.7)`
Becomes: Becomes:
...@@ -987,7 +986,6 @@ while the equation for the theory of relativity is E = mc<sup>2</sup>. ...@@ -987,7 +986,6 @@ while the equation for the theory of relativity is E = mc<sup>2</sup>.
The formula for water is H<sub>2</sub>O while the equation for the theory of relativity is E = mc<sup>2</sup>. The formula for water is H<sub>2</sub>O while the equation for the theory of relativity is E = mc<sup>2</sup>.
## Wiki-specific Markdown ## Wiki-specific Markdown
The following examples show how links inside wikis behave. The following examples show how links inside wikis behave.
......
...@@ -89,7 +89,6 @@ To enable private profile: ...@@ -89,7 +89,6 @@ To enable private profile:
1. Check the "Private profile" option. 1. Check the "Private profile" option.
1. Hit **Update profile settings**. 1. Hit **Update profile settings**.
NOTE: **Note:** NOTE: **Note:**
You and GitLab admins can see your the abovementioned information on your profile even if it is private. You and GitLab admins can see your the abovementioned information on your profile even if it is private.
......
...@@ -138,7 +138,6 @@ Follow these steps to deploy a function using the Node.js runtime to your Knativ ...@@ -138,7 +138,6 @@ Follow these steps to deploy a function using the Node.js runtime to your Knativ
FUNCTION: echo FUNCTION: echo
``` ```
The `serverless.yml` file references both an `echo` directory (under `buildargs`) and an `echo` file (under `handler`), The `serverless.yml` file references both an `echo` directory (under `buildargs`) and an `echo` file (under `handler`),
which is a reference to `echo.js` in the [repository](https://gitlab.com/knative-examples/functions). Additionally, it which is a reference to `echo.js` in the [repository](https://gitlab.com/knative-examples/functions). Additionally, it
contains three sections with distinct parameters: contains three sections with distinct parameters:
...@@ -150,7 +149,6 @@ contains three sections with distinct parameters: ...@@ -150,7 +149,6 @@ contains three sections with distinct parameters:
| `service` | Name for the Knative service which will serve the function. | | `service` | Name for the Knative service which will serve the function. |
| `description` | A short description of the `service`. | | `description` | A short description of the `service`. |
### `provider` ### `provider`
| Parameter | Description | | Parameter | Description |
......
...@@ -47,7 +47,6 @@ to enable it. ...@@ -47,7 +47,6 @@ to enable it.
> - To move or rename a repository with a container registry you will have to > - To move or rename a repository with a container registry you will have to
> delete all existing images. > delete all existing images.
If you visit the **Registry** link under your project's menu, you can see the If you visit the **Registry** link under your project's menu, you can see the
explicit instructions to login to the Container Registry using your GitLab explicit instructions to login to the Container Registry using your GitLab
credentials. credentials.
......
...@@ -46,7 +46,7 @@ You can see that there are seven stages in total: ...@@ -46,7 +46,7 @@ You can see that there are seven stages in total:
## How the data is measured ## How the data is measured
Cycle Analytics records cycle time and data based on the project issues with the Cycle Analytics records cycle time and data based on the project issues with the
exception of the staging and production stages, where only data deployed to exception of the staging and production stages, where only data deployed to
production are measured. production are measured.
Specifically, if your CI is not set up and you have not defined a `production` Specifically, if your CI is not set up and you have not defined a `production`
...@@ -86,7 +86,6 @@ So, the Cycle Analytics dashboard won't present any data: ...@@ -86,7 +86,6 @@ So, the Cycle Analytics dashboard won't present any data:
- For staging and production stages, if the project has no `production` or `production/*` - For staging and production stages, if the project has no `production` or `production/*`
environment. environment.
## Example workflow ## Example workflow
Below is a simple fictional workflow of a single cycle that happens in a Below is a simple fictional workflow of a single cycle that happens in a
...@@ -159,7 +158,6 @@ Learn more about Cycle Analytics in the following resources: ...@@ -159,7 +158,6 @@ Learn more about Cycle Analytics in the following resources:
- [Cycle Analytics feature preview](https://about.gitlab.com/2016/09/16/feature-preview-introducing-cycle-analytics/) - [Cycle Analytics feature preview](https://about.gitlab.com/2016/09/16/feature-preview-introducing-cycle-analytics/)
- [Cycle Analytics feature highlight](https://about.gitlab.com/2016/09/21/cycle-analytics-feature-highlight/) - [Cycle Analytics feature highlight](https://about.gitlab.com/2016/09/21/cycle-analytics-feature-highlight/)
[board]: issue_board.md#creating-a-new-list [board]: issue_board.md#creating-a-new-list
[ce-5986]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5986 [ce-5986]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5986
[ce-20975]: https://gitlab.com/gitlab-org/gitlab-ce/issues/20975 [ce-20975]: https://gitlab.com/gitlab-org/gitlab-ce/issues/20975
......
...@@ -93,4 +93,3 @@ Possible fixes ...@@ -93,4 +93,3 @@ Possible fixes
[ce-4981]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4981 [ce-4981]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4981
[gitlab-ce-templates]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/.gitlab [gitlab-ce-templates]: https://gitlab.com/gitlab-org/gitlab-ce/tree/master/.gitlab
...@@ -59,4 +59,3 @@ Bamboo under 'Trigger IP addresses'. ...@@ -59,4 +59,3 @@ Bamboo under 'Trigger IP addresses'.
> **Note:** > **Note:**
> - Starting with GitLab 8.14.0, builds are triggered on push events. > - Starting with GitLab 8.14.0, builds are triggered on push events.
...@@ -10,7 +10,6 @@ This feature evolved out of [Protected Branches](protected_branches.md) ...@@ -10,7 +10,6 @@ This feature evolved out of [Protected Branches](protected_branches.md)
Protected tags will prevent anyone from updating or deleting the tag, as and will prevent creation of matching tags based on the permissions you have selected. By default, anyone without Maintainer permission will be prevented from creating tags. Protected tags will prevent anyone from updating or deleting the tag, as and will prevent creation of matching tags based on the permissions you have selected. By default, anyone without Maintainer permission will be prevented from creating tags.
## Configuring protected tags ## Configuring protected tags
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.
...@@ -43,7 +42,6 @@ matching the wildcard. For example: ...@@ -43,7 +42,6 @@ matching the wildcard. For example:
| `*gitlab*` | `gitlab`, `gitlab/v1` | | `*gitlab*` | `gitlab`, `gitlab/v1` |
| `*` | `v1.0.1rc2`, `accidental-tag` | | `*` | `v1.0.1rc2`, `accidental-tag` |
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
...@@ -54,7 +52,6 @@ all matching tags: ...@@ -54,7 +52,6 @@ all matching tags:
![Protected tag matches](img/protected_tag_matches.png) ![Protected tag matches](img/protected_tag_matches.png)
--- ---
[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"
...@@ -55,7 +55,6 @@ discussions, and descriptions: ...@@ -55,7 +55,6 @@ discussions, and descriptions:
| `/merge` | Merge (when pipeline succeeds) | | ✓ | | `/merge` | Merge (when pipeline succeeds) | | ✓ |
| `/create_merge_request <branch name>` | Create a new merge request starting from the current issue | ✓ | | | `/create_merge_request <branch name>` | Create a new merge request starting from the current issue | ✓ | |
## Quick actions for commit messages ## Quick actions for commit messages
The following quick actions are applicable for commit messages: The following quick actions are applicable for commit messages:
......
...@@ -190,7 +190,6 @@ key to use. ...@@ -190,7 +190,6 @@ key to use.
Replace `30F2B65B9246B6CA` with your GPG key ID. Replace `30F2B65B9246B6CA` with your GPG key ID.
1. (Optional) If Git is using `gpg` and you get errors like `secret key not available` 1. (Optional) If Git is using `gpg` and you get errors like `secret key not available`
or `gpg: signing failed: secret key not available`, run the following command to or `gpg: signing failed: secret key not available`, run the following command to
change to `gpg2`: change to `gpg2`:
......
...@@ -112,7 +112,6 @@ screenshot above will yield a branch named ...@@ -112,7 +112,6 @@ screenshot above will yield a branch named
Since GitLab 9.0, when you click the `New branch` in an empty repository project, GitLab automatically creates the master branch, commits a blank `README.md` file to it and creates and redirects you to a new branch based on the issue title. Since GitLab 9.0, when you click the `New branch` in an empty repository project, GitLab automatically creates the master branch, commits a blank `README.md` file to it and creates and redirects you to a new branch based on the issue title.
If your [project is already configured with a deployment service][project-services-doc] (e.g. Kubernetes), GitLab takes one step further and prompts you to set up [auto deploy][auto-deploy-doc] by helping you create a `.gitlab-ci.yml` file. If your [project is already configured with a deployment service][project-services-doc] (e.g. Kubernetes), GitLab takes one step further and prompts you to set up [auto deploy][auto-deploy-doc] by helping you create a `.gitlab-ci.yml` file.
After the branch is created, you can edit files in the repository to fix After the branch is created, you can edit files in the repository to fix
the issue. When a merge request is created based on the newly created branch, the issue. When a merge request is created based on the newly created branch,
the description field will automatically display the [issue closing pattern] the description field will automatically display the [issue closing pattern]
......
...@@ -10,7 +10,6 @@ document more information about using branches to work together. ...@@ -10,7 +10,6 @@ document more information about using branches to work together.
Forking a project is in most cases a two-step process. Forking a project is in most cases a two-step process.
1. Click on the fork button located in the middle of the page or a project's 1. Click on the fork button located in the middle of the page or a project's
home page right next to the stars button. home page right next to the stars button.
......
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