8.11 CI Plan
The bugs that needs to be solved.
The key features (includes a Frontend and Backend):
- Show current deploy status - Is this SHA currently deployed? https://gitlab.com/gitlab-org/gitlab-ce/issues/19571#note_13246122 (gitlab-org/gitlab-ce!5622)
- Add an URL as a configuration of Environment and show this as part of current deploy status: https://gitlab.com/gitlab-org/gitlab-ce/issues/19527. (!5469 (merged))
-
Create
pipeline_hooks
: https://gitlab.com/gitlab-org/gitlab-ce/issues/20115 (!5620 (merged))
@annabeldunstone @hazelyang):
The planned Frontend improvements (- Improve build view to show pipelines: #18141 (closed):!5742 (merged)
- Collapse build tabs: #18516 (closed): !5595 (merged)
- Show pipelines for merge requests: #18681 (closed): https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5485
- Show user in pipeline view https://gitlab.com/gitlab-org/gitlab-ce/issues/20002 (already implemented)
- Format Environments page https://gitlab.com/gitlab-org/gitlab-ce/issues/20059: !5687 (merged)
-
"CI configuration" button when
.gitlab-ci.yml
is present: #20101 (closed): !5558 (merged)
@ayufan @godfat @grzesiek @tmaczukin):
The planned Backend improvements (- Add an API to enumerate Environments: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5469
- Pre-create all builds when processing the pipeline (@ayufan): this is to solved https://gitlab.com/gitlab-org/gitlab-ce/issues/18644 and https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/289: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5295
- Improve Pipeline processing by using State Machine: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5782
- Generate coverage report for whole test suite: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5018 (@ayufan @grzesiek)
-
Implement code coverage badge and some other improvements regarding code coverage: #3714 (closed) (@grzesiek)
- Use badge template instead of using separate images https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5520
- Implement test coverage badge using badge templates https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5708
- Make it possible to display coverage badge depending on specific job that reports compound coverage (done in !5708 (merged))
- Report wall-clock elapsed time rather than cumulative job time (@godfat): #17007 (closed), !5734 (merged)
- Add an API to enumerate Deployments and trigger manual actions: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5825
- Add an API to enumerate pipelines: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5837
@ayufan @tmaczukin):
The planned GitLab Runner improvements (- Fix issue with leaking sockets when using docker executor: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/196: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/185: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/260
- Retry all docker operations in GitLab Runner to increase stability of builds: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/244
- Mounting used volumes to all services containers (docker executor): https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/241
- Support shared builds volume (docker executor): https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/193
The planned documentation/blog posts:
- Prepare monitoring recommendations with description for our infrastructure team
- Prepare a blog post about Shared Runners and performance: https://gitlab.com/gitlab-com/blog-posts/issues/244
Slipped
- Add download buttons for downloading artifacts for a branch (@godfat): #4255 (closed), #14419 (closed), !5142 (merged) (this is finished, but we missed the merge window)
- Support running builds on Kubernetes: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/30 suppressed by https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/277 (it is done, but will be released with 1.6)
- Update artifacts_size for old builds (!5076 (closed)) (we have working prototype, but we hit the performance problems (the long running migration) that we could not agree how to solve)
- Have CI automatically test migration paths (@zj): #14549 (closed): https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4874 (this is done, but we can't merge that, because of problems with other components)
- Add a line number and permalink to each line of build trace: https://gitlab.com/gitlab-org/gitlab-ce/issues/13205: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5744 (Frontend team were overloaded and did not manage to review and merge that in time)
- Show deployment activity and current status for merge requests #19992 (closed) (we did start looking at it)
- Show deploy activity on merge request activity feed #18440 (moved) (we did not start that)
- Add environment/deployment URL to environments page (we did not have time to start that)
-
Improve CI e-mail notifications: https://gitlab.com/gitlab-org/gitlab-ce/issues/3976#note_13152995 (It took us too long to merge
pipeline_events
)
Stretch; likely not to happen:
-
Statistics server embedded into Runner: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/219. The ideas how to improve that: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/1484 - Global Pipelines List + Filters for pipelines: #18054 (moved)
- Start tracking pipelines for Merge Requests and add
merge-requests
toonly
: https://gitlab.com/gitlab-org/gitlab-ce/issues/15310 - Use pipeline_hooks for Slack notifications: !5525 (merged) (this is started by @godfat)
- Use per-build token to act as an user triggering build: #18993 (moved): https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5735
The future features: CI Backlog GitLab Runner Backlog
CI issues for 8.11: https://gitlab.com/gitlab-org/gitlab-ce/issues?assignee_id=&author_id=&label_name=CI&milestone_title=8.11&scope=all&sort=id_desc&state=opened&utf8=%E2%9C%93&weight=
Runner issues for 1.5: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues?scope=all&sort=id_desc&state=opened&utf8=%E2%9C%93&milestone_title=v1.5&label-name=