Ver Fonte

Merge branch 'ci/danger_branch_name' into 'master'

ci(danger): Add rules for branch namimg

See merge request espressif/esp-idf!26065
Anton Maklakov há 2 anos atrás
pai
commit
db401d38ab
2 ficheiros alterados com 26 adições e 0 exclusões
  1. 3 0
      .gitlab/dangerjs/dangerfile.js
  2. 23 0
      .gitlab/dangerjs/mrSourceBranchName.js

+ 3 - 0
.gitlab/dangerjs/dangerfile.js

@@ -25,6 +25,9 @@ async function runChecks() {
     // Checks for MR area labels
     await require("./mrAreaLabels.js")();
 
+    // Checks for Source branch name
+    require("./mrSourceBranchName.js")();
+
     // Add success log if no issues
     if (
         results.fails.length === 0 &&

+ 23 - 0
.gitlab/dangerjs/mrSourceBranchName.js

@@ -0,0 +1,23 @@
+/**
+ * Throw Danger WARN if branch name contains more than one slash or uppercase letters
+ *
+ * @dangerjs INFO
+ */
+module.exports = function () {
+    const sourceBranch = danger.gitlab.mr.source_branch;
+
+    // Check if the source branch name contains more than one slash
+    const slashCount = (sourceBranch.match(/\//g) || []).length;
+    if (slashCount > 1) {
+        return message(
+            `The source branch name \`${sourceBranch}\` contains more than one slash. This can cause troubles with git sync. Please rename the branch.`
+        );
+    }
+
+    // Check if the source branch name contains any uppercase letters
+    if (sourceBranch !== sourceBranch.toLowerCase()) {
+        return message(
+            `The source branch name \`${sourceBranch}\` contains uppercase letters. This can cause troubles on case-insensitive file systems (macOS). Please use only lowercase letters.`,
+        );
+    }
+};