Commit aa8ae12f authored by Marcia Ramos's avatar Marcia Ramos

Merge branch 'docs/direct-link-review-apps' into 'master'

Add docs for linking in changed pages from MR widget

Closes #53420

See merge request gitlab-org/gitlab-ce!22990
parents fd6e3781 2f2c45bd
......@@ -416,19 +416,18 @@ and/or `production`) you can see this information in the merge request itself.
### Go directly from source files to public pages on the environment
> Introduced in GitLab 8.17.
> Introduced in GitLab 8.17. In GitLab 11.5 the file links
are surfaced to the merge request widget.
To go one step further, we can specify a Route Map to get GitLab to show us "View on [environment URL]" buttons to go directly from a file to that file's representation on the deployed website. It will be exposed in a few places:
| In the diff for a merge request, comparison or commit | In the file view |
| ------ | ------ |
| !["View on env" button in merge request diff](img/view_on_env_mr.png) | !["View on env" button in file view](img/view_on_env_blob.png) |
You can specify a Route Map to get GitLab to show "View on <environment URL>"
buttons to go directly from a file to that file's representation on the
[deployed website via Review Apps](review_apps/index.md).
To get this to work, you need to tell GitLab how the paths of files in your repository map to paths of pages on your website, using a Route Map.
A Route Map is a file inside the repository at `.gitlab/route-map.yml`, which contains a YAML array that maps `source` paths (in the repository) to `public` paths (on the website).
This is an example of a route map for [Middleman](https://middlemanapp.com) static websites like [http://about.gitlab.com](https://gitlab.com/gitlab-com/www-gitlab-com):
Below is an example of a route map for [Middleman](https://middlemanapp.com) static websites
like <https://gitlab.com/gitlab-com/www-gitlab-com>:
```yaml
# Team data
......@@ -467,6 +466,25 @@ In the example above, the fact that mappings are evaluated in order of their def
---
Once you have the route mapping set up, it will be exposed in a few places:
- In the merge request widget. The **View app** button will take you to the
environment URL you have set up in `.gitlab-ci.yml`. The dropdown will render
the first 5 matched items from the route map, but you can filter them if more
than 5 are available.
![View app file list in merge request widget](img/view_on_mr_widget.png)
- In the diff for a merge request, comparison, or commit.
!["View on env" button in merge request diff](img/view_on_env_mr.png)
- In the blob file view.
!["View on env" button in file view](img/view_on_env_blob.png) |
---
We now have a full development cycle, where our app is tested, built, deployed
as a Review app, deployed to a staging server once the merge request is merged,
and finally manually deployed to the production server. What we just described
......
doc/ci/img/view_on_env_blob.png

32.2 KB | W: | H:

doc/ci/img/view_on_env_blob.png

11.6 KB | W: | H:

doc/ci/img/view_on_env_blob.png
doc/ci/img/view_on_env_blob.png
doc/ci/img/view_on_env_blob.png
doc/ci/img/view_on_env_blob.png
  • 2-up
  • Swipe
  • Onion skin
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