summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-11-30 11:59:16 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2022-11-30 11:59:16 +0000
commit8249158901ae0d88d3cf0f23084559c2ce8907a8 (patch)
tree9b9142fc85fb5a11fe988ae54e86521ea5fbd679
parente6572d41b847c839ce49bc022a8cd1b99216798b (diff)
downloadgitlab-ce-8249158901ae0d88d3cf0f23084559c2ce8907a8.tar.gz
Add latest changes from gitlab-org/security/gitlab@15-6-stable-ee
-rw-r--r--lib/gitlab/ci/pipeline/chain/populate_metadata.rb4
-rw-r--r--spec/lib/gitlab/ci/pipeline/chain/populate_metadata_spec.rb14
2 files changed, 16 insertions, 2 deletions
diff --git a/lib/gitlab/ci/pipeline/chain/populate_metadata.rb b/lib/gitlab/ci/pipeline/chain/populate_metadata.rb
index 35b907b669c..89befb2a65b 100644
--- a/lib/gitlab/ci/pipeline/chain/populate_metadata.rb
+++ b/lib/gitlab/ci/pipeline/chain/populate_metadata.rb
@@ -28,7 +28,9 @@ module Gitlab
name = @command.yaml_processor_result.workflow_name
name = ExpandVariables.expand(name, -> { global_context.variables.sort_and_expand_all })
- pipeline.build_pipeline_metadata(project: pipeline.project, name: name)
+ return if name.blank?
+
+ pipeline.build_pipeline_metadata(project: pipeline.project, name: name.strip)
end
def global_context
diff --git a/spec/lib/gitlab/ci/pipeline/chain/populate_metadata_spec.rb b/spec/lib/gitlab/ci/pipeline/chain/populate_metadata_spec.rb
index ce1ee2fcda0..35e1c48a942 100644
--- a/spec/lib/gitlab/ci/pipeline/chain/populate_metadata_spec.rb
+++ b/spec/lib/gitlab/ci/pipeline/chain/populate_metadata_spec.rb
@@ -89,6 +89,18 @@ RSpec.describe Gitlab::Ci::Pipeline::Chain::PopulateMetadata do
expect(pipeline.pipeline_metadata).to be_nil
end
+
+ context 'with empty name after variable substitution' do
+ let(:config) do
+ { workflow: { name: '$VAR1' }, rspec: { script: 'rspec' } }
+ end
+
+ it 'does not save empty name' do
+ run_chain
+
+ expect(pipeline.pipeline_metadata).to be_nil
+ end
+ end
end
context 'with variables' do
@@ -106,7 +118,7 @@ RSpec.describe Gitlab::Ci::Pipeline::Chain::PopulateMetadata do
it 'substitutes variables' do
run_chain
- expect(pipeline.pipeline_metadata.name).to eq('Pipeline value value1 value2 ')
+ expect(pipeline.pipeline_metadata.name).to eq('Pipeline value value1 value2')
end
end