Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Actions: add Repo gardening action #6244

Merged
merged 5 commits into from
Aug 19, 2022
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
133 changes: 133 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
name: Bug Report
description: Helps us improve our product!
labels: "Needs triage, [Type] Bug"
title: "[Bug]: "
body:
- type: markdown
attributes:
value: |
### Thanks for contributing!

Please write a clear title, then fill in as much details as possible.

__Avoid using image hosting services such as Cloudup, Droplr, Imgur, etc., to link to media.__
Instead, attach screenshot(s) or recording(s) directly in any of the text areas below: click, then drag and drop.
- type: textarea
id: summary
attributes:
label: Quick summary
- type: textarea
id: steps
attributes:
label: Steps to reproduce
placeholder: |
1. Start at `site-domain.com/blog`.
2. Click on any blog post.
3. Click on the 'Like' button.
4. ...

Attach any media by drag and dropping or selecting upload.
validations:
required: true
- type: textarea
id: expected
attributes:
label: What you expected to happen
placeholder: |
e.g. The post should be liked.
validations:
required: true
- type: textarea
id: actual
attributes:
label: What actually happened
placeholder: |
e.g. Clicking the button does nothing visibly.
validations:
required: true
- type: dropdown
id: browser
attributes:
label: Browser
description: (You may select more than one)
options:
- Google Chrome/Chromium
- Mozilla Firefox
- Microsoft Edge
- Apple Safari
- iOS Safari
- Android Chrome
multiple: true
- type: input
id: issue_context
attributes:
label: Context
placeholder: |
e.g. Customer report, details of your exploratory testing, etc.
- type: markdown
attributes:
value: |
---
## Additional context

The following section is optional. If you're an Automattician, you should be able to fill it in. If not, please scroll to the bottom and submit the issue.
- type: dropdown
id: site-type
attributes:
label: Platform (Simple, Atomic, or both?)
description: (You may select more than one)
options:
- Simple
- Atomic
- Self-hosted
multiple: true
- type: textarea
id: other_notes
attributes:
label: Other notes
placeholder: |
e.g. Logs, CLI or console errors, notes, observations, etc.
- type: markdown
attributes:
value: |
---
## Issue severity

Please provide details around how often the issue is reproducible & how many users are affected.
- type: dropdown
id: reproducibility
attributes:
label: Reproducibility
options:
- Consistent
- Intermittent
- Once
validations:
required: true
- type: dropdown
id: users-affected
attributes:
label: Severity
description: How many users are impacted? A guess is fine.
options:
- One
- Some (< 50%)
- Most (> 50%)
- All
- type: dropdown
id: workarounds
attributes:
label: Available workarounds?
options:
- No and the platform is unusable
- No but the platform is still usable
- Yes, difficult to implement
- Yes, easy to implement
- There is no user impact
- type: textarea
id: workarounds-detail
attributes:
label: Workaround details
description: If you are aware of a workaround, please describe it below.
placeholder: |
e.g. There is an alternative way to access this setting in the sidebar, but it's not readily apparent.
45 changes: 45 additions & 0 deletions .github/workflows/gardening.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Repo gardening

on:
pull_request_target: # When a PR is opened, edited, updated, closed, or a label is added.
types: [opened, reopened, synchronize, edited, closed]
issues: # For auto-triage of issues.
types: [opened, reopened, edited, closed]
issue_comment: # To gather support references in issue comments.
types: [created]
concurrency:
# For pull_request_target, cancel any concurrent jobs with the same type (e.g. "opened", "labeled") and branch.
# Don't cancel any for other events, accomplished by grouping on the unique run_id.
group: gardening-${{ github.event_name }}-${{ github.event.action }}-${{ github.event_name == 'pull_request_target' && github.event.pull_request.head.ref || github.run_id }}
cancel-in-progress: true

jobs:
repo-gardening:
name: 'Perform automated triage tasks on PRs and issues'
runs-on: ubuntu-latest
if: github.event_name == 'pull_request_target' || github.event.pull_request.head.repo.full_name == github.event.pull_request.base.repo.full_name
timeout-minutes: 10

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16

- name: Wait for prior instances of the workflow to finish
uses: softprops/turnstyle@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: 'Run gardening action'
uses: automattic/action-repo-gardening@trunk
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
slack_token: ${{ secrets.SLACK_TOKEN }}
jeherve marked this conversation as resolved.
Show resolved Hide resolved
slack_team_channel: ${{ secrets.SLACK_TEAM_CHANNEL }}
slack_he_triage_channel: ${{ secrets.SLACK_HE_TRIAGE_CHANNEL }}
slack_quality_channel: ${{ secrets.SLACK_QUALITY_CHANNEL }}
tasks: 'assignIssues,cleanLabels,flagOss,triageNewIssues,gatherSupportReferences,replyToCustomersReminder'