Skip to content

[create-pull-request] automated change (#66) #820

[create-pull-request] automated change (#66)

[create-pull-request] automated change (#66) #820

Workflow file for this run

name: Release
on:
push:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
matrix:
python-version: [ '3.10', '3.11', '3.12' ]
services:
mongodb:
image: mongo:latest
env:
MONGO_INITDB_ROOT_USERNAME: test
MONGO_INITDB_ROOT_PASSWORD: password
MONGO_INITDB_DATABASE: StrongMotion
ports:
- '27017:27017'
rabbitmq:
image: rabbitmq:latest
env:
RABBITMQ_DEFAULT_USER: test
RABBITMQ_DEFAULT_PASS: password
RABBITMQ_DEFAULT_VHOST: vhost
ports:
- '5672:5672'
elasticsearch:
image: elasticsearch:8.16.0
ports:
- '9200:9200'
env:
ES_JAVA_OPTS: "-Xms512m -Xmx512m"
discovery.type: single-node
xpack.security.enabled: false
steps:
- name: Clone
uses: actions/checkout@v4
- name: Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
- name: Dependency
run: |
pip install --upgrade pip
pip install uv
uv pip install --system -e .[dev] pyinstaller
export NUMBA_DISABLE_JIT=1
pytest -n auto --cov --junitxml=junit.xml .
- name: Codecov
if: matrix.python-version == '3.10'
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
slug: TLCFEM/motion-base
plugins: pycoverage
- name: Result
if: matrix.python-version == '3.10'
uses: codecov/test-results-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Binary
if: matrix.python-version == '3.11'
run: |
export PYTHONPATH=$PYTHONPATH:./src
/bin/bash ./scripts/pyinstaller.sh
- name: Artifact
if: matrix.python-version == '3.11'
uses: actions/upload-artifact@v4
with:
name: mb_runner
path: dist/mb_runner
docker:
needs: build
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Clone
uses: actions/checkout@v4
- name: Update
run: /bin/bash ./scripts/git-commit.sh
- name: Login
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Buildx
uses: docker/setup-buildx-action@v3
- name: Build Backend
uses: docker/build-push-action@v6
with:
context: .
file: back.Dockerfile
push: true
tags: tlcfem/motion-base-back:latest
- name: Build Frontend
uses: docker/build-push-action@v6
with:
context: .
file: front.Dockerfile
push: true
tags: tlcfem/motion-base-front:latest