gitlab-org--gitlab-foss/spec/features
Rémy Coutable be09845914 Merge branch 'environments-and-deployments' into 'master'
Add environments and deployments

This MR is a continuation of https://gitlab.com/gitlab-org/gitlab-ce/issues/17009.

The current implementation is as follow:
1. We have two new tables: `environments` and `deployments`.
2. We have a new tab: `Environments` under `Pipelines` where you can see all you environments and add a new one.
3. We add a new option to `.gitlab-ci.yml` to track where we should create a deployment for environment.
4. If environment in `.gitlab-ci.yml` is specified it will create a deployment. **If environment does not exist it will be created.** (this got changed)
5. The deployment is always successful and shows the time of the action, in that case a build that presumably should do deployment. In the future we could extend deployment with statuses: success, failure. We could extend deployments with information that this is partial or full deployment.
6. User have to create environments that he will track first.
7. User can remove environments.
8. User can retry/rollback past deployment (in that case we retry past build). The new build when succeeds it will create a new deployment.
9. Currently environment have only one parameter: `name`. In the future it should have: `variables`, `credentials` and possibly `runners` and maybe other resources.
10. Currently deployment have this parameters: `sha`, `ref`, `deployable (in this case a build)`, `user (who triggered a deployment)`, `created_at`.

The `.gitlab-ci.yml`:
```
deploy to production:
  stage: deploy
  script: dpl travis...
  environment: production
```

What needs to be done:
- [x] Write initial implementation
- [x] Improve implementation (@ayufan)
- [x] Write tests (@ayufan)
- [x] Improve UX of the forms (cc @markpundsack) - reviewed by @markpundsack
- [x] Improve implementation of the views (cc @jschatz1) - done by @iamphill 
- [x] Write .gitlab-ci.yml documentation for `environments` - done by @ayufan
- [ ] Write user documentation (@ayufan and @markpundsack)

See merge request !4605
2016-06-15 13:48:09 +00:00
..
admin Test impersonation using img data attribute instead of username 2016-06-07 09:16:59 -05:00
atom Apply reviewer notes: update CHANGELOG, adjust code formatting 2016-06-13 09:51:55 -07:00
dashboard Change date format to be non zero padded in order to fix failing test 2016-06-09 14:38:24 -05:00
groups/members UI and copywriting improvements 2016-06-14 13:18:14 +02:00
issues Added test to dropdown search 2016-06-15 11:34:11 +01:00
merge_requests Rename ci_commit -> pipeline 2016-06-10 14:41:38 +02:00
profiles Fix preferences_spec test 2016-06-10 15:08:13 -05:00
projects UI and copywriting improvements 2016-06-14 13:18:14 +02:00
security Authorize environments controller actions 2016-06-14 14:43:45 +02:00
tags Fix spec for new project navigation 2016-05-16 12:25:37 -05:00
todos Fix failing todo tests 2016-06-02 15:30:13 -07:00
builds_spec.rb Fix specs 2016-06-14 11:38:34 +02:00
ci_lint_spec.rb Allow subsequent validations in CI Linter 2016-01-11 13:37:31 +01:00
commits_spec.rb Rename all [ci_]commit to [ci_]pipeline in specs and features 2016-06-03 16:22:26 +02:00
container_registry_spec.rb Use container registry config stub 2016-05-16 18:07:49 -05:00
dashboard_issues_spec.rb Fixed issue with dashboard/issues not filtering by milestone 2016-04-11 11:38:24 +01:00
dashboard_milestones_spec.rb Add missing Dashboard::LabelsController 2016-03-23 12:02:15 +01:00
environments_spec.rb Make environments_spec more feature-spec 2016-06-15 12:24:47 +02:00
gitlab_flavored_markdown_spec.rb
groups_spec.rb
help_pages_spec.rb
issues_spec.rb Fixed tests 2016-06-09 16:24:40 -04:00
login_spec.rb Implement authentication (login) using a U2F device. 2016-06-06 12:50:31 +05:30
markdown_spec.rb Merge branch '18019-fix-wiki-linking' into 'master' 2016-06-09 08:37:27 +00:00
milestone_spec.rb Use a better message when milestone is newly created 2016-04-29 10:15:49 +01:00
notes_on_merge_requests_spec.rb Incorportate feedback 2016-06-01 12:10:08 +02:00
participants_autocomplete_spec.rb Update specs to carry out changes in note factory 2016-05-29 15:03:00 -04:00
password_reset_spec.rb
pipelines_spec.rb Rename all [ci_]commit to [ci_]pipeline in specs and features 2016-06-03 16:22:26 +02:00
profile_spec.rb
projects_spec.rb Project title dropdown tests 2016-04-26 09:35:58 +01:00
runners_spec.rb Enable RSpec/NotToNot cop and auto-correct offenses 2016-05-24 15:40:29 -04:00
search_spec.rb Add test to check if top right search form is not present 2016-04-13 16:43:07 -05:00
signup_spec.rb Change landing page when skipping confirmation email and add documentation 2016-05-16 14:56:32 -03:00
task_lists_spec.rb Update specs to carry out changes in note factory 2016-05-29 15:03:00 -04:00
triggers_spec.rb
u2f_spec.rb Update u2f_spec to cover U2F being disabled until authenticator is set up. 2016-06-15 08:16:54 +05:30
users_spec.rb Improve uniqueness of field names on the signup form 2016-04-19 16:00:45 -04:00
variables_spec.rb Enable RSpec/NotToNot cop and auto-correct offenses 2016-05-24 15:40:29 -04:00