stages: - build - deploy ################################################################################ # Linux / gcc ################################################################################ linux_agrum_11: image: agrumery/ubuntu-11 tags: - docker - linux cache: key: linux paths: - build/ stage: build script: - python3 act clean - python3 act --no-fun test release aGrUM -j halfexcept1 linux_pyagrum: image: agrumery/ubuntu tags: - docker - linux cache: key: linux paths: - build/ stage: build script: - python3 act clean - pip3 install -r wrappers/pyAgrum/testunits/requirements.txt - python3 act --no-fun test release pyAgrum -j halfexcept1 -t quick ################################################################################ # Linux / gcc merge requests ################################################################################ linux_agrum_merge_requests: image: agrumery/ubuntu only: - merge_requests tags: - docker - linux cache: key: linux paths: - build/ stage: build script: - python3 act clean - python3 act --no-fun test release aGrUM -j halfexcept1 linux_agrum_merge_requests_11: image: agrumery/ubuntu-11 only: - merge_requests tags: - docker - linux cache: key: linux paths: - build/ stage: build script: - python3 act clean - python3 act --no-fun test release aGrUM -j halfexcept1 linux_pyagrum_merge_requests: only: - merge_requests image: agrumery/ubuntu tags: - docker - linux cache: key: linux paths: - build/ stage: build script: - python3 act clean - pip3 install -r wrappers/pyAgrum/testunits/requirements.txt - python3 act --no-fun test release pyAgrum -j halfexcept1 -t quick ################################################################################ # MacOS / clang ################################################################################ macos_agrum: only: - master@agrumery/aGrUM - web@agrumery/aGrUM - merge_requests tags: - macos - conda variables: CC: "/usr/bin/clang" CXX: "/usr/bin/clang++" stage: build cache: key: macos paths: - build/ script: - . /Users/agrum/miniconda3/etc/profile.d/conda.sh - conda activate py37 - python act clean - python act --no-fun test release aGrUM -j halfexcept1 - conda deactivate macos_pyagrum: only: - master@agrumery/aGrUM - web@agrumery/aGrUM - merge_requests tags: - macos - conda variables: CC: "/usr/bin/clang" CXX: "/usr/bin/clang++" stage: build cache: key: macos paths: - build/ script: - . /Users/agrum/miniconda3/etc/profile.d/conda.sh - conda activate py37 - python act clean - python act --no-fun test release pyAgrum -t quick -j halfexcept1 - conda deactivate ################################################################################ # Windows / MVSC ################################################################################ windows_agrum_2015: only: - master@agrumery/aGrUM - web@agrumery/aGrUM - merge_requests tags: - windows - conda - agrumerie2 variables: PATH: $PATH_64_MVSC15_AGRUMERIE2 cache: key: mvsc paths: - build/ stage: build script: - call conda.bat create -n "gitlab-ci-%CI_JOB_ID%" -c conda-forge python=3.7 - call conda.bat activate "gitlab-ci-%CI_JOB_ID%" - call conda.bat install -y -c conda-forge --file wrappers\pyAgrum\testunits\requirements.txt - call conda.bat install -y -c conda-forge cmake - python act clean - python act --no-fun --windows=mvsc15 -d build -j except1 test release aGrUM - call conda.bat deactivate - call conda.bat remove -n "gitlab-ci-%CI_JOB_ID%" --all --force -y retry: 1 windows_pyagrum_2015: only: - master@agrumery/aGrUM - web@agrumery/aGrUM - merge_requests tags: - windows - conda - agrumerie2 variables: PATH: $PATH_64_MVSC15_AGRUMERIE2 cache: key: mvsc paths: - build/ stage: build script: - call conda.bat create -n "gitlab-ci-%CI_JOB_ID%" -c conda-forge python=3.7 - call conda.bat activate "gitlab-ci-%CI_JOB_ID%" - call conda.bat install -y -c conda-forge --file wrappers\pyAgrum\testunits\requirements.txt - call conda.bat install -y -c conda-forge cmake - python act clean - python act --no-fun test release pyAgrum --no-fun --windows=mvsc15 -d build -j except1 -t quick - call conda.bat deactivate - call conda.bat remove -n "gitlab-ci-%CI_JOB_ID%" --all --force -y retry: 1 windows_agrum_2019: only: - master@agrumery/aGrUM - web@agrumery/aGrUM - merge_requests tags: - windows - conda - agrumerie2 variables: PATH: $PATH_64_MVSC19_AGRUMERIE2 cache: key: mvsc19 paths: - build/ stage: build script: - call conda.bat create -n "gitlab-ci-%CI_JOB_ID%" python=3.7 - call conda.bat activate "gitlab-ci-%CI_JOB_ID%" - call conda.bat install -y -c conda-forge --file wrappers\pyAgrum\testunits\requirements.txt - call conda.bat install -y -c conda-forge cmake - python act clean - python act --no-fun test release aGrUM --no-fun --windows=mvsc19 -d build -j halfexcept1 - call conda.bat deactivate - call conda.bat remove -n "gitlab-ci-%CI_JOB_ID%" --all --force -y retry: 2 windows_pyagrum_2019: only: - master@agrumery/aGrUM - web@agrumery/aGrUM - merge_requests tags: - windows - conda - agrumerie2 variables: PATH: $PATH_64_MVSC19_AGRUMERIE2 cache: key: mvsc19 paths: - build/ stage: build script: - call conda.bat create -n "gitlab-ci-%CI_JOB_ID%" python=3.7 - call conda.bat activate "gitlab-ci-%CI_JOB_ID%" - call conda.bat install -y -c conda-forge --file wrappers\pyAgrum\testunits\requirements.txt - call conda.bat install -y -c conda-forge cmake - python act clean - python act --no-fun test release pyAgrum --no-fun --windows=mvsc19 -d build -j halfexcept1 -t quick - call conda.bat deactivate - call conda.bat remove -n "gitlab-ci-%CI_JOB_ID%" --all --force -y retry: 2 ################################################################################ # Deploy wheels ################################################################################ linux_build: image: agrumery/ubuntu only: - tags@agrumery/aGrUM tags: - docker - linux cache: key: linux paths: - build/ stage: deploy script: - apt-get install -y curl - curl -X POST -F token=${AGRUM_DEPLOY_TOKEN} -F ref=master -F "variables[AGRUM_TAG]=${CI_COMMIT_TAG}" -F "variables[AGRUM_BUILD]=1" -F "variables[DEPLOY_TO_PYPI]=TRUE" -F "variables[DEPLOY_DOC]=TRUE" https://gitlab.com/api/v4/projects/4935470/trigger/pipeline retry: 1