diff options
Diffstat (limited to 'danger/ci_config/Dangerfile')
-rw-r--r-- | danger/ci_config/Dangerfile | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/danger/ci_config/Dangerfile b/danger/ci_config/Dangerfile new file mode 100644 index 00000000000..5022ccc1539 --- /dev/null +++ b/danger/ci_config/Dangerfile @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +all_changed_files = helper.all_changed_files + +def get_ci_config_files(files) + files.select do |file| + file.include?('gitlab/ci/config/entry') + end +end + +schema_path = 'app/assets/javascripts/editor/schema/ci.json' +has_schema_update = all_changed_files.include?(schema_path) +return if has_schema_update + +ci_config_files = get_ci_config_files(all_changed_files) +return if ci_config_files.empty? + +file_list = "- #{ci_config_files.map { |path| "`#{path}`" }.join("\n- ")}" + +warn "This merge request changed CI config files but did not update the schema. Please consider updating [the schema](#{schema_path}) to reflect these changes:\n#{file_list}" |