Skip to content

Allow for more ui customizations #517

Allow for more ui customizations

Allow for more ui customizations #517

Workflow file for this run

name: Build Status
on:
push:
branches:
- main
- v3
tags:
- v*
paths-ignore:
- LICENSE
- README.md
pull_request:
branches:
- main
- v3
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions:
contents: read
checks: write
pull-requests: write
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
python-version: ["3.11"]
node-version: [22.x]
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
- name: Set up Python
uses: actions-ext/python/setup@main
with:
version: 3.11
- name: Set up NodeJS
uses: actions-ext/node/setup@main
with:
version: ${{ matrix.node-version }}
- name: Install dependencies
run: make develop
- name: Lint
run: make lint
- name: Checks
run: make checks
- name: Build
run: make build
- name: Make dist
run: make dist
- uses: actions-ext/python/test-wheel@main
with:
module: csp_gateway
- uses: actions-ext/python/test-sdist@main
with:
module: csp_gateway
- uses: actions/upload-artifact@v7
with:
name: dist
path: dist
test:
runs-on: ${{ matrix.os }}
needs: build
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ["3.9", "3.10", "3.11"]
exclude:
# No CSP builds for python 3.9 / macos arm64
- python-version: "3.9"
os: macos-latest
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions-ext/python/setup@main
with:
version: 3.11
- name: Set up NodeJS
uses: actions-ext/node/setup@main
- name: Install JS dependencies
run: make develop-js
- name: Download wheels
uses: actions/download-artifact@v8
with:
name: dist
- name: Install wheels
run: uv pip install `ls csp_gateway-*.whl`[develop] --target .
- name: Test
run: make coverage
- name: Upload test results (Python)
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
with:
name: test-results-${{ matrix.os }}-${{ matrix.python-version }}
path: '**/junit.xml'
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.11'
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@c950f6fb443cb5af20a377fd0dfaa78838901040 # v2
with:
files: '**/junit.xml'
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.11'
- name: Upload coverage
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
with:
token: ${{ secrets.CODECOV_TOKEN }}
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.11'
import:
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
wheel: ["", "client"]
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions-ext/python/setup@main
with:
version: 3.11
- name: Download wheels
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: dist
- name: Install wheels
run: uv pip install `ls csp_gateway_${{ matrix.wheel }}-*.whl`
if: matrix.wheel != ''
- name: Install wheels
run: uv pip install `ls csp_gateway-*.whl`
if: matrix.wheel == ''
- name: Import Client
run: python -c "import csp_gateway.client"
- name: Import Utils
run: |
python -c "import csp_gateway.utils"
python -c "import csp_gateway.utils.enums"
python -c "import csp_gateway.utils.exceptions"
python -c "import csp_gateway.utils.picklable_queue"
python -c "import csp_gateway.utils.web.filter"
python -c "import csp_gateway.utils.web.query"
- name: Import Server
run: python -c "import csp_gateway.server"
if: matrix.wheel != 'client'
- name: Import Utils
run: |
python -c "import csp_gateway.utils"
python -c "import csp_gateway.utils.csp"
python -c "import csp_gateway.utils.fastapi"
python -c "import csp_gateway.utils.id_generator"
python -c "import csp_gateway.utils.struct"
python -c "import csp_gateway.utils.web.controls"
if: matrix.wheel != 'client'