-
GotthardG authored
Updated several frontend dependencies including MUI packages and added new ones like `@mui/x-charts`. Adjusted the Python path setup in the CI configuration to correctly point to the `aaredb` backend, ensuring accurate module resolution.
GotthardG authoredUpdated several frontend dependencies including MUI packages and added new ones like `@mui/x-charts`. Adjusted the Python path setup in the CI configuration to correctly point to the `aaredb` backend, ensuring accurate module resolution.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.gitlab-ci.yml 2.28 KiB
# GitLab CI/CD Configuration for FastAPI
stages:
- test
- deploy
- release
variables:
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.pip_cache"
VIRTUAL_ENV: ".venv"
# Cache for dependencies
cache:
paths:
- .pip_cache/
before_script: # common setup for every job
- python3.12 -m venv $VIRTUAL_ENV
- source $VIRTUAL_ENV/bin/activate
- pip install --upgrade pip
test:
stage: test
script:
- source $VIRTUAL_ENV/bin/activate
- pip install -r requirements.txt
- export PYTHONPATH=$PYTHONPATH:/home/gitlab-runner/builds/t3_38ooWt/0/mx/aaredb/backend
- cd /home/gitlab-runner/builds/t3_38ooWt/0/mx/aaredb # Change to the project root
- #pytest --cov=app --cov-report=xml # Run tests and generate coverage report
lint:
stage: test
script:
- source $VIRTUAL_ENV/bin/activate
- pip install pre-commit black flake8
- >
pre-commit run --all-files || {
echo "Pre-commit formatting failed. Auto-fixing formatting issues with black..." &&
black backend/ &&
exit 0;
}
deploy:
stage: deploy
variables:
CI: "true" # Mark this as a CI run
ENVIRONMENT: test # Use test environment settings
PORT: 8081
script:
- echo "Setting up Python dependencies..."
- source $VIRTUAL_ENV/bin/activate
- pip install -r requirements.txt
- echo "Starting the application to test startup with SSL..."
- cd $CI_PROJECT_DIR/backend # Use GitLab-provided dynamic root path
- python -m main # Run the main module dynamically
release:
stage: release
when: manual
variables:
TWINE_USERNAME: gitlab-ci-token # Keep username the same
TWINE_PASSWORD: $CI_JOB_TOKEN # Use PAT stored in GitLab CI/CD Variables
script:
- echo "Setting up Python dependencies..."
- source $VIRTUAL_ENV/bin/activate
- pip install -r requirements.txt
- rm -f openapi.json || true
- rm -rf python-client || true
- bash make_openapi_client.sh # Generate OpenAPI client and package
- ls backend/python-client/dist/ # Debug artifacts to ensure files exist
- pip install --upgrade build setuptools wheel twine