Skip to content

Create Meeting Artifacts (Scheduled) #5

Create Meeting Artifacts (Scheduled)

Create Meeting Artifacts (Scheduled) #5

name: Create Meeting Artifacts (Scheduled)
on:
workflow_dispatch:
schedule:
- cron: '0 10 * * 1'
jobs:
create-artifacts:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
meeting_group:
- benchmarking
- build
- cross_project_council
- diag
- diag_deepdive
- ecosystem_report
- loaders
- modules
- next-10
- outreach
- package-maintenance
- package_metadata_interop
- Release
- security-wg
- security_collab
- standards
- sustainability_collab
- tsc
- tooling
- typescript
- uvwasi
- userfeedback
- web-server-frameworks
steps:
- name: Checkout repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Setup Node.js
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3
with:
node-version-file: '.nvmrc'
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Read Meeting Variables
id: read-vars
run: |
meeting_group="${{ matrix.meeting_group }}"
user=$(grep '^USER=' "templates/meeting_base_${meeting_group}" | cut -d'=' -f2 | xargs)
echo "user=$user" >> $GITHUB_OUTPUT
- name: Create GitHub App Token
uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4
id: app-token
with:
app-id: ${{ secrets.BOT_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
owner: ${{ steps.read-vars.outputs.user }}
- name: Create meeting artifacts
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
HACKMD_API_TOKEN: ${{ secrets.HACKMD_API_TOKEN }}
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
run: node create-node-meeting-artifacts.mjs ${{ matrix.meeting_group }}
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: meeting-artifacts-${{ matrix.meeting_group }}
path: |
~/.make-node-meeting/
*.md
retention-days: 7
if-no-files-found: ignore