feat(multi-tenant-saas): model a real HR SaaS with EU vs US tenants #96
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true" | |
| jobs: | |
| validate: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Validate JSON files | |
| run: | | |
| find . -name "*.json" -not -path "./.git/*" | while read f; do | |
| python3 -m json.tool "$f" > /dev/null && echo "OK: $f" || exit 1 | |
| done | |
| - name: Validate YAML files | |
| run: | | |
| pip install pyyaml -q | |
| find . -name "*.yaml" -o -name "*.yml" | grep -v ".git" | while read f; do | |
| python3 -c "import yaml, sys; yaml.safe_load(open(sys.argv[1]))" "$f" && echo "OK: $f" || exit 1 | |
| done | |
| industrial-embodied-ai: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: industrial-embodied-ai | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Set up Python 3.11 | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.11" | |
| cache: "pip" | |
| cache-dependency-path: industrial-embodied-ai/requirements.txt | |
| - name: Install controller test dependencies | |
| run: python -m pip install cryptography | |
| - name: Run controller tests | |
| run: python -m unittest discover -s tests -v | |
| - name: Install artifact validation dependencies | |
| if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
| run: python -m pip install -r requirements.txt | |
| - name: Verify committed evidence artifacts | |
| if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
| run: python validate_artifacts.py | |
| embodied-action-receipts: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: embodied-action-receipts | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Set up Python 3.11 | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.11" | |
| cache: "pip" | |
| cache-dependency-path: embodied-action-receipts/requirements.txt | |
| - name: Install dependencies | |
| run: python -m pip install -r requirements.txt | |
| - name: Verify embodied-action receipt fixtures | |
| run: python -m unittest discover -s tests -v | |
| multi-tenant-saas: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: multi-tenant-saas | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Set up Python 3.11 | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.11" | |
| - name: Run people directory tests | |
| run: python -m unittest discover -s tests -v |