Skip to content

docs: real v0.1 content (getting started, inputs/outputs, FAQ, troubleshooting) #32

docs: real v0.1 content (getting started, inputs/outputs, FAQ, troubleshooting)

docs: real v0.1 content (getting started, inputs/outputs, FAQ, troubleshooting) #32

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [main]
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
permissions:
contents: read
jobs:
build:
name: build
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version-file: .nvmrc
cache: npm
- run: npm ci
- run: npm run format:check
- run: npm run lint
- run: npm run typecheck
- run: npm run build
- name: Verify dist/ matches src/
run: |
if [ -n "$(git status --porcelain dist)" ]; then
echo "::error::dist/ is out of date with src/. Run 'npm run build' locally and commit the result."
git status dist
git diff --stat dist
exit 1
fi
self-test:
name: self-test
needs: build
runs-on: ubuntu-latest
timeout-minutes: 25
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install GMAT (run 1)
id: install-1
uses: ./
with:
version: R2026a
cache: true
- name: Snapshot install after run 1
run: |
find "$GMAT_ROOT" -type f \
! -name 'api_startup_file.txt' \
! -path '*/__pycache__/*' \
! -name '*.pyc' \
-print0 | sort -z | xargs -0 sha256sum > /tmp/manifest-1.txt
wc -l /tmp/manifest-1.txt
- name: Reset install path
run: rm -rf "$GMAT_ROOT"
- name: Install GMAT (run 2)
id: install-2
uses: ./
with:
version: R2026a
cache: true
- name: Assert cache-hit on run 2
run: |
if [ "${{ steps.install-2.outputs.cache-hit }}" != "true" ]; then
echo "::error::Expected cache-hit=true on run 2, got '${{ steps.install-2.outputs.cache-hit }}'"
exit 1
fi
- name: Snapshot install after run 2
run: |
find "$GMAT_ROOT" -type f \
! -name 'api_startup_file.txt' \
! -path '*/__pycache__/*' \
! -name '*.pyc' \
-print0 | sort -z | xargs -0 sha256sum > /tmp/manifest-2.txt
wc -l /tmp/manifest-2.txt
- name: Cache equivalence
run: |
if ! diff -u /tmp/manifest-1.txt /tmp/manifest-2.txt; then
echo "::error::Cache restore differs from cache-saved state"
exit 1
fi
echo "Cache equivalence OK"