diff options
author | Thong Kuah <tkuah@gitlab.com> | 2019-01-08 07:32:17 +0300 |
---|---|---|
committer | Thong Kuah <tkuah@gitlab.com> | 2019-01-09 01:38:47 +0300 |
commit | e9cb44e5e54e7d0522dff5eaf38b1cf8586eb5d9 (patch) | |
tree | 188222457ff99d12d465ebd1a002a7bcf410c8c8 | |
parent | 1d2ef4c6557846eb531f4d0e80cf43dea99b037b (diff) |
Fix QA spec flaky for application secret variables
The QA spec for application secrets fails when run after the auto devops
spec because no pipeline for it is triggered :(
When the QA spec for application has passed, it has always been the
first spec to run hence it is able to set the K8S_SECRET_ variable
before the pipeline triggered by the initial commit has run.
The correct fix would be manually trigger a pipeline after we have added
the K8S_SECRET_* variable. However, because Helm does not update the
Deployment, we need to push a code change to make Helm update the
Deployment and the pods.
-rw-r--r-- | qa/qa/specs/features/browser_ui/7_configure/auto_devops/create_project_with_auto_devops_spec.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/qa/qa/specs/features/browser_ui/7_configure/auto_devops/create_project_with_auto_devops_spec.rb b/qa/qa/specs/features/browser_ui/7_configure/auto_devops/create_project_with_auto_devops_spec.rb index 5ee8df03d50..5147b17d7ab 100644 --- a/qa/qa/specs/features/browser_ui/7_configure/auto_devops/create_project_with_auto_devops_spec.rb +++ b/qa/qa/specs/features/browser_ui/7_configure/auto_devops/create_project_with_auto_devops_spec.rb @@ -98,6 +98,17 @@ module QA resource.value = 'You can see this application secret' end + # Our current Auto DevOps implementation won't update the production + # app if we only update a CI variable with no code change. + # + # Workaround: push new code and use the resultant pipeline. + Resource::Repository::ProjectPush.fabricate! do |push| + push.project = @project + push.commit_message = 'Force a Deployment change by pushing new code' + push.file_name = 'new_file.txt' + push.file_content = 'new file contents' + end + @project.visit! Page::Project::Menu.act { click_ci_cd_pipelines } Page::Project::Pipeline::Index.act { go_to_latest_pipeline } |