aboutsummaryrefslogtreecommitdiffstats
path: root/.circleci
diff options
context:
space:
mode:
authorPierre Fenoll <[email protected]>2018-05-03 17:55:48 +0200
committerGitHub <[email protected]>2018-05-03 17:55:48 +0200
commit9c615ea9cc2723cae5d0c0bf9cc9965350afebe7 (patch)
tree51634c9eb6280eea5935811d1f31bf1444c6fcb0 /.circleci
parent8d96c2baaed87a53432c5e4e2947423d3ebaab1e (diff)
downloadkerl-9c615ea9cc2723cae5d0c0bf9cc9965350afebe7.tar.gz
kerl-9c615ea9cc2723cae5d0c0bf9cc9965350afebe7.tar.bz2
kerl-9c615ea9cc2723cae5d0c0bf9cc9965350afebe7.zip
Testing odbc+wx on OTP 20.3 on a slim jessie (#271)
* wx-20.3: seeing about kerl/kerl/issues/270 * wx-20.3: less failible test + less deps * wx-20.3: move linux tests out of TravisCI into CircleCI * wx-20.3: always use git backend (erlang.org is still down) * wx-20.3: work around fact that erlang.org is down in .travis.yml * wx-20.3: fix some things * wx-20.3: looks like skipping happens too late * Revert "wx-20.3: looks like skipping happens too late" This reverts commit e0600cefa71760e9bd74e7efc37089d5d75e764e. * wx-20.3: that should fix it * wx-20.3: run shellcheck in circle, now travis is only about osx! * wx-20.3: that did not fix it (cc @mrallen1) * wx-20.3: shellcheck stable segfaults? * wx-20.3: should fix shellcheck segfault * SC1117: Backslash is literal in "\!". Prefer explicit escaping: "\\!". Not sure about the csh one. @mcrallen1 you have a clue? * wx-20.3: SC2207: Prefer mapfile or read -a to split command output (or quote to avoid splitting). * wx-20.3: SC2154: words is referenced but not assigned. * wx-20.3: replace some double quotes with simple ones * wx-20.3: ps not found on debian9!? * wx-20.3: what now * wx-20.3: lets try a later vsn * wx-20.3: some cleaning up * wx-20.3: YAML fun * wx-20.3: wat
Diffstat (limited to '.circleci')
-rw-r--r--.circleci/config.yml185
1 files changed, 140 insertions, 45 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
index 3467f2b..b555249 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -3,94 +3,189 @@ workflows:
version: 2
test-workflow:
jobs:
- - debian8_R15B03-1
- - centos6_20.2
- alpine3.7_20.3
+ - centos7_19.3
+ - centos6_18.3
+ - debian9_17.5__wx_odbc__shellcheck
+ - trusty_17.0
+ - debian8_R15B03-1
jobs:
- debian8_R15B03-1:
+ alpine3.7_20.3:
docker:
- - image: debian:8
+ - image: alpine:3.7
environment:
- - _KERL_VSN: R15B03-1
- - KERL_CONFIGURE_DISABLE_APPLICATIONS: 'odbc'
+ - _KERL_VSN: 20.3
+ - KERL_BUILD_BACKEND: git
+ - KERL_BUILD_DOCS: 'yes'
steps:
- - run: apt-get update && apt-get upgrade -y
- - run: apt-get install -y git curl build-essential libncurses-dev libssl-dev
+ - run: apk update && apk upgrade
+ - run: |
+ apk add curl ca-certificates \
+ dpkg-dev dpkg \
+ gcc g++ libc-dev linux-headers make autoconf ncurses-dev tar \
+ openssl-dev lksctp-tools-dev lksctp-tools \
+ libxslt git
- checkout
- run: ./kerl update releases
- - run:
- command: ./kerl build "$_KERL_VSN" "$_KERL_VSN"
+ - run: &build_on_all_cores
+ command:
+ |
+ export MAKEFLAGS="-j$(getconf _NPROCESSORS_ONLN)"
+ ./kerl build "$_KERL_VSN" "$_KERL_VSN" | tee build.log
no_output_timeout: 45m
- run: ./kerl install "$_KERL_VSN" "install_$_KERL_VSN"
- run: ./kerl status
+ - run: &activate_then_test_for_crypto
+ |
+ source $(./kerl path install_$_KERL_VSN)/activate
+ erl -s crypto -s init stop
+ kerl_deactivate
+ - run: ./kerl delete installation $(./kerl path install_$_KERL_VSN)
+ - run: ./kerl delete build "$_KERL_VSN"
+
+ centos7_19.3:
+ docker:
+ - image: centos:7
+ environment:
+ - _KERL_VSN: 19.3
+ - KERL_BUILD_BACKEND: git
+ - KERL_CONFIGURE_DISABLE_APPLICATIONS: odbc
+ steps:
+ - run: yum -y update
- run: |
- set -x
- source $(./kerl path install_$_KERL_VSN)/activate
- erl -s crypto -s init stop
- kerl_deactivate
+ yum -y install curl git \
+ make automake autoconf gcc gcc-c++ \
+ gcc-java \
+ ncurses-devel openssl-devel
+ - checkout
+ - run: ./kerl update releases
+ - run: *build_on_all_cores
+ - run: ./kerl install "$_KERL_VSN" "install_$_KERL_VSN"
+ - run: ./kerl status
+ - run: *activate_then_test_for_crypto
- run: ./kerl delete installation $(./kerl path install_$_KERL_VSN)
- run: ./kerl delete build "$_KERL_VSN"
- centos6_20.2:
+ centos6_18.3:
docker:
- image: centos:6
environment:
- - _KERL_VSN: 20.2
- - KERL_CONFIGURE_DISABLE_APPLICATIONS: 'odbc'
+ - _KERL_VSN: 18.3
+ - KERL_BUILD_BACKEND: git
+ - KERL_CONFIGURE_DISABLE_APPLICATIONS: odbc
steps:
- run: yum -y update
- - run: yum -y install curl ncurses-devel openssl-devel make automake autoconf gcc gcc-c++ gcc-java
+ - run: |
+ yum -y install curl \
+ make automake autoconf gcc gcc-c++ \
+ gcc-java \
+ ncurses-devel openssl-devel
- run: |
yum -y install https://centos6.iuscommunity.org/ius-release.rpm
# CircleCI checkout uses -B which isn't available in CentOS6's packaged git
yum -y install git2u
- checkout
- run: ./kerl update releases
- - run:
- command: ./kerl build "$_KERL_VSN" "$_KERL_VSN"
- no_output_timeout: 45m
+ - run: *build_on_all_cores
- run: ./kerl install "$_KERL_VSN" "install_$_KERL_VSN"
- run: ./kerl status
- - run: |
- set -x
- source $(./kerl path install_$_KERL_VSN)/activate
- erl -s crypto -s init stop
- kerl_deactivate
+ - run: *activate_then_test_for_crypto
- run: ./kerl delete installation $(./kerl path install_$_KERL_VSN)
- run: ./kerl delete build "$_KERL_VSN"
- alpine3.7_20.3:
+ debian9_17.5__wx_odbc__shellcheck:
docker:
- - image: alpine:3.7
+ - image: debian:9
environment:
- - _KERL_VSN: 20.3
- - KERL_CONFIGURE_DISABLE_APPLICATIONS: odbc
+ - _KERL_VSN: 17.5
- KERL_BUILD_BACKEND: git
- - KERL_BUILD_DOCS: 'yes'
+ - SHELLCHECK_URL: https://storage.googleapis.com/shellcheck/shellcheck-stable.linux.x86_64.tar.xz
steps:
- - run: apk update && apk upgrade
+ - run: apt update && apt upgrade -y
- run: |
- apk add curl ca-certificates \
- dpkg-dev dpkg \
- gcc g++ libc-dev linux-headers make autoconf ncurses-dev tar \
- openssl-dev unixodbc-dev lksctp-tools-dev \
- lksctp-tools \
- libxslt git
+ apt install -y --no-install-recommends \
+ curl ca-certificates \
+ git autoconf dpkg-dev gcc g++ make libncurses-dev \
+ libssl1.0.2 libssl1.0-dev libsctp1 libsctp-dev \
+ libodbc1 unixodbc-dev \
+ libwxgtk3.0-dev libgl1-mesa-dev libglu1-mesa-dev libpng16-16 libpng-dev \
+ procps
+ - run: wx-config --version
- checkout
+ - run: |
+ curl -#fSLo shellcheck.tar.xz $SHELLCHECK_URL
+ tar --xz -xvf shellcheck.tar.xz
+ mv shellcheck-*/shellcheck /usr/local/bin
+ rm -vr shellcheck-*/ shellcheck.tar.xz
+ shellcheck --version
+ - run: |
+ shellcheck ./kerl
+ shellcheck ./bash_completion/kerl
+ # https://github.com/koalaman/shellcheck/issues/809
+ # shellcheck ./zsh_completion/_kerl
- run: ./kerl update releases
- - run:
- command: |
- export MAKEFLAGS="-j$(getconf _NPROCESSORS_ONLN)"
- ./kerl build "$_KERL_VSN" "$_KERL_VSN"
- no_output_timeout: 45m
+ - run: *build_on_all_cores
+ - run: cat build.log
+ - run: "! grep -F 'ODBC library' build.log"
+ - run: "! grep -F 'wx will NOT be usable' build.log"
- run: ./kerl install "$_KERL_VSN" "install_$_KERL_VSN"
- run: ./kerl status
- run: |
- set -x
+ shellcheck $(./kerl path install_$_KERL_VSN)/activate
+ # shellcheck $(./kerl path install_$_KERL_VSN)/activate.csh
+ # shellcheck $(./kerl path install_$_KERL_VSN)/activate.fish
+ - run: |
source $(./kerl path install_$_KERL_VSN)/activate
- erl -s crypto -s init stop
+ for app in odbc crypto wx; do
+ echo TEST app $app
+ erl -noshell -eval "case application:ensure_all_started($app) of {ok,[_|_]} -> init:stop(); _ -> init:stop(1) end."
+ echo PASS app $app
+ done
kerl_deactivate
- run: ./kerl delete installation $(./kerl path install_$_KERL_VSN)
- run: ./kerl delete build "$_KERL_VSN"
+
+ trusty_17.0:
+ docker:
+ - image: ubuntu:trusty
+ environment:
+ - _KERL_VSN: '17.0'
+ # - KERL_BUILD_BACKEND: git ## This would cause the build to fail?!
+ - KERL_CONFIGURE_DISABLE_APPLICATIONS: 'wx odbc'
+ steps:
+ - run: apt update && apt upgrade -y
+ - run: |
+ apt install -y --no-install-recommends \
+ curl ca-certificates \
+ git autoconf automake dpkg-dev gcc g++ make libncurses-dev \
+ libssl1.0.0 libssl-dev libsctp1 libsctp-dev
+ - checkout
+ - run: ./kerl update releases
+ - run: *build_on_all_cores
+ - run: ./kerl install "$_KERL_VSN" "install_$_KERL_VSN"
+ - run: ./kerl status
+ - run: *activate_then_test_for_crypto
+ - run: ./kerl delete installation $(./kerl path install_$_KERL_VSN)
+ - run: ./kerl delete build "$_KERL_VSN"
+
+ debian8_R15B03-1:
+ docker:
+ - image: debian:8
+ environment:
+ - _KERL_VSN: R15B03-1
+ - KERL_BUILD_BACKEND: git
+ - KERL_CONFIGURE_DISABLE_APPLICATIONS: odbc
+ steps:
+ - run: apt-get update && apt-get upgrade -y
+ - run: |
+ apt-get install -y git curl build-essential automake autoconf libncurses-dev libssl-dev
+ - checkout
+ - run: ./kerl update releases
+ - run: *build_on_all_cores
+ - run: ./kerl install "$_KERL_VSN" "install_$_KERL_VSN"
+ - run: ./kerl status
+ - run: *activate_then_test_for_crypto
+ - run: ./kerl delete installation $(./kerl path install_$_KERL_VSN)
+ - run: ./kerl delete build "$_KERL_VSN"