Loading build-and-benchmark-py-project.sh 0 → 100644 +46 −0 Original line number Diff line number Diff line curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project-within-miniconda.sh source build-py-project-within-miniconda.sh pip install asv conda list PY_EXE=python if [[ ! -z "$PROJECT" ]]; then echo "PROJECT env var not set" exit 1 fi mkdir -p ~/.$PROJECT/asv if [[ ! -z "$CI" ]]; then if [[ "$CI_PROJECT_NAMESPACE" == "inducer" ]]; then ln -s ~/.$PROJECT/asv .asv else # Copy, so that the original folder is not changed. cp -r ~/.$PROJECT/asv .asv fi fi asv machine --yes asv setup --verbose master_commit=`git rev-parse master` test_commit=`git rev-parse HEAD` export PYOPENCL_CTX=port asv run $master_commit...$master_commit~ --skip-existing --verbose asv run $test_commit...$test_commit~ --skip-existing --verbose output=`asv compare $master_commit $test_commit --factor 1 -s` echo "$output" if [[ "$output" = *"worse"* ]]; then echo "Some of the benchmarks have gotten worse" exit 1 fi if [[ "$CI_PROJECT_NAMESPACE" == "inducer" ]]; then asv publish --html-dir ~/.scicomp-benchmarks/asv/$PROJECT fi build-and-test-py-project-within-miniconda.sh +3 −51 Original line number Diff line number Diff line #! /bin/bash echo "-----------------------------------------------" echo "Current directory: $(pwd)" echo "Conda environment file: ${CONDA_ENVIRONMENT}" echo "Extra pip requirements: ${REQUIREMENTS_TXT}" echo "Extra pytest options: ${PYTEST_ADDOPTS}" echo "PYOPENCL_TEST: ${PYOPENCL_TEST}" echo "PYTEST_ADDOPTS: ${PYTEST_ADDOPTS}" echo "git revision: $(git rev-parse --short HEAD)" echo "git status:" git status -s echo "-----------------------------------------------" if [ "$(uname)" = "Darwin" ]; then PLATFORM=MacOSX else PLATFORM=Linux fi # {{{ download and install MINICONDA_VERSION=3 MINICONDA_INSTALL_DIR=.miniconda${MINICONDA_VERSION} MINICONDA_INSTALL_SH=Miniconda${MINICONDA_VERSION}-latest-${PLATFORM}-x86_64.sh curl -O "https://repo.continuum.io/miniconda/$MINICONDA_INSTALL_SH" rm -Rf "$MINICONDA_INSTALL_DIR" bash "$MINICONDA_INSTALL_SH" -b -p "$MINICONDA_INSTALL_DIR" # }}} # {{{ set up testing environment PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update conda --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update --all --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin:$PATH" conda env create --quiet --file "$CONDA_ENVIRONMENT" --name testing source "$MINICONDA_INSTALL_DIR/bin/activate" testing if test -f "$REQUIREMENTS_TXT"; then conda install --quiet --yes pip pip install -r "$REQUIREMENTS_TXT" fi curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project-within-miniconda.sh source build-py-project-within-miniconda.sh conda install --quiet --yes pytest # }}} conda list PY_EXE=python ${PY_EXE} setup.py install conda list TESTABLES="" if [ -d test ]; then cd test Loading build-py-project-within-miniconda.sh 0 → 100644 +56 −0 Original line number Diff line number Diff line #! /bin/bash echo "-----------------------------------------------" echo "Current directory: $(pwd)" echo "Conda environment file: ${CONDA_ENVIRONMENT}" echo "Extra pip requirements: ${REQUIREMENTS_TXT}" echo "Extra pytest options: ${PYTEST_ADDOPTS}" echo "PYOPENCL_TEST: ${PYOPENCL_TEST}" echo "PYTEST_ADDOPTS: ${PYTEST_ADDOPTS}" echo "git revision: $(git rev-parse --short HEAD)" echo "git status:" git status -s echo "-----------------------------------------------" if [ "$(uname)" = "Darwin" ]; then PLATFORM=MacOSX else PLATFORM=Linux fi # {{{ download and install MINICONDA_VERSION=3 MINICONDA_INSTALL_DIR=.miniconda${MINICONDA_VERSION} MINICONDA_INSTALL_SH=Miniconda${MINICONDA_VERSION}-latest-${PLATFORM}-x86_64.sh curl -O "https://repo.continuum.io/miniconda/$MINICONDA_INSTALL_SH" rm -Rf "$MINICONDA_INSTALL_DIR" bash "$MINICONDA_INSTALL_SH" -b -p "$MINICONDA_INSTALL_DIR" # }}} # {{{ set up testing environment PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update conda --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update --all --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin:$PATH" conda env create --quiet --file "$CONDA_ENVIRONMENT" --name testing source "$MINICONDA_INSTALL_DIR/bin/activate" testing if test -f "$REQUIREMENTS_TXT"; then conda install --quiet --yes pip pip install -r "$REQUIREMENTS_TXT" fi # }}} PY_EXE=python ${PY_EXE} setup.py install conda list Loading
build-and-benchmark-py-project.sh 0 → 100644 +46 −0 Original line number Diff line number Diff line curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project-within-miniconda.sh source build-py-project-within-miniconda.sh pip install asv conda list PY_EXE=python if [[ ! -z "$PROJECT" ]]; then echo "PROJECT env var not set" exit 1 fi mkdir -p ~/.$PROJECT/asv if [[ ! -z "$CI" ]]; then if [[ "$CI_PROJECT_NAMESPACE" == "inducer" ]]; then ln -s ~/.$PROJECT/asv .asv else # Copy, so that the original folder is not changed. cp -r ~/.$PROJECT/asv .asv fi fi asv machine --yes asv setup --verbose master_commit=`git rev-parse master` test_commit=`git rev-parse HEAD` export PYOPENCL_CTX=port asv run $master_commit...$master_commit~ --skip-existing --verbose asv run $test_commit...$test_commit~ --skip-existing --verbose output=`asv compare $master_commit $test_commit --factor 1 -s` echo "$output" if [[ "$output" = *"worse"* ]]; then echo "Some of the benchmarks have gotten worse" exit 1 fi if [[ "$CI_PROJECT_NAMESPACE" == "inducer" ]]; then asv publish --html-dir ~/.scicomp-benchmarks/asv/$PROJECT fi
build-and-test-py-project-within-miniconda.sh +3 −51 Original line number Diff line number Diff line #! /bin/bash echo "-----------------------------------------------" echo "Current directory: $(pwd)" echo "Conda environment file: ${CONDA_ENVIRONMENT}" echo "Extra pip requirements: ${REQUIREMENTS_TXT}" echo "Extra pytest options: ${PYTEST_ADDOPTS}" echo "PYOPENCL_TEST: ${PYOPENCL_TEST}" echo "PYTEST_ADDOPTS: ${PYTEST_ADDOPTS}" echo "git revision: $(git rev-parse --short HEAD)" echo "git status:" git status -s echo "-----------------------------------------------" if [ "$(uname)" = "Darwin" ]; then PLATFORM=MacOSX else PLATFORM=Linux fi # {{{ download and install MINICONDA_VERSION=3 MINICONDA_INSTALL_DIR=.miniconda${MINICONDA_VERSION} MINICONDA_INSTALL_SH=Miniconda${MINICONDA_VERSION}-latest-${PLATFORM}-x86_64.sh curl -O "https://repo.continuum.io/miniconda/$MINICONDA_INSTALL_SH" rm -Rf "$MINICONDA_INSTALL_DIR" bash "$MINICONDA_INSTALL_SH" -b -p "$MINICONDA_INSTALL_DIR" # }}} # {{{ set up testing environment PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update conda --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update --all --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin:$PATH" conda env create --quiet --file "$CONDA_ENVIRONMENT" --name testing source "$MINICONDA_INSTALL_DIR/bin/activate" testing if test -f "$REQUIREMENTS_TXT"; then conda install --quiet --yes pip pip install -r "$REQUIREMENTS_TXT" fi curl -L -O -k https://gitlab.tiker.net/inducer/ci-support/raw/master/build-py-project-within-miniconda.sh source build-py-project-within-miniconda.sh conda install --quiet --yes pytest # }}} conda list PY_EXE=python ${PY_EXE} setup.py install conda list TESTABLES="" if [ -d test ]; then cd test Loading
build-py-project-within-miniconda.sh 0 → 100644 +56 −0 Original line number Diff line number Diff line #! /bin/bash echo "-----------------------------------------------" echo "Current directory: $(pwd)" echo "Conda environment file: ${CONDA_ENVIRONMENT}" echo "Extra pip requirements: ${REQUIREMENTS_TXT}" echo "Extra pytest options: ${PYTEST_ADDOPTS}" echo "PYOPENCL_TEST: ${PYOPENCL_TEST}" echo "PYTEST_ADDOPTS: ${PYTEST_ADDOPTS}" echo "git revision: $(git rev-parse --short HEAD)" echo "git status:" git status -s echo "-----------------------------------------------" if [ "$(uname)" = "Darwin" ]; then PLATFORM=MacOSX else PLATFORM=Linux fi # {{{ download and install MINICONDA_VERSION=3 MINICONDA_INSTALL_DIR=.miniconda${MINICONDA_VERSION} MINICONDA_INSTALL_SH=Miniconda${MINICONDA_VERSION}-latest-${PLATFORM}-x86_64.sh curl -O "https://repo.continuum.io/miniconda/$MINICONDA_INSTALL_SH" rm -Rf "$MINICONDA_INSTALL_DIR" bash "$MINICONDA_INSTALL_SH" -b -p "$MINICONDA_INSTALL_DIR" # }}} # {{{ set up testing environment PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update conda --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin/:$PATH" conda update --all --yes --quiet PATH="$MINICONDA_INSTALL_DIR/bin:$PATH" conda env create --quiet --file "$CONDA_ENVIRONMENT" --name testing source "$MINICONDA_INSTALL_DIR/bin/activate" testing if test -f "$REQUIREMENTS_TXT"; then conda install --quiet --yes pip pip install -r "$REQUIREMENTS_TXT" fi # }}} PY_EXE=python ${PY_EXE} setup.py install conda list