Browse Source

Fix

test/jme/compound-poc
Michael Kaye 1 year ago
parent
commit
15d8980214
  1. 51
      tools/danger/dangerfile.js

51
tools/danger/dangerfile.js

@ -88,27 +88,8 @@ const allowList = [ @@ -88,27 +88,8 @@ const allowList = [
"yostyle",
]
// We ignore signoff requirements for employees of Element
// as copyright assignment is covered by our employee contracts.
var memberOfElement
try {
github.api.rest.orgs.checkPublicMembership({
org: "vector-im",
username: user
})
memberOfElement = true
} catch (err) {
// Raises an error if 404 is returned = not member
memberOfElement = false
}
const requiresSignOff = !allowList.includes(user) || !memberOfElement
if (requiresSignOff) {
function signoff_needed(reason) {
message("Sign-off required, " + reason)
const hasPRBodySignOff = pr.body.includes(signOff)
const hasCommitSignOff = danger.git.commits.every(commit => commit.message.includes(signOff))
if (!hasPRBodySignOff && !hasCommitSignOff) {
@ -116,6 +97,34 @@ if (requiresSignOff) { @@ -116,6 +97,34 @@ if (requiresSignOff) {
}
}
function signoff_unneeded(reason) {
message("Sign-off not required, " + reason)
}
// Somewhat awkward phrasing, dangerfile is not in an async context.
if (allowList.includes(user)) {
signoff_unneeded("allow-list")
} else {
github.api.rest.orgs.checkMembershipForUser({
org: "vector-im",
username: user,
}).then((result) => {
if (result.status == 204) {
signoff_unneeded("org-member")
}
else {
signoff_needed("not-org-member")
}
}).catch((error) => {
if (error.response.status == 404) {
signoff_needed("not-org-member");
} else {
console.log(error); signoff_needed("error")
}
})
}
// Check for screenshots on view changes
const hasChangedViews = editedFiles.filter(file => file.includes("/layout")).length > 0
if (hasChangedViews) {

Loading…
Cancel
Save