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

Maintenance issue template #3484

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all 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
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
## Q{{ quarter }} Quarterly Maintenance: {{ software }}

_Please Check for updated stable versions of the above software and relevant security patches._

### Prior Work

_Please Link to previously completed relevant tickets._

### Dependencies

- List any systems or components that might be affected by this Metabase maintenance.

### Acceptance Criteria

- [ ] Describe the upgrade methodology and any specific steps involved (unless already documented in prior work).
- [ ] Document the upgrade process and any relevant changes.
- [ ] Create issues around any roadblocks encountered.
- [ ] Conduct thorough testing to verify functionality after the upgrade and patching.

### Rollback Plan

- Briefly outline the steps to revert to the previous version in case of issues.

### Notes

_Please enter any additional information that will facilitate the completion of this maintenance task. For example: Are there any constraints not mentioned above? Are there any alternatives you have considered?_
99 changes: 99 additions & 0 deletions .github/workflows/quarterly-maintenance.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
name: Quarterly Maintenance

on:
schedule:
- cron: '0 0 1 1,4,7,10 *' # Run at midnight on the 1st of January, April, July, and October

jobs:
create_issues:
runs-on: ubuntu-latest
steps:
- name: Set quarter variable
run: |
const now = new Date();
const quarter = Math.floor((now.getMonth() / 3) + 1);
echo "quarter=${quarter}" >> $GITHUB_ENV

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

- name: Create Metabase issue
uses: peter-evans/create-issue-from-file@v4
with:
token: ${{ secrets.GH_PROJECTS_TOKEN }}
title: Quarterly Maintenance - Metabase Q${{ quarter }}
content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
labels: quarterly, maintenance, metabase
# template-variables: {"software": "Metabase", "quarter": "${{ quarter }}"}

# - name: Create Jupyterhub issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - Jupyterhub Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, jupyterhub
# template-variables: '{"software": "Jupyterhub", "quarter": "'${{ env.quarter }}'"}'

# - name: Create Kubernetes issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - Kubernetes Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, kubernetes
# template-variables: '{"software": "Kubernetes", "quarter": "'${{ env.quarter }}'"}'

# - name: Create Sentry issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - Sentry Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, sentry
# template-variables: '{"software": "Sentry", "quarter": "'${{ env.quarter }}'"}'

# - name: Create Airflow issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - Airflow Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, airflow
# template-variables: '{"software": "Airflow", "quarter": "'${{ env.quarter }}'"}'

# - name: Create Composer issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - Composer Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, composer
# template-variables: '{"software": "Composer", "quarter": "'${{ env.quarter }}'"}'

# - name: Create RT Archiver base image issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - RT Archiver base image Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, rt-archiver
# template-variables: '{"software": "RT Archiver base image", "quarter": "'${{ env.quarter }}'"}'

# - name: Create dependabot PRs issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - Review and Merge dependabot PRs Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, dependabot
# template-variables: '{"software": "dependabot pull requests", "quarter": "'${{ env.quarter }}'"}'

# - name: Create AWS key rotation issue
# uses: peter-evans/create-issue-from-file@v4
# with:
# token: ${{ secrets.GH_PROJECTS_TOKEN }}
# title: Quarterly Maintenance - AWS key rotation Q${{ env.quarter }}
# content-filepath: .github/ISSUE_TEMPLATE/quarterly_infrastructure_maintenance.md
# labels: quarterly, maintenance, aws
# template-variables: '{"software": "AWS key rotation", "quarter": "'${{ env.quarter }}'"}'
Loading