a274c4dd8f
ci / unit-tests (push) Successful in 46s
Co-authored-by: hongming <hongmingwang@moleculesai.app> Co-committed-by: hongming <hongmingwang@moleculesai.app>
43 lines
1.5 KiB
YAML
43 lines
1.5 KiB
YAML
name: ci
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
unit-tests:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
|
|
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: "3.11"
|
|
cache: pip
|
|
|
|
- name: Install package + test deps
|
|
env:
|
|
# molecules-workspace-runtime is published on the org Gitea PyPI
|
|
# registry and is 404 on public PyPI (a squat-proof name), so keep the
|
|
# Gitea index PRIMARY — the runtime always resolves from our registry.
|
|
# The Gitea index is a publish store, NOT a transparent PyPI proxy, so
|
|
# everything it does not host (lark-oapi>=1.5.5, qrcode, pytest) 404s
|
|
# there; add public PyPI as an EXTRA index for those. No dependency-
|
|
# confusion surface: the only Gitea-hosted dep (the runtime) does not
|
|
# exist on public PyPI, so the extra index can never shadow it.
|
|
PIP_INDEX_URL: https://git.moleculesai.app/api/packages/molecule-ai/pypi/simple/
|
|
PIP_EXTRA_INDEX_URL: https://pypi.org/simple/
|
|
run: pip install -e ".[qr]" pytest
|
|
|
|
- name: Byte-compile all modules
|
|
run: python -m py_compile lark_channel_molecule/*.py
|
|
|
|
- name: Run unit tests
|
|
# Both sides are mocked (fake ws events + fake platform tools) —
|
|
# no creds / network needed, deterministic on a generic runner.
|
|
run: pytest -q
|