Deploy pages #73
Workflow file for this run
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] | |
env: | |
SKIP: false | |
jobs: | |
before_script: | |
runs-on: self-hosted | |
strategy: | |
matrix: | |
node-version: [ 20.x ] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
conda init bash | |
source ~/.bashrc | |
conda info | |
source activate ci_env | |
shell: bash | |
test_sarvey: | |
runs-on: self-hosted | |
needs: before_script | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Run tests | |
run: | | |
conda init bash | |
source ~/.bashrc | |
mamba env remove --name ci_temp_env --yes || echo "Environment ci_temp_env does not exist" | |
# remove ci_temp_env directory | |
env_path=$(mamba info --envs | grep ci_temp_env | awk '{print $2}') | |
rm -rf $env_path | |
conda create -n ci_temp_env --clone ci_env | |
source activate ci_temp_env | |
mamba install json5 | |
rm -rf tests/testdata | |
wget -nv -c -O testdata.zip https://seafile.projekt.uni-hannover.de/f/4b3be399dffa488e98db/?dl=1 | |
unzip testdata.zip | |
mv testdata tests/ | |
mamba list | |
#make pytest | |
shell: bash | |
- name: create docs | |
run: | | |
conda init bash | |
source ~/.bashrc | |
source activate ci_env | |
make docs | |
shell: bash | |
- name: Upload coverage report | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-report | |
path: htmlcov/ | |
- name: Upload report.html | |
uses: actions/upload-artifact@v4 | |
with: | |
name: test-report | |
path: report.html | |
- name: Upload docs | |
uses: actions/upload-artifact@v4 | |
with: | |
name: docs | |
path: docs/_build/html/ | |
- name: Upload cobertura coverage report | |
uses: actions/upload-artifact@v4 | |
with: | |
name: cobertura-coverage | |
path: coverage.xml | |
- name: Upload junit report | |
uses: actions/upload-artifact@v4 | |
with: | |
name: junit-report | |
path: report.xml | |
test_styles: | |
runs-on: self-hosted | |
needs: before_script | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
conda init bash | |
source ~/.bashrc | |
conda info | |
source activate ci_env | |
make lint | |
shell: bash | |
- name: Upload flake8 log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: flake8-log | |
path: tests/linting/flake8.log | |
- name: Upload pycodestyle log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: pycodestyle-log | |
path: tests/linting/pycodestyle.log | |
- name: Upload pydocstyle log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: pydocstyle-log | |
path: tests/linting/pydocstyle.log | |
test_urls: | |
runs-on: self-hosted | |
needs: before_script | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
conda init bash | |
source ~/.bashrc | |
conda info | |
source activate ci_env | |
make urlcheck | |
shell: bash | |
test_sarvey_install: | |
runs-on: self-hosted | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
# if: false | |
run: | | |
source $HOME/miniconda/bin/activate | |
mamba update -n base mamba conda | |
mamba info | |
mamba env remove --name sarvey_testinstall --yes || echo "Environment sarvey_testinstall does not exist" | |
pip install conda-merge | |
wget https://raw.githubusercontent.com/insarlab/MiaplPy/main/conda-env.yml | |
conda-merge conda-env.yml tests/CI_docker/context/environment_sarvey.yml > env.yml | |
mamba env create --name sarvey_testinstall -f env.yml | |
source activate sarvey_testinstall | |
pip install git+https://github.com/insarlab/MiaplPy.git | |
pip install . | |
pip check | |
cd .. | |
python -c "import sarvey; print(sarvey)" | |
shell: bash | |
deploy_pages: | |
runs-on: self-hosted | |
needs: test_sarvey | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Download docs | |
uses: actions/download-artifact@v4 | |
with: | |
name: docs | |
- name: Deploy to GitHub Pages | |
if: env.SKIP == 'false' | |
run: | | |
rm -rf public | |
mkdir -p public/doc | |
mkdir -p public/images/ | |
mkdir -p public/coverage | |
mkdir -p public/test_reports | |
# ls | |
ls docs/ | |
ls docs/_build | |
Copy command with checks if directories exist | |
if [ -d docs/_build/html ]; then | |
cp -r docs/_build/html/* public/doc/ | |
else | |
echo "docs/_build/html does not exist" | |
exit 1 | |
fi | |
cp -r docs/_build/html/* public/doc/ | |
cp -r htmlcov/* public/coverage/ | |
cp report.html public/test_reports/ | |
ls -al public | |
ls -al public/doc | |
ls -al public/coverage | |
ls -al public/test_reports | |
shell: bash | |
- name: Upload to GitHub Pages | |
if: env.SKIP == 'false' | |
uses: peaceiris/actions-gh-pages@v4 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./public |