Newer
Older
# ===== TEST TOPFARM =====
test_topfarm: # name the job what we like
stage: # build, test, deploy defined by default [2]
test
script:
- pip install --upgrade git+https://gitlab.windenergy.dtu.dk/TOPFARM/PyWake.git

Mads M. Pedersen
committed
- pip install -e .
tags: # only runners with this tag can do the job [3]
# ===== TEST TOPFARM =====
test_topfarm_pep8: # name the job what we like
stage: # build, test, deploy defined by default [2]
test
script:

Mads M. Pedersen
committed
- pip install -e .
- pycodestyle --ignore=E501,W504 --exclude="*Colonel*" topfarm
tags: # only runners with this tag can do the job [3]
test_topfarm_windows: # name the job what we like
variables:
GIT_SUBMODULE_STRATEGY: normal
stage: # build, test, deploy defined by default [2]
test
coverage: '/(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/'
- conda init powershell
- "if (test-path $PROFILE.CurrentUserAllHosts) { & $PROFILE.CurrentUserAllHosts}"
- conda activate tf231
- pip install --upgrade git+https://gitlab.windenergy.dtu.dk/TOPFARM/PyWake.git --no-deps
- pip install -e . --no-deps

Mads M. Pedersen
committed
- python -m pytest --cov-report term-missing:skip-covered --cov=topfarm --cov-config .coveragerc --ignore=topfarm/cost_models/fuga/Colonel

Mads M. Pedersen
committed
- ANMH_old
# ===== Trigger TriggerHub pipeline =====
trigger_hub_test:
stage: test
variables:
TRIGGER_BRANCH: $CI_COMMIT_REF_NAME
trigger:
project: TOPFARMPrivate/triggerhub/topfarmtriggers
strategy: depend
# ===== BUILD DOCS AND PUSH TO PUBLIC WEBSITE =====
pages: # "pages" is a job specifically for GitLab pages [1]
stage: # build, test, deploy defined by default [2]
deploy
script: # use sphinx to build docs, move to public page
- apt-get update
- apt-get -y install make pandoc
- pip install --upgrade pip
- pip install pypandoc
- pip install sphinx --upgrade
- pip install nbsphinx --upgrade
- pip install sphinx_rtd_theme
- pip install git+https://github.com/vidartf/nbsphinx-link.git
- pip install --upgrade git+https://gitlab.windenergy.dtu.dk/TOPFARM/PyWake.git
- cd docs; make html
- cd ../; mv docs/build/html public/
artifacts: # required for GitLab pages [1]
paths:
- public
only: # only run for these branches
- master
tags: # only runners with this tag can do the job [3]
# ===== BUILD WHEELS AND UPLOAD TO PYPI =====
pypi:
stage:
deploy
only:
- tags
# - master
script:
- python3 -m pip install -U setuptools wheel
- python3 setup.py sdist bdist_wheel
- python3 -m pip install -U twine
# - twine upload --repository-url https://test.pypi.org/legacy/ dist/* -u $TWINE_USERNAME -p $TWINE_PASSWORD # for testing purposes
- twine upload dist/* -u $TWINE_USERNAME -p $TWINE_PASSWORD
tags:
# [1] GitLab page: https://docs.gitlab.com/ee/ci/yaml/#pages
# [2] CI stages: https://docs.gitlab.com/ee/ci/yaml/#stages
# [3] Tags: https://docs.gitlab.com/ee/ci/yaml/#tags