diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-08-19 09:08:42 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-08-19 09:08:42 +0000 |
commit | b76ae638462ab0f673e5915986070518dd3f9ad3 (patch) | |
tree | bdab0533383b52873be0ec0eb4d3c66598ff8b91 /lib/gitlab/ci/pipeline | |
parent | 434373eabe7b4be9593d18a585fb763f1e5f1a6f (diff) | |
download | gitlab-ce-b76ae638462ab0f673e5915986070518dd3f9ad3.tar.gz |
Add latest changes from gitlab-org/gitlab@14-2-stable-eev14.2.0-rc42
Diffstat (limited to 'lib/gitlab/ci/pipeline')
-rw-r--r-- | lib/gitlab/ci/pipeline/chain/command.rb | 9 | ||||
-rw-r--r-- | lib/gitlab/ci/pipeline/chain/config/process.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/ci/pipeline/chain/sequence.rb | 1 | ||||
-rw-r--r-- | lib/gitlab/ci/pipeline/chain/skip.rb | 8 | ||||
-rw-r--r-- | lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/ci/pipeline/metrics.rb | 11 | ||||
-rw-r--r-- | lib/gitlab/ci/pipeline/seed/build.rb | 4 |
7 files changed, 24 insertions, 13 deletions
diff --git a/lib/gitlab/ci/pipeline/chain/command.rb b/lib/gitlab/ci/pipeline/chain/command.rb index 7564d0c3ed5..626eba97817 100644 --- a/lib/gitlab/ci/pipeline/chain/command.rb +++ b/lib/gitlab/ci/pipeline/chain/command.rb @@ -97,15 +97,16 @@ module Gitlab .observe({ source: pipeline.source.to_s }, pipeline.total_size) end + def observe_jobs_count_in_alive_pipelines + metrics.active_jobs_histogram + .observe({ plan: project.actual_plan_name }, project.all_pipelines.jobs_count_in_alive_pipelines) + end + def increment_pipeline_failure_reason_counter(reason) metrics.pipeline_failure_reason_counter .increment(reason: (reason || :unknown_failure).to_s) end - def dangling_build? - %i[ondemand_dast_scan webide].include?(source) - end - private # Verifies that origin_ref is a fully qualified tag reference (refs/tags/<tag-name>) diff --git a/lib/gitlab/ci/pipeline/chain/config/process.rb b/lib/gitlab/ci/pipeline/chain/config/process.rb index 49ec1250a5f..5251dd3d40a 100644 --- a/lib/gitlab/ci/pipeline/chain/config/process.rb +++ b/lib/gitlab/ci/pipeline/chain/config/process.rb @@ -14,7 +14,7 @@ module Gitlab result = ::Gitlab::Ci::YamlProcessor.new( @command.config_content, { project: project, - ref: @pipeline.ref, + source_ref_path: @pipeline.source_ref_path, sha: @pipeline.sha, source: @pipeline.source, user: current_user, diff --git a/lib/gitlab/ci/pipeline/chain/sequence.rb b/lib/gitlab/ci/pipeline/chain/sequence.rb index dc648568129..bbfc6759b35 100644 --- a/lib/gitlab/ci/pipeline/chain/sequence.rb +++ b/lib/gitlab/ci/pipeline/chain/sequence.rb @@ -22,6 +22,7 @@ module Gitlab @command.observe_creation_duration(Time.now - @start) @command.observe_pipeline_size(@pipeline) + @command.observe_jobs_count_in_alive_pipelines @pipeline end diff --git a/lib/gitlab/ci/pipeline/chain/skip.rb b/lib/gitlab/ci/pipeline/chain/skip.rb index e4e4f4f484a..76dfb4cbd87 100644 --- a/lib/gitlab/ci/pipeline/chain/skip.rb +++ b/lib/gitlab/ci/pipeline/chain/skip.rb @@ -22,16 +22,16 @@ module Gitlab end end - def skipped? - !@command.ignore_skip_ci && (commit_message_skips_ci? || push_option_skips_ci?) - end - def break? skipped? end private + def skipped? + !@command.ignore_skip_ci && (commit_message_skips_ci? || push_option_skips_ci?) + end + def commit_message_skips_ci? return false unless @pipeline.git_commit_message diff --git a/lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb b/lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb index 514241e8ae2..c7106f3ec39 100644 --- a/lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb +++ b/lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb @@ -11,7 +11,7 @@ module Gitlab PATTERN = %r{^\/([^\/]|\\/)+[^\\]\/[ismU]*}.freeze def initialize(regexp) - super(regexp.gsub(/\\\//, '/')) + super(regexp.gsub(%r{\\/}, '/')) unless Gitlab::UntrustedRegexp::RubySyntax.valid?(@value) raise Lexer::SyntaxError, 'Invalid regular expression!' diff --git a/lib/gitlab/ci/pipeline/metrics.rb b/lib/gitlab/ci/pipeline/metrics.rb index 84b88374a7f..10de77afe74 100644 --- a/lib/gitlab/ci/pipeline/metrics.rb +++ b/lib/gitlab/ci/pipeline/metrics.rb @@ -24,7 +24,16 @@ module Gitlab name = :gitlab_ci_pipeline_size_builds comment = 'Pipeline size' labels = { source: nil } - buckets = [0, 1, 5, 10, 20, 50, 100, 200, 500, 1000] + buckets = [0, 1, 5, 10, 20, 50, 100, 200, 500, 1000, 2000, 3000] + + ::Gitlab::Metrics.histogram(name, comment, labels, buckets) + end + + def self.active_jobs_histogram + name = :gitlab_ci_active_jobs + comment = 'Total amount of active jobs' + labels = { plan: nil } + buckets = [0, 200, 500, 1_000, 2_000, 5_000, 10_000] ::Gitlab::Metrics.histogram(name, comment, labels, buckets) end diff --git a/lib/gitlab/ci/pipeline/seed/build.rb b/lib/gitlab/ci/pipeline/seed/build.rb index 54d92745992..c393fed26de 100644 --- a/lib/gitlab/ci/pipeline/seed/build.rb +++ b/lib/gitlab/ci/pipeline/seed/build.rb @@ -39,7 +39,7 @@ module Gitlab @cache = Gitlab::Ci::Build::Cache .new(attributes.delete(:cache), @pipeline) - recalculate_yaml_variables! + calculate_yaml_variables! end def name @@ -232,7 +232,7 @@ module Gitlab { options: { allow_failure_criteria: nil } } end - def recalculate_yaml_variables! + def calculate_yaml_variables! @seed_attributes[:yaml_variables] = Gitlab::Ci::Variables::Helpers.inherit_yaml_variables( from: @context.root_variables, to: @job_variables, inheritance: @root_variables_inheritance ) |