Skip to content

feat(boatstack): let users ignore past deliveries in ambiguity resolution #133

feat(boatstack): let users ignore past deliveries in ambiguity resolution

feat(boatstack): let users ignore past deliveries in ambiguity resolution #133

Workflow file for this run

name: Verify Boatstack lab
on:
pull_request:
paths:
- "labs/12-product-engineering-loop/**"
- ".github/workflows/boatstack-lab.yml"
push:
branches: [main]
paths:
- "labs/12-product-engineering-loop/**"
- ".github/workflows/boatstack-lab.yml"
workflow_dispatch:
permissions:
contents: read
concurrency:
group: boatstack-lab-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
runtime:
name: Runtime (${{ matrix.os }})
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
defaults:
run:
working-directory: labs/12-product-engineering-loop/product-engineering-loop
steps:
- uses: actions/checkout@v7
- uses: actions/setup-go@v7
with:
go-version-file: labs/12-product-engineering-loop/product-engineering-loop/go.mod
cache-dependency-path: labs/12-product-engineering-loop/product-engineering-loop/go.mod
- name: Show toolchain
run: go version
- name: Test runtime
run: go test ./...
- name: Build helper
run: go build ./cmd/boatstack-helper
- name: Validate Bash installer
if: runner.os != 'Windows'
shell: bash
run: bash -n ../boatstack-distribution/install.sh.template
- name: Validate PowerShell installer
if: runner.os == 'Windows'
shell: pwsh
run: |
$tokens = $null
$errors = $null
$path = Resolve-Path ../boatstack-distribution/install.ps1.template
[System.Management.Automation.Language.Parser]::ParseFile($path, [ref]$tokens, [ref]$errors) > $null
if ($errors.Count -gt 0) {
$errors | ForEach-Object { Write-Error $_ }
exit 1
}
projection:
name: Generated distribution
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- uses: actions/setup-go@v7
with:
go-version-file: labs/12-product-engineering-loop/product-engineering-loop/go.mod
cache-dependency-path: labs/12-product-engineering-loop/product-engineering-loop/go.mod
- uses: actions/setup-python@v6
with:
python-version: "3.11"
- name: Require an append-only release message
if: github.event_name == 'pull_request'
run: >-
python labs/12-product-engineering-loop/scripts/release_notes.py check-policy
--repo .
--base "${{ github.event.pull_request.base.sha }}"
--head "${{ github.event.pull_request.head.sha }}"
- name: Verify projection and public surface
run: python -m unittest discover -s labs/12-product-engineering-loop/tests -p 'test_*.py'