Schedule regularly occuring meetings via GitHub Issue
Schedule meetings via a GitHub Action. Creates issues based on a schedule and template.
This repository is managed by the Package Maintenance Working Group, see Governance.
Usage
name: Schedule team meetings
on:
schedule:
- cron: '0 0 * * * *'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: pkgjs/meet@v0
with:
token: ${{ secrets.GITHUB_TOKEN }}
schedules: 2020-04-02T17:00:00.0Z/P1DInputs
The meeting schedule, issue, etc can be configured with inouts to this action.
token: (required) The token from the action for calling to the GitHub API.schedules: (required) The ISO-8601 interval for the schedule. Default:${now/P7D}seven days from nowcreateWithin: (required) The ISO-8601 duration for how soon before the meeting to create the issue. DefaultP7Dlabels: Labels to create the issue with. Default:meetingagendaLabel: Label to pull the agenda from. Default:meeting-agendaissueTitle: Template string for issue title. Default:Meeting <%= date.toFormat('yyyy-MM-dd') %>issueTemplate: The name of the issue template found in.github/ISSUE_TEMPLATE. Default:meeting.md
Default Issue Template
The default issue template can be seen here: https://github.com/wesleytodd/meeting-maker/issues/34
It is based off the one commonly used on across the Node.js Org, but any additions or improvements are welcome.
JS API Usage
The main logic of the module is also published to npm.
$ npm i @pkgjs/meet
const maker = require('@pkgjs/meet')
;(async () => {
const issue = await maker.meetings.createNextMeeting(client, {
owner: 'pkgjs',
repo: 'meet',
schedules: []
})
console.log(issue) // the response from the GitHub api creating the issue
})()Contributing
This package welcomes contributions. While the basic unit tests are runnable
(npm t) Unfortunatly because it is requires access to the GitHub api it means
you need to have a token with access to create the issues as part of the
integration tests. To specify the key you need to create a personal access token
and put it in a .env file as GITHUB_TOKEN=<TOKEN>. Then you can run
npm run test:integration to run the main integration tests. To be honest this
should probably be configurable, contributions welcome.

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
