Reorg cli and client (file moves and import updates) #1677
This file contains 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: | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
- name: Run pre-commit | |
uses: pre-commit/[email protected] | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.11"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install packages for testing | |
env: | |
PIP_PROGRESS_BAR: "off" | |
run: | | |
pip install -r requirements/main.txt -r requirements/dev.txt | |
pip install -e . | |
- name: Run tests | |
env: | |
PIP_PROGRESS_BAR: "off" | |
run: | | |
pip install pytest-playwright | |
playwright install | |
make test | |
mypy: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
- name: Install packages for testing | |
env: | |
PIP_PROGRESS_BAR: "off" | |
run: | | |
pip install -r requirements/main.txt -r requirements/dev.txt | |
pip install -e . | |
- name: Run tests | |
run: | | |
make typing | |
build: | |
runs-on: ubuntu-latest | |
needs: [test] | |
timeout-minutes: 20 | |
# Only do Docker builds of tagged releases and pull requests from ticket | |
# branches. This will still trigger on pull requests from untrusted | |
# repositories whose branch names match our tickets/* branch convention, | |
# but in this case the build will fail with an error since the secret | |
# won't be set. | |
if: > | |
github.event_name != 'merge_group' | |
&& (startsWith(github.ref, 'refs/tags/') | |
|| startsWith(github.head_ref, 'tickets/')) | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: lsst-sqre/build-and-push-to-ghcr@v1 | |
id: build-service | |
with: | |
dockerfile: docker/Dockerfile-service | |
image: ${{ github.repository }} | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- uses: lsst-sqre/build-and-push-to-ghcr@v1 | |
id: build-worker | |
with: | |
dockerfile: docker/Dockerfile-worker | |
image: ${{ github.repository }}-worker | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Report result | |
run: | | |
echo Pushed ghcr.io/${{ github.repository }}:${{ steps.build-service.outputs.tag }} | |
echo Pushed ghcr.io/${{ github.repository }}-worker:${{ steps.build-worker.outputs.tag }} |