Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
To find the state of this project's repository at the time of any of these versions, check out the tags.
changelogs.yml 1.40 KiB
name: Assorted

on:
  push:
    branches:
    - master
    paths:
    - 'changelog.d/*'
    - '.github/workflows/changelogs.yml'
  pull_request:
    paths:
    - 'changelog.d/*'
    - '.github/workflows/changelogs.yml'
  release:
    types:
      - created

defaults:
  run:
    shell: bash

jobs:
  build:
    name: Changelogs
    runs-on: ubuntu-latest

    steps:
      - name: Set PATH
        # https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-commands-for-github-actions#adding-a-system-path
        run: |
          echo "$HOME/.cabal/bin" >> $GITHUB_PATH
      - uses: actions/cache@v1
        with:
          path: ~/.cabal/store
          key: linux-store-changelogs
      - name: ghcup
        run: |
          ghcup config set cache true
          ghcup install ghc 8.10.7
          ghcup set ghc 8.10.7
      # GHC 8.10.7 needed due to https://github.com/phadej/changelog-d/pull/2
      - name: Update Hackage index
        run: cabal v2-update
      # Cannot install it from tarball due to
      # https://github.com/haskell/cabal/issues/7360
      - uses: actions/checkout@v3
        with:
          repository: "phadej/changelog-d"
          path: "changelog-d"
      - name: Install changelog-d
        run: |
          pushd changelog-d
          cabal v2-install
          popd
      - uses: actions/checkout@v3
      - name: Run changelog-d
        run: |
          changelog-d changelog.d