Setup IDE terminal store for environment checks
(CE Port https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/23575)
(This is an iteration towards #5426 (closed). The feature is already implemented in !7727 (closed), but I am breaking it out into smaller MR's to ease the review process.)
What does this MR do?
This MR setups up the Vuex store for the IDE terminal which is used for environment checks. On loading the IDE, the terminal will:
- Ping the BE to check if the current environment (i.e. user, branch, project) can run the web terminal.
- Poll the BE to check if runners are available for the terminal.
Based on the result of these checks:
- A Vuex getter
allCheck
, which aggregates the two checks, will determine what is shown in the empty state. - The tab will never be activated if the check returns a 403.
Please note:
- The CE port mentioned above.
- This an iteration towards the full feature, so the tab is disabled by default. See this note (https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/8685/diffs#note_122388988) to run this MR locally.
Screenshots
What are the relevant issue numbers?
Part of #5426 (closed)
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated -
Tests added for this feature/bug -
Conforms to the code review guidelines -
Conforms to the merge request performance guidelines -
Conforms to the style guides -
Conforms to the database guides -
Link to e2e tests MR added if this MR has Requires e2e tests label. See the Test Planning Process. -
EE specific content should be in the top level /ee
folder -
For a paid feature, have we considered GitLab.com plans, how it works for groups, and is there a design for promoting it to users who aren't on the correct plan? -
Security reports checked/validated by reviewer
Edited by Paul Slaughter