diff options
author | Filipa Lacerda <filipa@gitlab.com> | 2018-07-10 12:05:06 +0100 |
---|---|---|
committer | Filipa Lacerda <filipa@gitlab.com> | 2018-07-10 18:11:19 +0100 |
commit | 135ead1d83d774a1bc0ed3ed947896b64d1755aa (patch) | |
tree | 7625ab36e07b70af088d5584bc5fd082b857d77f /doc | |
parent | ac71675d3096ac9317ea230a408d69029bdadc73 (diff) | |
parent | f3edbafe6310ca1584002b8a351048a3fb3309e3 (diff) | |
download | gitlab-ce-135ead1d83d774a1bc0ed3ed947896b64d1755aa.tar.gz |
Merge branch 'master' into 48237-toggle-file-comments
* master: (38 commits)
Update bitbucket.md to fix typo and small grammar touchups.
Update time_helper.rb to fix output for exact minutes.
Document update for GitLab Pages users.
Support manually stopping any environment from the UI
Fix link to frontend in handbook
Shorten CHANGELOG filename to avoid breaking ecryptfs users
Replace 48976-rails5-invalid-single-table-inheritance-type-group-is-not-a-subclass-of-gitlab-backgroundmigration-fixcrossprojectlabellinks-namespace.yml
Fix mountComponent helper path in docs
Fix #48537 - Update avatar only via the projects API
Add additional headline for Adding SSH keys to GitLab
Request to be a proofreader.
Fix specs
Fix search bar text input alignment
Fix API docs on unauthenticated projects return
Adds with_projects optional parameter to /groups/:id API endpoint
Docs: make it clear that you need a completely separate domain for Pages
Document that we don't want to wait in tests
Removes unused store in diffs mr refactor Removes double export for actions in diffs module in mr refactor
Remove useless return
Use latest gitlab-styles
...
Diffstat (limited to 'doc')
-rw-r--r-- | doc/administration/pages/index.md | 4 | ||||
-rw-r--r-- | doc/api/groups.md | 25 | ||||
-rw-r--r-- | doc/api/projects.md | 43 | ||||
-rw-r--r-- | doc/development/fe_guide/development_process.md | 6 | ||||
-rw-r--r-- | doc/development/fe_guide/vue.md | 2 | ||||
-rw-r--r-- | doc/development/i18n/proofreader.md | 1 | ||||
-rw-r--r-- | doc/development/testing_guide/frontend_testing.md | 4 | ||||
-rw-r--r-- | doc/install/installation.md | 9 | ||||
-rw-r--r-- | doc/integration/bitbucket.md | 18 | ||||
-rw-r--r-- | doc/ssh/README.md | 2 | ||||
-rw-r--r-- | doc/update/11.0-to-11.1.md | 27 | ||||
-rw-r--r-- | doc/user/markdown.md | 4 |
12 files changed, 119 insertions, 26 deletions
diff --git a/doc/administration/pages/index.md b/doc/administration/pages/index.md index 9b1297ca4ba..c0a281382a5 100644 --- a/doc/administration/pages/index.md +++ b/doc/administration/pages/index.md @@ -49,8 +49,8 @@ supporting custom domains a secondary IP is not needed. Before proceeding with the Pages configuration, you will need to: -1. Have a separate domain under which the GitLab Pages will be served. In this - document we assume that to be `example.io`. +1. Have an exclusive root domain for serving GitLab Pages. Note that you cannot + use a subdomain of your GitLab's instance domain. 1. Configure a **wildcard DNS record**. 1. (Optional) Have a **wildcard certificate** for that domain if you decide to serve Pages under HTTPS. diff --git a/doc/api/groups.md b/doc/api/groups.md index 53d72509423..11de75039ee 100644 --- a/doc/api/groups.md +++ b/doc/api/groups.md @@ -210,6 +210,7 @@ Parameters: | --------- | ---- | -------- | ----------- | | `id` | integer/string | yes | The ID or [URL-encoded path of the group](README.md#namespaced-path-encoding) owned by the authenticated user | | `with_custom_attributes` | boolean | no | Include [custom attributes](custom_attributes.md) in response (admins only) | +| `with_projects` | boolean | no | Include details from projects that belong to the specified group (defaults to `true`). | ```bash curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v4/groups/4 @@ -361,6 +362,30 @@ Example response: } ``` +When adding the parameter `with_projects=false`, projects will not be returned. + +```bash +curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v4/groups/4?with_projects=false +``` + +Example response: + +```json +{ + "id": 4, + "name": "Twitter", + "path": "twitter", + "description": "Aliquid qui quis dignissimos distinctio ut commodi voluptas est.", + "visibility": "public", + "avatar_url": null, + "web_url": "https://gitlab.example.com/groups/twitter", + "request_access_enabled": false, + "full_name": "Twitter", + "full_path": "twitter", + "parent_id": null +} +``` + ## New group Creates a new project group. Available only for users who can create groups. diff --git a/doc/api/projects.md b/doc/api/projects.md index 1e06f6d01f3..a35c2a56992 100644 --- a/doc/api/projects.md +++ b/doc/api/projects.md @@ -34,7 +34,7 @@ There are currently three options for `merge_method` to choose from: ## List all projects Get a list of all visible projects across GitLab for the authenticated user. -When accessed without authentication, only public projects are returned. +When accessed without authentication, only public projects with "simple" fields are returned. ``` GET /projects @@ -47,7 +47,7 @@ GET /projects | `order_by` | string | no | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at` | | `sort` | string | no | Return projects sorted in `asc` or `desc` order. Default is `desc` | | `search` | string | no | Return list of projects matching the search criteria | -| `simple` | boolean | no | Return only the ID, URL, name, and path of each project | +| `simple` | boolean | no | Return only limited fields for each project. This is a no-op without authentication as then _only_ simple fields are returned. | | `owned` | boolean | no | Limit by projects owned by the current user | | `membership` | boolean | no | Limit by projects that the current user is a member of | | `starred` | boolean | no | Limit by projects starred by the current user | @@ -56,6 +56,41 @@ GET /projects | `with_issues_enabled` | boolean | no | Limit by enabled issues feature | | `with_merge_requests_enabled` | boolean | no | Limit by enabled merge requests feature | +When `simple=true` or the user is unauthenticated this returns something like: + +```json +[ + { + "id": 4, + "description": null, + "default_branch": "master", + "ssh_url_to_repo": "git@example.com:diaspora/diaspora-client.git", + "http_url_to_repo": "http://example.com/diaspora/diaspora-client.git", + "web_url": "http://example.com/diaspora/diaspora-client", + "readme_url": "http://example.com/diaspora/diaspora-client/blob/master/README.md", + "tag_list": [ + "example", + "disapora client" + ], + "name": "Diaspora Client", + "name_with_namespace": "Diaspora / Diaspora Client", + "path": "diaspora-client", + "path_with_namespace": "diaspora/diaspora-client", + "created_at": "2013-09-30T13:46:02Z", + "last_activity_at": "2013-09-30T13:46:02Z", + "forks_count": 0, + "avatar_url": "http://example.com/uploads/project/avatar/4/uploads/avatar.png", + "star_count": 0, + }, + { + "id": 6, + "description": null, + "default_branch": "master", +... +``` + +When the user is authenticated and `simple` is not set this returns something like: + ```json [ { @@ -235,7 +270,7 @@ GET /users/:user_id/projects | `order_by` | string | no | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at` | | `sort` | string | no | Return projects sorted in `asc` or `desc` order. Default is `desc` | | `search` | string | no | Return list of projects matching the search criteria | -| `simple` | boolean | no | Return only the ID, URL, name, and path of each project | +| `simple` | boolean | no | Return only limited fields for each project. This is a no-op without authentication as then _only_ simple fields are returned. | | `owned` | boolean | no | Limit by projects owned by the current user | | `membership` | boolean | no | Limit by projects that the current user is a member of | | `starred` | boolean | no | Limit by projects starred by the current user | @@ -723,7 +758,7 @@ GET /projects/:id/forks | `order_by` | string | no | Return projects ordered by `id`, `name`, `path`, `created_at`, `updated_at`, or `last_activity_at` fields. Default is `created_at` | | `sort` | string | no | Return projects sorted in `asc` or `desc` order. Default is `desc` | | `search` | string | no | Return list of projects matching the search criteria | -| `simple` | boolean | no | Return only the ID, URL, name, and path of each project | +| `simple` | boolean | no | Return only limited fields for each project. This is a no-op without authentication as then _only_ simple fields are returned. | | `owned` | boolean | no | Limit by projects owned by the current user | | `membership` | boolean | no | Limit by projects that the current user is a member of | | `starred` | boolean | no | Limit by projects starred by the current user | diff --git a/doc/development/fe_guide/development_process.md b/doc/development/fe_guide/development_process.md index d240dbe8b02..905668eef58 100644 --- a/doc/development/fe_guide/development_process.md +++ b/doc/development/fe_guide/development_process.md @@ -1,6 +1,6 @@ # Frontend Development Process -You can find more about the organization of the frontend team in the [handbook](https://about.gitlab.com/handbook/frontend/). +You can find more about the organization of the frontend team in the [handbook](https://about.gitlab.com/handbook/engineering/frontend/). ## Development Checklist @@ -34,7 +34,7 @@ Please use your best judgement when to use it and please contribute new points t - [ ] **Cookie Mode** Think about hiding the feature behind a cookie flag if the implementation is on top of existing features - [ ] **New route** Are you refactoring something big then you might consider adding a new route where you implement the new feature and when finished delete the current route and rename the new one. (for example 'merge_request' and 'new_merge_request') - [ ] **Setup** Is there any specific setup needed for your implementation (for example a kubernetes cluster)? Then let everyone know if it is not already mentioned where they can find documentation (if it doesn't exist - create it) -- [ ] **Security** Are there any new security relevant implementations? Then please contact the security team for an app security review. If you are not sure ask our [domain expert](https://about.gitlab.com/handbook/frontend/#frontend-domain-experts) +- [ ] **Security** Are there any new security relevant implementations? Then please contact the security team for an app security review. If you are not sure ask our [domain expert](https://about.gitlab.com/handbook/engineering/frontend/#frontend-domain-experts) #### During development @@ -51,7 +51,7 @@ Please use your best judgement when to use it and please contribute new points t - [ ] **Performance** Have you checked performance? For example do the same thing with 500 comments instead of 1. Document the tests and possible findings in the MR so a reviewer can directly see it. - [ ] Have you tested with a variety of our [supported browsers](../../install/requirements.md#supported-web-browsers)? You can use [browserstack](https://www.browserstack.com/) to be able to access a wide variety of browsers and operating systems. - [ ] Did you check the mobile view? -- [ ] Check the built webpack bundle (For the report run `WEBPACK_REPORT=true gdk run`, then open `webpack-report/index.html`) if we have unnecessary bloat due to wrong references, including libraries multiple times, etc.. If you need help contact the webpack [domain expert](https://about.gitlab.com/handbook/frontend/#frontend-domain-experts) +- [ ] Check the built webpack bundle (For the report run `WEBPACK_REPORT=true gdk run`, then open `webpack-report/index.html`) if we have unnecessary bloat due to wrong references, including libraries multiple times, etc.. If you need help contact the webpack [domain expert](https://about.gitlab.com/handbook/engineering/frontend/#frontend-domain-experts) - [ ] **Tests** Not only greenfield tests - Test also all bad cases that come to your mind. - [ ] If you have multiple MR's then also smoke test against the final merge. - [ ] Are there any big changes on how and especially how frequently we use the API then let production know about it diff --git a/doc/development/fe_guide/vue.md b/doc/development/fe_guide/vue.md index e31ee087358..219b98ac696 100644 --- a/doc/development/fe_guide/vue.md +++ b/doc/development/fe_guide/vue.md @@ -425,7 +425,7 @@ There is a helper in `spec/javascripts/helpers/vue_mount_component_helper.js` th ```javascript import Vue from 'vue'; -import mountComponent from 'helpers/vue_mount_component_helper.js' +import mountComponent from 'spec/helpers/vue_mount_component_helper' import component from 'component.vue' const Component = Vue.extend(component); diff --git a/doc/development/i18n/proofreader.md b/doc/development/i18n/proofreader.md index 9d0d7348df9..ca8ebcdc984 100644 --- a/doc/development/i18n/proofreader.md +++ b/doc/development/i18n/proofreader.md @@ -11,6 +11,7 @@ are very appreciative of the work done by translators and proofreaders! - Chinese Traditional - Huang Tao - [GitLab](https://gitlab.com/htve), [Crowdin](https://crowdin.com/profile/htve) - Weizhe Ding - [GitLab](https://gitlab.com/d.weizhe), [Crowdin](https://crowdin.com/profile/d.weizhe) + - Yi-Jyun Pan - [GitLab](https://gitlab.com/pan93412), [Crowdin](https://crowdin.com/profile/pan93412) - Chinese Traditional, Hong Kong - Huang Tao - [GitLab](https://gitlab.com/htve), [Crowdin](https://crowdin.com/profile/htve) - Dutch diff --git a/doc/development/testing_guide/frontend_testing.md b/doc/development/testing_guide/frontend_testing.md index 3b2b9c8c947..f8993653aec 100644 --- a/doc/development/testing_guide/frontend_testing.md +++ b/doc/development/testing_guide/frontend_testing.md @@ -172,6 +172,10 @@ object which can be treated like any other jasmine spy object. Further documentation on the babel rewire pluign API can be found on [its repository Readme doc](https://github.com/speedskater/babel-plugin-rewire#babel-plugin-rewire). +#### Waiting in tests + +If you cannot avoid using [`setTimeout`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout) in tests, please use the [Jasmine mock clock](https://jasmine.github.io/api/2.9/Clock.html). + ### Vue.js unit tests See this [section][vue-test]. diff --git a/doc/install/installation.md b/doc/install/installation.md index 259d8f73a22..4b68090f8d3 100644 --- a/doc/install/installation.md +++ b/doc/install/installation.md @@ -447,6 +447,15 @@ You can specify a different Git repository by providing it as an extra parameter sudo -u git -H bundle exec rake "gitlab:workhorse:install[/home/git/gitlab-workhorse,https://example.com/gitlab-workhorse.git]" RAILS_ENV=production +### Install gitlab-pages + +GitLab-Pages uses [GNU Make](https://www.gnu.org/software/make/). This step is optional and only needed if you wish to host static sites from within GitLab. The following commands will install GitLab-Pages in `/home/git/gitlab-pages`. For additional setup steps, please consult the [administration guide](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/administration/pages/source.md) for your version of GitLab as the GitLab Pages daemon can be ran several different ways. + + cd /home/git + sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-pages.git + cd gitlab-pages + sudo -u git -H git checkout v$(</home/git/gitlab/GITLAB_PAGES_VERSION) + sudo -u git -H make ### Initialize Database and Activate Advanced Features diff --git a/doc/integration/bitbucket.md b/doc/integration/bitbucket.md index 9094d1f2419..2afcb052536 100644 --- a/doc/integration/bitbucket.md +++ b/doc/integration/bitbucket.md @@ -22,8 +22,8 @@ Bitbucket.org. > **Note:** GitLab 8.15 significantly simplified the way to integrate Bitbucket.org with -GitLab. You are encouraged to upgrade your GitLab instance if you haven't done -already. If you're using GitLab 8.14 and below, [use the previous integration +GitLab. You are encouraged to upgrade your GitLab instance if you haven't done so +already. If you're using GitLab 8.14 or below, [use the previous integration docs][bb-old]. To enable the Bitbucket OmniAuth provider you must register your application @@ -64,7 +64,7 @@ you to use. 1. Select **Save**. 1. Select your newly created OAuth consumer and you should now see a Key and - Secret in the list of OAuth customers. Keep this page open as you continue + Secret in the list of OAuth consumers. Keep this page open as you continue the configuration.  @@ -114,8 +114,8 @@ you to use. from the Bitbucket application page. 1. Save the configuration file. -1. [Reconfigure][] or [restart GitLab][] for the changes to take effect if you - installed GitLab via Omnibus or from source respectively. +1. For the changes to take effect, [reconfigure GitLab][] if you installed via + Omnibus, or [restart][] if installed from source. On the sign in page there should now be a Bitbucket icon below the regular sign in form. Click the icon to begin the authentication process. Bitbucket will ask @@ -127,12 +127,12 @@ well, the user will be returned to GitLab and will be signed in. Once the above configuration is set up, you can use Bitbucket to sign into GitLab and [start importing your projects][bb-import]. -If you don't want to enable signing in with Bitbucket but just want to import -projects from Bitbucket, you could [disable it in the admin panel](omniauth.md#enable-or-disable-sign-in-with-an-omniauth-provider-without-disabling-import-sources). +If you want to import projects from Bitbucket, but don't want to enable signing in, +you can [disable Sign-Ins in the admin panel](omniauth.md#enable-or-disable-sign-in-with-an-omniauth-provider-without-disabling-import-sources). [init-oauth]: omniauth.md#initial-omniauth-configuration [bb-import]: ../workflow/importing/import_projects_from_bitbucket.md [bb-old]: https://gitlab.com/gitlab-org/gitlab-ce/blob/8-14-stable/doc/integration/bitbucket.md [bitbucket-docs]: https://confluence.atlassian.com/bitbucket/use-the-ssh-protocol-with-bitbucket-cloud-221449711.html#UsetheSSHprotocolwithBitbucketCloud-KnownhostorBitbucket%27spublickeyfingerprints -[reconfigure]: ../administration/restart_gitlab.md#omnibus-gitlab-reconfigure -[restart GitLab]: ../administration/restart_gitlab.md#installations-from-source +[reconfigure GitLab]: ../administration/restart_gitlab.md#omnibus-gitlab-reconfigure +[restart]: ../administration/restart_gitlab.md#installations-from-source diff --git a/doc/ssh/README.md b/doc/ssh/README.md index bab196e7609..63f0a654fcf 100644 --- a/doc/ssh/README.md +++ b/doc/ssh/README.md @@ -77,6 +77,8 @@ Note that Public SSH key may also be named as follows: If you want to change the password of your SSH key pair, you can use `ssh-keygen -p <keyname>`. +## Adding a SSH key to your GitLab account + 1. The next step is to copy the public SSH key as we will need it afterwards. To copy your public SSH key to the clipboard, use the appropriate code below: diff --git a/doc/update/11.0-to-11.1.md b/doc/update/11.0-to-11.1.md index 306bd417ebf..3f10a7edb8a 100644 --- a/doc/update/11.0-to-11.1.md +++ b/doc/update/11.0-to-11.1.md @@ -187,7 +187,24 @@ sudo -u git -H git checkout v$(</home/git/gitlab/GITALY_SERVER_VERSION) sudo -u git -H make ``` -### 10. Update MySQL permissions +### 10. Update gitlab-pages + +#### Only needed if you use GitLab Pages. + +Install and compile gitlab-pages. GitLab-Pages uses +[GNU Make](https://www.gnu.org/software/make/). +If you are not using Linux you may have to run `gmake` instead of +`make` below. + +```bash +cd /home/git/gitlab-pages + +sudo -u git -H git fetch --all --tags --prune +sudo -u git -H git checkout v$(</home/git/gitlab/GITLAB_PAGES_VERSION) +sudo -u git -H make +``` + +### 11. Update MySQL permissions If you are using MySQL you need to grant the GitLab user the necessary permissions on the database: @@ -209,7 +226,7 @@ You can make this setting permanent by adding it to your `my.cnf`: log_bin_trust_function_creators=1 ``` -### 11. Update configuration files +### 12. Update configuration files #### New configuration options for `gitlab.yml` @@ -283,7 +300,7 @@ For Ubuntu 16.04.1 LTS: sudo systemctl daemon-reload ``` -### 12. Install libs, migrations, etc. +### 13. Install libs, migrations, etc. ```bash cd /home/git/gitlab @@ -313,14 +330,14 @@ sudo -u git -H bundle exec rake cache:clear RAILS_ENV=production **MySQL installations**: Run through the `MySQL strings limits` and `Tables and data conversion to utf8mb4` [tasks](../install/database_mysql.md). -### 13. Start application +### 14. Start application ```bash sudo service gitlab start sudo service nginx restart ``` -### 14. Check application status +### 15. Check application status Check if GitLab and its environment are configured correctly: diff --git a/doc/user/markdown.md b/doc/user/markdown.md index 8e87c896a72..bd199b55a61 100644 --- a/doc/user/markdown.md +++ b/doc/user/markdown.md @@ -9,7 +9,7 @@ > For the best result, we encourage you to check this document out as rendered by GitLab: [markdown.md] -_GitLab uses (as of 11.1) the [CommonMark Ruby Library][commonmarker] for Markdown processing of all new issues, merge requests, comments, and other Markdown content in the GitLab system. Previous content and Markdown files `.md` in the repositories are still processed using the [Redcarpet Ruby library][redcarpet]._ +_GitLab uses (as of 11.1) the [CommonMark Ruby Library][commonmarker] for Markdown processing of all new issues, merge requests, comments, and other Markdown content in the GitLab system. Previous content, wiki pages and Markdown files (`.md`) in the repositories are still processed using the [Redcarpet Ruby library][redcarpet]._ _Where there are significant differences, we will try to call them out in this document._ @@ -22,7 +22,7 @@ You can use GFM in the following areas: - merge requests - milestones - snippets (the snippet must be named with a `.md` extension) -- wiki pages +- wiki pages (currently only rendered by Redcarpet) - markdown documents inside the repository (currently only rendered by Redcarpet) You can also use other rich text files in GitLab. You might have to install a |