Skip to content

Project checks

Project checks #2975

Workflow file for this run

name: Project checks
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
pull_request:
branches:
- main
- 'cardano-node-*-backports'
types:
- opened
- synchronize
- reopened
# see https://stackoverflow.com/a/77497491
- edited
merge_group:
jobs:
consensus-changelog:
name: Changelogs
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- env:
BASE_REF: ${{ github.event.pull_request.base.ref }}
NO_CHANGELOG_LABEL: ${{ contains(github.event.pull_request.labels.*.name, 'no changelog') }}
RELEASE_LABEL: ${{ contains(github.event.pull_request.labels.*.name, 'release') }}
run: ./scripts/ci/check-changelogs.sh
check-cabal-files:
name: Cabal files check
runs-on: ubuntu-latest
steps:
- name: Install Haskell
uses: input-output-hk/actions/haskell@latest
id: setup-haskell
with:
cabal-version: "3.10.1.0"
- uses: actions/checkout@v4
- name: Cabal check
run: |
for x in $(find . -name '*.cabal' | grep -vE 'dist-newstyle|asserts\.cabal' | cut -c 3-); do
(
d=$(dirname $x)
echo "== $d =="
cd $d
cabal check
)
done
check-release-badges:
name: Release badges are updated
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check README badges
run: |
for f in $(find ouroboros-consensus* *sop* -type f -name "*.cabal"); do
pkg=$(grep "^name: " $f | rev | cut -d' ' -f1 | rev)
ver=$(grep "^version: " $f | rev | cut -d' ' -f1 | rev)
echo "Checking badge for $pkg-$ver"
grep "$(echo $pkg | sed 's/-/--/g')-$ver" README.md
done
check-build-plans:
name: Check build plans (dev vs release)
runs-on: ubuntu-latest
steps:
- name: Install Haskell
uses: input-output-hk/actions/haskell@latest
id: setup-haskell
with:
cabal-version: "3.12.1.0"
ghc-version: "9.6.6"
- name: Install base libraries
uses: input-output-hk/actions/base@latest
with:
use-sodium-vrf: false
- name: Install cabal-plan
run: |
wget -q https://github.com/haskell-hvr/cabal-plan/releases/download/v0.7.3.0/cabal-plan-0.7.3.0-x86_64-linux.xz
xz -d cabal-plan-0.7.3.0-x86_64-linux.xz
mv cabal-plan-0.7.3.0-x86_64-linux cabal-plan
chmod +x cabal-plan
mkdir -p ${HOME}/.local/bin
mv cabal-plan ${HOME}/.local/bin/cabal-plan
- uses: actions/checkout@v4
- name: Diff plans
run: GH=1 ./scripts/release/cabal-plan-diff.sh