Skip to content

fix: ci tests

fix: ci tests #19

Workflow file for this run

name: CI
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
test:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install the latest version of rye
uses: eifinger/setup-rye@v4
- name: Add Python to PATH
run: echo "$(rye show python-path | head -n 1 | xargs dirname | xargs dirname)/bin" >> $GITHUB_PATH
- name: Cache Rye
uses: actions/cache@v4
with:
path: |
~/.cache/rye
~/.rye
key: ${{ runner.os }}-rye-${{ hashFiles('**/pyproject.toml', '**/pyproject.lock') }}
restore-keys: |
${{ runner.os }}-rye-
- name: Sync dependencies
run: rye sync
- name: Lint & Format (Ruff)
run: rye run ruff check .
# - name: Log in to GHCR
# run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u "${{ github.actor }}" --password-stdin
# - name: Build container
# run: |
# IMAGE_NAME=ghcr.io/query-farm/python-airport-test-server
# docker build -t $IMAGE_NAME:latest .
# - name: Start server container
# run: |
# IMAGE_NAME=ghcr.io/query-farm/python-airport-test-server
# docker run -d --name airport_test_server -p 50003:50003 $IMAGE_NAME:latest
# - name: Stop server
# run: |
# docker stop airport_test_server
# - name: Push Docker image to GHCR
# run: |
# IMAGE_NAME=ghcr.io/query-farm/python-airport-test-server
# docker push $IMAGE_NAME:latest
# Build Linux images on ubuntu runner
build-linux:
needs: test
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Log in to GHCR
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Linux images (amd64 + arm64)
uses: docker/build-push-action@v4
with:
context: .
push: true
tags: ghcr.io/query-farm/python-airport-test-server:latest
platforms: linux/amd64