From 85dc423f7090da0a52c73eb66faf22ddb20efff9 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Sat, 19 Sep 2020 01:45:44 +0000 Subject: Add latest changes from gitlab-org/gitlab@13-4-stable-ee --- lib/gitlab/template/finders/global_template_finder.rb | 6 +++--- lib/gitlab/template/gitlab_ci_yml_template.rb | 18 +++++++++++++----- 2 files changed, 16 insertions(+), 8 deletions(-) (limited to 'lib/gitlab/template') diff --git a/lib/gitlab/template/finders/global_template_finder.rb b/lib/gitlab/template/finders/global_template_finder.rb index 3669d652fd3..9b39d386674 100644 --- a/lib/gitlab/template/finders/global_template_finder.rb +++ b/lib/gitlab/template/finders/global_template_finder.rb @@ -5,10 +5,10 @@ module Gitlab module Template module Finders class GlobalTemplateFinder < BaseTemplateFinder - def initialize(base_dir, extension, categories = {}, exclusions: []) + def initialize(base_dir, extension, categories = {}, excluded_patterns: []) @categories = categories @extension = extension - @exclusions = exclusions + @excluded_patterns = excluded_patterns super(base_dir) end @@ -43,7 +43,7 @@ module Gitlab private def excluded?(file_name) - @exclusions.include?(file_name) + @excluded_patterns.any? { |pattern| pattern.match?(file_name) } end def select_directory(file_name) diff --git a/lib/gitlab/template/gitlab_ci_yml_template.rb b/lib/gitlab/template/gitlab_ci_yml_template.rb index 26a9dc9fd38..bb1e9db55fa 100644 --- a/lib/gitlab/template/gitlab_ci_yml_template.rb +++ b/lib/gitlab/template/gitlab_ci_yml_template.rb @@ -3,12 +3,16 @@ module Gitlab module Template class GitlabCiYmlTemplate < BaseTemplate + BASE_EXCLUDED_PATTERNS = [%r{\.latest$}].freeze + def content explanation = "# This file is a template, and might need editing before it works on your project." [explanation, super].join("\n") end class << self + include Gitlab::Utils::StrongMemoize + def extension '.gitlab-ci.yml' end @@ -22,10 +26,14 @@ module Gitlab } end - def disabled_templates - %w[ - Verify/Browser-Performance - ] + def excluded_patterns + strong_memoize(:excluded_patterns) do + BASE_EXCLUDED_PATTERNS + additional_excluded_patterns + end + end + + def additional_excluded_patterns + [%r{Verify/Browser-Performance}] end def base_dir @@ -34,7 +42,7 @@ module Gitlab def finder(project = nil) Gitlab::Template::Finders::GlobalTemplateFinder.new( - self.base_dir, self.extension, self.categories, exclusions: self.disabled_templates + self.base_dir, self.extension, self.categories, excluded_patterns: self.excluded_patterns ) end end -- cgit v1.2.1