diff --git a/.github/fabricbot.json b/.github/fabricbot.json deleted file mode 100644 index e624e953b..000000000 --- a/.github/fabricbot.json +++ /dev/null @@ -1,681 +0,0 @@ -{ - "version": "1.0", - "tasks": [ - { - "taskType": "trigger", - "capabilityId": "IssueResponder", - "subCapability": "IssuesOnlyResponder", - "version": "1.0", - "config": { - "taskName": "Add needs triage label to new issues", - "conditions": { - "operator": "and", - "operands": [ - { - "name": "isAction", - "parameters": { - "action": "opened" - } - }, - { - "operator": "not", - "operands": [ - { - "name": "isAssignedToSomeone", - "parameters": {} - } - ] - }, - { - "operator": "and", - "operands": [ - { - "operator": "not", - "operands": [ - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Host [Excel, Word, PowerPoint, etc.]: Word" - } - } - ] - }, - { - "operator": "not", - "operands": [ - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Word.run" - } - } - ] - }, - { - "operator": "not", - "operands": [ - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Host [Excel, Word, PowerPoint, etc.]: Excel" - } - } - ] - }, - { - "operator": "not", - "operands": [ - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Excel.run" - } - } - ] - } - ] - } - ] - }, - "actions": [ - { - "name": "addLabel", - "parameters": { - "label": "Needs: triage :mag:" - } - } - ], - "eventType": "issue", - "eventNames": [ - "issues", - "project_card" - ] - } - }, - { - "taskType": "scheduled", - "capabilityId": "ScheduledSearch", - "subCapability": "ScheduledSearch", - "version": "1.1", - "config": { - "taskName": "Add no recent activity label to issues", - "frequency": [ - { - "weekDay": 0, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 1, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 2, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 3, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 4, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 5, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 6, - "hours": [ - 1, - 4, - 7, - 10, - 13, - 16, - 19, - 22 - ], - "timezoneOffset": -8 - } - ], - "searchTerms": [ - { - "name": "isIssue", - "parameters": {} - }, - { - "name": "isOpen", - "parameters": {} - }, - { - "name": "hasLabel", - "parameters": { - "label": "Needs: author feedback" - } - }, - { - "name": "noActivitySince", - "parameters": { - "days": 4 - } - }, - { - "name": "noLabel", - "parameters": { - "label": "Status: no recent activity" - } - } - ], - "actions": [ - { - "name": "addLabel", - "parameters": { - "label": "Status: no recent activity" - } - }, - { - "name": "addReply", - "parameters": { - "comment": "This issue has been automatically marked as stale because it is marked as needing author feedback but has not had any activity for **4 days**. It will be closed if no further activity occurs **within 3 days of this comment**. Thank you for your interest in Office Add-ins!" - } - } - ] - } - }, - { - "taskType": "scheduled", - "capabilityId": "ScheduledSearch", - "subCapability": "ScheduledSearch", - "version": "1.1", - "config": { - "taskName": "Close stale issues", - "frequency": [ - { - "weekDay": 0, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 1, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 2, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 3, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 4, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 5, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - }, - { - "weekDay": 6, - "hours": [ - 0, - 3, - 6, - 9, - 12, - 15, - 18, - 21 - ], - "timezoneOffset": -8 - } - ], - "searchTerms": [ - { - "name": "isIssue", - "parameters": {} - }, - { - "name": "isOpen", - "parameters": {} - }, - { - "name": "hasLabel", - "parameters": { - "label": "Needs: author feedback" - } - }, - { - "name": "hasLabel", - "parameters": { - "label": "Status: no recent activity" - } - }, - { - "name": "noActivitySince", - "parameters": { - "days": 3 - } - } - ], - "actions": [ - { - "name": "addReply", - "parameters": { - "comment": "This issue has been closed due to inactivity. Please comment if you still need assistance and we'll re-open the issue." - } - }, - { - "name": "closeIssue", - "parameters": {} - } - ] - } - }, - { - "taskType": "trigger", - "capabilityId": "IssueResponder", - "subCapability": "IssuesOnlyResponder", - "version": "1.0", - "config": { - "taskName": "Remove no recent activity label when there is activity in an issue", - "conditions": { - "operator": "and", - "operands": [ - { - "operator": "not", - "operands": [ - { - "name": "isAction", - "parameters": { - "action": "closed" - } - } - ] - }, - { - "name": "hasLabel", - "parameters": { - "label": "Status: no recent activity" - } - } - ] - }, - "actions": [ - { - "name": "removeLabel", - "parameters": { - "label": "Status: no recent activity" - } - } - ], - "eventType": "issue", - "eventNames": [ - "issues", - "project_card" - ] - } - }, - { - "taskType": "trigger", - "capabilityId": "IssueResponder", - "subCapability": "IssueCommentResponder", - "version": "1.0", - "config": { - "taskName": "Remove no recent activity label when an issue is commented on", - "conditions": { - "operator": "and", - "operands": [ - { - "name": "hasLabel", - "parameters": { - "label": "Status: no recent activity" - } - } - ] - }, - "actions": [ - { - "name": "removeLabel", - "parameters": { - "label": "Status: no recent activity" - } - } - ], - "eventType": "issue", - "eventNames": [ - "issue_comment" - ] - } - }, - { - "taskType": "trigger", - "capabilityId": "IssueResponder", - "subCapability": "IssueCommentResponder", - "version": "1.0", - "config": { - "taskName": "Replace needs author feedback label with needs attention label when the author comments on an issue", - "conditions": { - "operator": "and", - "operands": [ - { - "name": "isAction", - "parameters": { - "action": "created" - } - }, - { - "name": "isActivitySender", - "parameters": { - "user": { - "type": "author" - } - } - }, - { - "name": "hasLabel", - "parameters": { - "label": "Needs: author feedback" - } - } - ] - }, - "actions": [ - { - "name": "addLabel", - "parameters": { - "label": "Needs: attention :wave:" - } - }, - { - "name": "removeLabel", - "parameters": { - "label": "Needs: author feedback" - } - } - ], - "eventType": "issue", - "eventNames": [ - "issue_comment" - ] - } - }, - { - "taskType": "trigger", - "capabilityId": "IssueResponder", - "subCapability": "IssuesOnlyResponder", - "version": "1.0", - "config": { - "conditions": { - "operator": "and", - "operands": [ - { - "name": "isAction", - "parameters": { - "action": "opened" - } - }, - { - "operator": "not", - "operands": [ - { - "name": "isAssignedToSomeone", - "parameters": {} - } - ] - }, - { - "operator": "or", - "operands": [ - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Host [Excel, Word, PowerPoint, etc.]: Word" - } - }, - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Word.run" - } - } - ] - } - ] - }, - "eventType": "issue", - "eventNames": [ - "issues", - "project_card" - ], - "actions": [ - { - "name": "addLabel", - "parameters": { - "label": "Area: Word" - } - }, - { - "name": "assignToUser", - "parameters": { - "user": "ZYUN-MSFT" - } - }, - { - "name": "addLabel", - "parameters": { - "label": "Needs: attention :wave:" - } - }, - { - "name": "addReply", - "parameters": { - "comment": "Thank you for letting us know about this issue. We will take a look shortly. Thanks." - } - } - ], - "taskName": "Add label for Word API related issues and assign it to OCE driver." - }, - "disabled": false - }, - { - "taskType": "trigger", - "capabilityId": "IssueResponder", - "subCapability": "IssuesOnlyResponder", - "version": "1.0", - "config": { - "conditions": { - "operator": "and", - "operands": [ - { - "name": "isAction", - "parameters": { - "action": "opened" - } - }, - { - "operator": "not", - "operands": [ - { - "name": "isAssignedToSomeone", - "parameters": {} - } - ] - }, - { - "operator": "or", - "operands": [ - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Host [Excel, Word, PowerPoint, etc.]: Excel" - } - }, - { - "name": "bodyContains", - "parameters": { - "bodyPattern": "Excel.run" - } - } - ] - } - ] - }, - "eventType": "issue", - "eventNames": [ - "issues", - "project_card" - ], - "taskName": "Add label for Excel API related issues and assign it to OCE driver.", - "actions": [ - { - "name": "addLabel", - "parameters": { - "label": "Area: Excel" - } - }, - { - "name": "assignToUser", - "parameters": { - "groupId": "", - "user": "ZYUN-MSFT" - } - }, - { - "name": "addLabel", - "parameters": { - "label": "Needs: attention :wave:" - } - }, - { - "name": "addReply", - "parameters": { - "comment": "Thank you for letting us know about this issue. We will take a look shortly. Thanks." - } - } - ] - } - } - ], - "userGroups": [] -} diff --git a/.github/policies/resourceManagement.yml b/.github/policies/resourceManagement.yml new file mode 100644 index 000000000..452fb60c7 --- /dev/null +++ b/.github/policies/resourceManagement.yml @@ -0,0 +1,153 @@ +id: +name: GitOps.PullRequestIssueManagement +description: GitOps.PullRequestIssueManagement primitive +owner: +resource: repository +disabled: false +where: +configuration: + resourceManagementConfiguration: + scheduledSearches: + - description: + frequencies: + - hourly: + hour: 3 + filters: + - isIssue + - isOpen + - hasLabel: + label: 'Needs: author feedback' + - noActivitySince: + days: 4 + - isNotLabeledWith: + label: 'Status: no recent activity' + actions: + - addLabel: + label: 'Status: no recent activity' + - addReply: + reply: This issue has been automatically marked as stale because it is marked as needing author feedback but has not had any activity for **4 days**. It will be closed if no further activity occurs **within 3 days of this comment**. Thank you for your interest in Office Add-ins! + - description: + frequencies: + - hourly: + hour: 3 + filters: + - isIssue + - isOpen + - hasLabel: + label: 'Needs: author feedback' + - hasLabel: + label: 'Status: no recent activity' + - noActivitySince: + days: 3 + actions: + - addReply: + reply: This issue has been closed due to inactivity. Please comment if you still need assistance and we'll re-open the issue. + - closeIssue + eventResponderTasks: + - if: + - payloadType: Issues + - isAction: + action: Opened + - not: isAssignedToSomeone + - and: + - not: + bodyContains: + pattern: 'Host [Excel, Word, PowerPoint, etc.]: Word' + isRegex: False + - not: + bodyContains: + pattern: Word.run + isRegex: False + - not: + bodyContains: + pattern: 'Host [Excel, Word, PowerPoint, etc.]: Excel' + isRegex: False + - not: + bodyContains: + pattern: Excel.run + isRegex: False + then: + - addLabel: + label: 'Needs: triage :mag:' + description: + - if: + - payloadType: Issues + - not: + isAction: + action: Closed + - hasLabel: + label: 'Status: no recent activity' + then: + - removeLabel: + label: 'Status: no recent activity' + description: + - if: + - payloadType: Issue_Comment + - hasLabel: + label: 'Status: no recent activity' + then: + - removeLabel: + label: 'Status: no recent activity' + description: + - if: + - payloadType: Issue_Comment + - isAction: + action: Created + - isActivitySender: + issueAuthor: True + - hasLabel: + label: 'Needs: author feedback' + then: + - addLabel: + label: 'Needs: attention :wave:' + - removeLabel: + label: 'Needs: author feedback' + description: + - if: + - payloadType: Issues + - isAction: + action: Opened + - not: isAssignedToSomeone + - or: + - bodyContains: + pattern: 'Host [Excel, Word, PowerPoint, etc.]: Word' + isRegex: False + - bodyContains: + pattern: Word.run + isRegex: False + then: + - addLabel: + label: 'Area: Word' + - assignTo: + users: + - ZYUN-MSFT + - addLabel: + label: 'Needs: attention :wave:' + - addReply: + reply: Thank you for letting us know about this issue. We will take a look shortly. Thanks. + description: + - if: + - payloadType: Issues + - isAction: + action: Opened + - not: isAssignedToSomeone + - or: + - bodyContains: + pattern: 'Host [Excel, Word, PowerPoint, etc.]: Excel' + isRegex: False + - bodyContains: + pattern: Excel.run + isRegex: False + then: + - addLabel: + label: 'Area: Excel' + - assignTo: + users: + - ZYUN-MSFT + - addLabel: + label: 'Needs: attention :wave:' + - addReply: + reply: Thank you for letting us know about this issue. We will take a look shortly. Thanks. + description: +onFailure: +onSuccess: