Skip to content

emacscollective/workflows

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Actions workflows for use in packages I maintain

These actions are tailored to how things are done in these packages. Using them unmodified for your own packages likely won't work.

Used third-party actions

Related resources

  • emacscollective/org-macros contains macros used in my manuals.
  • emacscollective/workflow-experiments together with experiments.yml in this repository are used to run experiments.
  • emacsmirror/.savannah actions to mirror GNU Emacs and [Non]GNU Elpa.
  • magit/actions the deprecated predecessor of these workflows, which uses actions instead. Don't do that—you would have to add more boilerplate to your repositories, and what's worse, you would much more frequently end up having to update each copy.

Compile

Used by nearly all of my packages.

Usage:

name: Compile
on: [push, pull_request]
jobs:
  compile:
    name: Compile
    uses: emacscollective/workflows/.github/workflows/compile.yml@main

Run tests

Used by emacsql and magit.

Usage:

name: Test
on: [push, pull_request]
jobs:
  test:
    name: Test
    uses: emacscollective/workflows/.github/workflows/test.yml@main

Generate and distribute manuals

Used by borg, epkg, forge, ghub, magit, magit-section, transient and with-editor. Results can be found here and here.

Usage:

name: Manual
on:
  push:
    branches: main
    tags: "v[0-9]+.[0-9]+.[0-9]+"
jobs:
  manual:
    name: Manual
    uses: emacscollective/workflows/.github/workflows/manual.yml@main
    secrets:
      aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
      aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

Generate and distribute webpage

Note

emacsair.me, emacsmirror.net and magit.vc are still published using actions from magit/actions.

Generate and distribute page from readme

Used by no-littering.

Usage:

name: Readme
on:
  push:
    branches: main
jobs:
  manual:
    name: Readme
    uses: emacscollective/workflows/.github/workflows/readme.yml@main
    secrets:
      aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
      aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

Generate and distribute statistics

Used by borg, emacsql, epkg, forge, ghub, magit, transient and with-editor. Results can be found here and here.

Usage:

name: Statistics
on:
  push:
    branches: main
  schedule:
    - cron: '3 13 * * 1'
jobs:
  stats:
    name: Statistics
    uses: emacscollective/workflows/.github/workflows/stats.yml@main
    secrets:
      aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
      aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}