summaryrefslogtreecommitdiff
path: root/spec/models/ci
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2019-03-02 15:29:04 +0100
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2019-03-02 21:03:41 +0100
commit552a32c01545c82df3790dffa5545a451fd63529 (patch)
tree116f1d909d05fb9598feb11532c8a0efce18425c /spec/models/ci
parent981c2488633072ae013ed13ba6663e8f87fd357b (diff)
downloadgitlab-ce-552a32c01545c82df3790dffa5545a451fd63529.tar.gz
Extract scoped CI/CD variables to a separate concern
This commits extract code responsible for calculating essential CI/CD variables to a separate concern. This makes it possible to share this code between a `Ci::Build` and a `Ci::Bridge`. We might want to refactor this to use composition instead of inheritance.
Diffstat (limited to 'spec/models/ci')
-rw-r--r--spec/models/ci/bridge_spec.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/spec/models/ci/bridge_spec.rb b/spec/models/ci/bridge_spec.rb
index 741cdfef1a5..c5908eed00a 100644
--- a/spec/models/ci/bridge_spec.rb
+++ b/spec/models/ci/bridge_spec.rb
@@ -22,4 +22,25 @@ describe Ci::Bridge do
expect(status).to be_a Gitlab::Ci::Status::Success
end
end
+
+ describe '#scoped_variables_hash' do
+ it 'returns a hash representing variables' do
+ expect(bridge.scoped_variables_hash.keys).to eq %w[
+ CI GITLAB_CI GITLAB_FEATURES CI_SERVER_NAME
+ CI_SERVER_VERSION CI_SERVER_VERSION_MAJOR
+ CI_SERVER_VERSION_MINOR CI_SERVER_VERSION_PATCH
+ CI_SERVER_REVISION CI_JOB_NAME CI_JOB_STAGE
+ CI_COMMIT_SHA CI_COMMIT_SHORT_SHA CI_COMMIT_BEFORE_SHA
+ CI_COMMIT_REF_NAME CI_COMMIT_REF_SLUG CI_NODE_TOTAL
+ CI_BUILD_REF CI_BUILD_BEFORE_SHA CI_BUILD_REF_NAME
+ CI_BUILD_REF_SLUG CI_BUILD_NAME CI_BUILD_STAGE
+ CI_PROJECT_ID CI_PROJECT_NAME CI_PROJECT_PATH
+ CI_PROJECT_PATH_SLUG CI_PROJECT_NAMESPACE CI_PROJECT_URL
+ CI_PROJECT_VISIBILITY CI_PAGES_DOMAIN CI_PAGES_URL
+ CI_REGISTRY CI_REGISTRY_IMAGE CI_API_V4_URL
+ CI_PIPELINE_IID CI_CONFIG_PATH CI_PIPELINE_SOURCE
+ CI_COMMIT_MESSAGE CI_COMMIT_TITLE CI_COMMIT_DESCRIPTION
+ ]
+ end
+ end
end