This is a GitHub Action for Instant Issues.
This action aggregates all open issues into a single JSON file and force pushes
it to the issues branch, so that the Instant Issues frontend
can download it from raw.githubusercontent.com.
Create .github/workflows/aggregate-issues.yml with the following content:
name: Aggregate issues for Instant Issues
on:
issues:
types: [opened, closed, reopened, edited, deleted]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: instant-issues/action@master
with:
token: ${{ secrets.GITHUB_TOKEN }}Create .github/workflows/aggregate-issues.yml with the following content:
name: Aggregate issues for Instant Issues
on:
push:
schedule:
# run every hour
- cron: '0 * * * *'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: instant-issues/action@master
with:
token: ${{ secrets.GITHUB_TOKEN }}Then you can create .github/workflows/instant-issue-repos.yml with, e.g.:
- name: someorg/someorg1
disjointLabels: [bug, UX, new feature]
- name: someorg/someorg2-
Uploading GitHub artificats is more straightforward than force pushing but that's not an option because they don't have a persistent download URL.
-
Uploading release assets is more straightforward than force pushing but that's not an option because the assets are served without the
Access-Control-Allow-Originheader. -
To not needlessly spam GitHub we upload issues using a force push. Since the GitHub REST API does not provide an endpoint for force pushing, we do the force pushing by running
gitin Docker.