steps: - bash: | echo "uname: " $(uname) echo "uname -m: " $(uname -m) echo "uname -r:" $(uname -r) echo "uname -s: " $(uname -s) echo "uname -v: " $(uname -v) echo "whoami: " $(whoami) printenv displayName: 'Print env' - bash: | set -exo pipefail export PATH=/opt/python/cp37-cp37m/bin:$PATH pip install --user cmake==3.13.3 curl -L https://install.perlbrew.pl | bash source $HOME/perl5/perlbrew/etc/bashrc perlbrew --notest install perl-5.10.0 - bash: | export PATH=/opt/python/cp37-cp37m/bin:$PATH # PATH for CMake installed above export PATH=$HOME/.local/bin:$PATH # azure bash does not treat intermediate failure as error # https://github.com/Microsoft/azure-pipelines-yaml/issues/135 set -e pipefail # Azure sets "SYSTEM=build" for unknown reasonas, which breaks the OpenSSL configure script # - openssl configure uses ENV{SYSTEM} if available: # https://github.com/openssl/openssl/blob/6d745d740d37d680ff696486218b650512bbbbc6/config#L56 # - error description: # https://developercommunity.visualstudio.com/content/problem/602584/openssl-build-error-when-using-pipelines.htm unset SYSTEM # - manylinux1/gcc4.8 stuff # - perlbrew to get new enough perl for OpenSSL source $HOME/perl5/perlbrew/etc/bashrc perlbrew use perl-5.10.0 export CXXFLAGS="-Wno-unused-parameter -lrt -DKJ_USE_EPOLL=0 -D__BIONIC__=1" export CFLAGS="-Wno-unused-parameter -lrt -DKJ_USE_EPOLL=0 -D__BIONIC__=1" # Avoid CMake EP git errors git config --global user.name 'Azure Pipeline' git config --global user.email 'no-reply@tiledb.io' # Clone Unit-Test-Arrays git clone -q https://github.com/TileDB-Inc/TileDB-Unit-Test-Arrays.git --branch 2.2.0 test/inputs/arrays/read_compatibility_test # Set up bootstrap args bootstrap_args="--enable=verbose,${TILEDB_BUILD_ENABLE}"; if [[ "$TILEDB_FORCE_BUILD_DEPS" == "ON" ]]; then # Add superbuild flag bootstrap_args="${bootstrap_args} --force-build-all-deps"; fi mkdir -p $BUILD_REPOSITORY_LOCALPATH/build cd $BUILD_REPOSITORY_LOCALPATH/build # Configure and build TileDB echo "Bootstrapping with '$bootstrap_args'" $BUILD_REPOSITORY_LOCALPATH/bootstrap $bootstrap_args make -j4 make examples -j4 make -C tiledb install cd $BUILD_REPOSITORY_LOCALPATH/build ls -la make -j4 -C tiledb tiledb_unit # Run tiledb_unit directly with native FS, and disable VFS-specific tests ./tiledb/test/tiledb_unit --durations=yes --vfs native ~[azure] ~[s3] displayName: 'Build and test libtiledb' - bash: | if [[ "$TILEDB_CI_SUCCESS" -ne 1 ]]; then exit 1; fi displayName: 'Test status check' - bash: | set -e pipefail # Display log files if the build failed echo "Dumping log files for failed build" echo "----------------------------------" for f in $(find $BUILD_REPOSITORY_LOCALPATH/build -name *.log); do echo "------" echo $f echo "======" cat $f done; condition: failed() # only run this job if the build step failed displayName: "Print log files (failed build only)"