zj nice catches
This commit is contained in:
parent
a7c4673eb7
commit
51730b3a15
5 changed files with 23 additions and 10 deletions
|
@ -196,7 +196,7 @@ module Ci
|
||||||
variables += user_variables
|
variables += user_variables
|
||||||
variables += project.secret_variables_for(ref).map(&:to_runner_variable)
|
variables += project.secret_variables_for(ref).map(&:to_runner_variable)
|
||||||
variables += trigger_request&.user_variables || []
|
variables += trigger_request&.user_variables || []
|
||||||
variables += pipeline.pipeline_schedule&.variables&.map(&:to_runner_variable) || []
|
variables += pipeline.pipeline_schedule&.job_variables
|
||||||
variables
|
variables
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -59,5 +59,9 @@ module Ci
|
||||||
Gitlab::Ci::CronParser.new(worker_cron, worker_time_zone)
|
Gitlab::Ci::CronParser.new(worker_cron, worker_time_zone)
|
||||||
.next_time_from(next_run_at)
|
.next_time_from(next_run_at)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def job_variables
|
||||||
|
variables&.map(&:to_runner_variable) || []
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1373,20 +1373,18 @@ describe Ci::Build, :models do
|
||||||
it { is_expected.to include(predefined_trigger_variable) }
|
it { is_expected.to include(predefined_trigger_variable) }
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'when build was triggered by scheduled pipeline' do
|
context 'when a job was triggered by a pipeline schedule' do
|
||||||
let(:secret_variable) do
|
|
||||||
{ key: 'SECRET_KEY', value: 'secret_value', public: false }
|
|
||||||
end
|
|
||||||
|
|
||||||
let(:pipeline_schedule) { create(:ci_pipeline_schedule, project: project) }
|
let(:pipeline_schedule) { create(:ci_pipeline_schedule, project: project) }
|
||||||
|
let!(:pipeline_schedule_variable) do
|
||||||
|
create(:ci_pipeline_schedule_variable, key: 'SCHEDULE_VARIABLE_KEY',
|
||||||
|
pipeline_schedule: pipeline_schedule)
|
||||||
|
end
|
||||||
|
|
||||||
before do
|
before do
|
||||||
pipeline_schedule.pipelines << pipeline
|
pipeline_schedule.pipelines << pipeline
|
||||||
create(:ci_pipeline_schedule_variable,
|
|
||||||
secret_variable.slice(:key, :value).merge(pipeline_schedule: pipeline_schedule))
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it { is_expected.to include(secret_variable) }
|
it { is_expected.to include(pipeline_schedule_variable.to_runner_variable) }
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'when yaml_variables are undefined' do
|
context 'when yaml_variables are undefined' do
|
||||||
|
|
|
@ -118,4 +118,15 @@ describe Ci::PipelineSchedule, models: true do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe '#job_variables' do
|
||||||
|
let!(:pipeline_schedule) { create(:ci_pipeline_schedule, :nightly) }
|
||||||
|
let!(:pipeline_schedule_variables) do
|
||||||
|
create_list(:ci_pipeline_schedule_variable, 2, pipeline_schedule: pipeline_schedule)
|
||||||
|
end
|
||||||
|
|
||||||
|
subject { pipeline_schedule.job_variables }
|
||||||
|
|
||||||
|
it { is_expected.to eq(pipeline_schedule_variables.map(&:to_runner_variable)) }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -3,6 +3,6 @@ require 'spec_helper'
|
||||||
describe Ci::PipelineScheduleVariable, models: true do
|
describe Ci::PipelineScheduleVariable, models: true do
|
||||||
subject { build(:ci_pipeline_schedule_variable) }
|
subject { build(:ci_pipeline_schedule_variable) }
|
||||||
|
|
||||||
it { is_expected.to be_kind_of(HasVariable) }
|
it { is_expected.to include_module(HasVariable) }
|
||||||
it { is_expected.to validate_uniqueness_of(:key).scoped_to(:pipeline_schedule_id) }
|
it { is_expected.to validate_uniqueness_of(:key).scoped_to(:pipeline_schedule_id) }
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue