|
8 | 8 | DISPLAY: '0:0' |
9 | 9 |
|
10 | 10 | jobs: |
11 | | - linux: |
12 | | - strategy: |
13 | | - matrix: |
14 | | - include: |
15 | | - - DOCKER_IMAGE: ubuntu:trusty |
16 | | - - DOCKER_IMAGE: ubuntu:xenial |
17 | | - - DOCKER_IMAGE: ubuntu:bionic |
18 | | - - DOCKER_IMAGE: ubuntu:focal |
19 | | - - DOCKER_IMAGE: debian:stretch |
20 | | - - DOCKER_IMAGE: ubuntu:trusty |
21 | | - ROS_DISTRO: indigo |
22 | | - - DOCKER_IMAGE: ubuntu:xenial |
23 | | - ROS_DISTRO: kinetic |
24 | | - - DOCKER_IMAGE: ubuntu:bionic |
25 | | - ROS_DISTRO: meodic |
26 | | - - DOCKER_IMAGE: ubuntu:focal |
27 | | - ROS_DISTRO: noetic |
28 | | - - DOCKER_IMAGE: osrf/ubuntu_armhf:trusty |
29 | | - - DOCKER_IMAGE: osrf/ubuntu_armhf:xenial |
30 | | - - DOCKER_IMAGE: osrf/ubuntu_arm64:trusty |
31 | | - - DOCKER_IMAGE: osrf/ubuntu_arm64:xenial |
32 | | - - QEMU: aarch64 |
33 | | - DOCKER_IMAGE: arm64v8/ubuntu:bionic |
34 | | - - QEMU: aarch64 |
35 | | - DOCKER_IMAGE: arm64v8/ubuntu:focal |
36 | | - - DOCKER_IMAGE: osrf/debian_arm64:stretch |
37 | | - - DOCKER_IMAGE: amd64/debian:unstable |
38 | | - # |
39 | | - - QEMU: amd64 |
40 | | - DOCKER_IMAGE: amd64/debian:unstable # amd64 |
41 | | - - QEMU: aarch64 |
42 | | - DOCKER_IMAGE: arm64v8/debian:buster # arm64 |
43 | | - - QEMU: arm |
44 | | - DOCKER_IMAGE: arm32v5/debian:jessie # armel |
45 | | - - QEMU: arm |
46 | | - DOCKER_IMAGE: arm32v7/debian:jessie # armhf |
47 | | - # hppa |
48 | | - # hurd-i386 |
49 | | - - QEMU: i386 |
50 | | - DOCKER_IMAGE: i386/debian:unstable # i386 |
51 | | - - QEMU: i386 |
52 | | - DOCKER_IMAGE: i386/debian:buster # i386 |
53 | | - # ia64 |
54 | | - # m68k |
55 | | - - QEMU: mips64el |
56 | | - DOCKER_IMAGE: loongnix/debian:buster # mips64el |
57 | | - # mipsel |
58 | | - # - QEMU: ppc |
59 | | - # DOCKER_IMAGE: vicamo/debian:unstable-powerpc # powerpc / somehow failing loading eusgl |
60 | | - - QEMU: ppc64le |
61 | | - DOCKER_IMAGE: ppc64le/debian:buster # ppc64 |
62 | | - # riscv64 |
63 | | - # sh4 |
64 | | - # sparc64 |
65 | | - fail-fast: false |
| 11 | + # linux: |
| 12 | + # strategy: |
| 13 | + # matrix: |
| 14 | + # include: |
| 15 | + # - DOCKER_IMAGE: ubuntu:trusty |
| 16 | + # - DOCKER_IMAGE: ubuntu:xenial |
| 17 | + # - DOCKER_IMAGE: ubuntu:bionic |
| 18 | + # - DOCKER_IMAGE: ubuntu:focal |
| 19 | + # - DOCKER_IMAGE: debian:stretch |
| 20 | + # - DOCKER_IMAGE: ubuntu:trusty |
| 21 | + # ROS_DISTRO: indigo |
| 22 | + # - DOCKER_IMAGE: ubuntu:xenial |
| 23 | + # ROS_DISTRO: kinetic |
| 24 | + # - DOCKER_IMAGE: ubuntu:bionic |
| 25 | + # ROS_DISTRO: meodic |
| 26 | + # - DOCKER_IMAGE: ubuntu:focal |
| 27 | + # ROS_DISTRO: noetic |
| 28 | + # - DOCKER_IMAGE: osrf/ubuntu_armhf:trusty |
| 29 | + # - DOCKER_IMAGE: osrf/ubuntu_armhf:xenial |
| 30 | + # - DOCKER_IMAGE: osrf/ubuntu_arm64:trusty |
| 31 | + # - DOCKER_IMAGE: osrf/ubuntu_arm64:xenial |
| 32 | + # - QEMU: aarch64 |
| 33 | + # DOCKER_IMAGE: arm64v8/ubuntu:bionic |
| 34 | + # - QEMU: aarch64 |
| 35 | + # DOCKER_IMAGE: arm64v8/ubuntu:focal |
| 36 | + # - DOCKER_IMAGE: osrf/debian_arm64:stretch |
| 37 | + # - DOCKER_IMAGE: amd64/debian:unstable |
| 38 | + # # |
| 39 | + # - QEMU: amd64 |
| 40 | + # DOCKER_IMAGE: amd64/debian:unstable # amd64 |
| 41 | + # - QEMU: aarch64 |
| 42 | + # DOCKER_IMAGE: arm64v8/debian:buster # arm64 |
| 43 | + # - QEMU: arm |
| 44 | + # DOCKER_IMAGE: arm32v5/debian:jessie # armel |
| 45 | + # - QEMU: arm |
| 46 | + # DOCKER_IMAGE: arm32v7/debian:jessie # armhf |
| 47 | + # # hppa |
| 48 | + # # hurd-i386 |
| 49 | + # - QEMU: i386 |
| 50 | + # DOCKER_IMAGE: i386/debian:unstable # i386 |
| 51 | + # - QEMU: i386 |
| 52 | + # DOCKER_IMAGE: i386/debian:buster # i386 |
| 53 | + # # ia64 |
| 54 | + # # m68k |
| 55 | + # - QEMU: mips64el |
| 56 | + # DOCKER_IMAGE: loongnix/debian:buster # mips64el |
| 57 | + # # mipsel |
| 58 | + # # - QEMU: ppc |
| 59 | + # # DOCKER_IMAGE: vicamo/debian:unstable-powerpc # powerpc / somehow failing loading eusgl |
| 60 | + # - QEMU: ppc64le |
| 61 | + # DOCKER_IMAGE: ppc64le/debian:buster # ppc64 |
| 62 | + # # riscv64 |
| 63 | + # # sh4 |
| 64 | + # # sparc64 |
| 65 | + # fail-fast: false |
66 | 66 |
|
67 | | - runs-on: ubuntu-18.04 |
68 | | - timeout-minutes: 60 |
69 | | - |
70 | | - name: linux |
| 67 | + # runs-on: ubuntu-18.04 |
| 68 | + # timeout-minutes: 60 |
71 | 69 |
|
72 | | - steps: |
73 | | - - name: Checkout |
74 | | - uses: actions/checkout@v2 |
75 | | - - name: Run test |
76 | | - shell: bash |
77 | | - run: | |
78 | | - set -x |
79 | | - export CI_SOURCE_PATH=$(pwd) |
80 | | - export REPOSITORY_NAME=${PWD##*/} |
81 | | - export TRAVIS_BRANCH=${GITHUB_REF#refs/heads/} |
82 | | - export TRAVIS_OS_NAME=linux |
83 | | - export DOCKER_IMAGE=${{matrix.DOCKER_IMAGE}} |
84 | | - export ROS_DISTRO=${{matrix.ROS_DISTRO}} |
85 | | - export QEMU=${{matrix.QEMU}} |
86 | | - export MAKEFLAGS="-j4" |
87 | | - if [[ "$QEMU" != "" || "$DOCKER_IMAGE" == *"arm"* ]]; then sudo apt-get update -y -qq; fi |
88 | | - if [[ "$QEMU" != "" ]]; then sudo apt-get install -y -qq qemu-user-static; ls /usr/bin/qemu-*-static; export QEMU_VOLUME="-v /usr/bin/qemu-$QEMU-static:/usr/bin/qemu-$QEMU-static" ; fi |
89 | | - if [[ "$QEMU" != "" ]]; then docker run --rm --privileged multiarch/qemu-user-static:register; fi |
90 | | - if [[ "$DOCKER_IMAGE" == *"arm"* ]]; then sudo apt-get install -y -qq qemu-user-static; fi |
91 | | - if [[ "$DOCKER_IMAGE" == *"arm"* ]]; then git clone http://github.com/euslisp/jskeus ${HOME}/jskeus; fi |
92 | | - echo "Testing branch $TRAVIS_BRANCH of $REPOSITORY_NAME on $QEMU_VOLUME" |
93 | | - docker run --rm $QEMU_VOLUME -v $HOME:$HOME -e "QEMU=$QEMU" -e "TRAVIS_OS_NAME=$TRAVIS_OS_NAME" -e "CI_SOURCE_PATH=$CI_SOURCE_PATH" -e "HOME=$HOME" -e "MAKEFLAGS=$MAKEFLAGS" -e "DOCKER_IMAGE=$DOCKER_IMAGE" -t $DOCKER_IMAGE sh -c "cd $CI_SOURCE_PATH; ./.travis.sh" |
| 70 | + # name: linux |
94 | 71 |
|
| 72 | + # steps: |
| 73 | + # - name: Checkout |
| 74 | + # uses: actions/checkout@v2 |
| 75 | + # - name: Run test |
| 76 | + # shell: bash |
| 77 | + # run: | |
| 78 | + # set -x |
| 79 | + # export CI_SOURCE_PATH=$(pwd) |
| 80 | + # export REPOSITORY_NAME=${PWD##*/} |
| 81 | + # export TRAVIS_BRANCH=${GITHUB_REF#refs/heads/} |
| 82 | + # export TRAVIS_OS_NAME=linux |
| 83 | + # export DOCKER_IMAGE=${{matrix.DOCKER_IMAGE}} |
| 84 | + # export ROS_DISTRO=${{matrix.ROS_DISTRO}} |
| 85 | + # export QEMU=${{matrix.QEMU}} |
| 86 | + # export MAKEFLAGS="-j4" |
| 87 | + # if [[ "$QEMU" != "" || "$DOCKER_IMAGE" == *"arm"* ]]; then sudo apt-get update -y -qq; fi |
| 88 | + # if [[ "$QEMU" != "" ]]; then sudo apt-get install -y -qq qemu-user-static; ls /usr/bin/qemu-*-static; export QEMU_VOLUME="-v /usr/bin/qemu-$QEMU-static:/usr/bin/qemu-$QEMU-static" ; fi |
| 89 | + # if [[ "$QEMU" != "" ]]; then docker run --rm --privileged multiarch/qemu-user-static:register; fi |
| 90 | + # if [[ "$DOCKER_IMAGE" == *"arm"* ]]; then sudo apt-get install -y -qq qemu-user-static; fi |
| 91 | + # if [[ "$DOCKER_IMAGE" == *"arm"* ]]; then git clone http://github.com/euslisp/jskeus ${HOME}/jskeus; fi |
| 92 | + # echo "Testing branch $TRAVIS_BRANCH of $REPOSITORY_NAME on $QEMU_VOLUME" |
| 93 | + # docker run --rm $QEMU_VOLUME -v $HOME:$HOME -e "QEMU=$QEMU" -e "TRAVIS_OS_NAME=$TRAVIS_OS_NAME" -e "CI_SOURCE_PATH=$CI_SOURCE_PATH" -e "HOME=$HOME" -e "MAKEFLAGS=$MAKEFLAGS" -e "DOCKER_IMAGE=$DOCKER_IMAGE" -t $DOCKER_IMAGE sh -c "cd $CI_SOURCE_PATH; ./.travis.sh" |
95 | 94 |
|
96 | | - osx: |
97 | | - runs-on: macos-latest |
| 95 | + # test for non X11/GL environment, i.e. embedded environment |
| 96 | + linux-nox: |
| 97 | + runs-on: ubuntu-latest |
| 98 | + container: ubuntu:20.04 |
98 | 99 | timeout-minutes: 60 |
99 | 100 | steps: |
100 | 101 | - name: Checkout |
101 | 102 | uses: actions/checkout@v2 |
102 | | - - name: Get brew cache directory |
103 | | - id: brew-cache |
104 | | - run: echo "::set-output name=dir::$(brew --cache)/downloads" |
105 | | - - name: Brew cache |
106 | | - uses: actions/cache@v2 |
107 | | - with: |
108 | | - path: ${{ steps.brew-cache.outputs.dir }} |
109 | | - key: ${{ runner.os }}-${{ hashFiles('.github/workflows/Brewfile') }} |
110 | | - - name: Brew config |
| 103 | + - name: Setup environmnet |
| 104 | + shell: bash |
| 105 | + run: | |
| 106 | + set -xe |
| 107 | + apt update -y -qq && apt install -y -qq make gcc g++ libjpeg-dev |
| 108 | + dpkg --get-selections | egrep -e '(x11|gl)' || echo "OK" ## show selected X/GL |
| 109 | + dpkg --get-selections | egrep -q -e '(x11|gl)' && exit 1 ## exit 1, when X/GL found |
| 110 | + exit 0 |
| 111 | + - name: Compile eusg |
| 112 | + shell: bash |
111 | 113 | run: | |
112 | | - cd .github/workflows/ |
113 | | - brew config |
| 114 | + set -xe |
| 115 | + export EUSDIR=$(pwd) |
| 116 | + export ARCHDIR=Linux64 |
| 117 | + cd lisp |
| 118 | + ln -sf Makefile.$ARCHDIR Makefile |
| 119 | + make eus0 eus1 eus2 eusg |
114 | 120 | - name: Run test |
115 | 121 | shell: bash |
116 | 122 | run: | |
117 | | - set -x |
118 | | - export CI_SOURCE_PATH=$(pwd) |
119 | | - export REPOSITORY_NAME=${PWD##*/} |
120 | | - export TRAVIS_BRANCH=${GITHUB_REF#refs/heads/} |
121 | | - export TRAVIS_OS_NAME=osx |
122 | | - export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH" |
123 | | - export LC_CTYPE=C |
124 | | - (cd ${HOME}; git clone --depth 1 http://github.com/euslisp/jskeus jskeus) |
125 | | - (cd ${HOME}/jskeus; patch -f -p1 < ${CI_SOURCE_PATH}/.github/workflows/fix-dylib-location.patch || echo "OK") |
126 | | - bash -x ./.travis.sh |
127 | | - - name: Cleanup some brew downloads |
128 | | - run: cd ${{ steps.brew-cache.outputs.dir }} && ls -lsS | head -n 10 | awk '{ print $10 }' | xargs rm -rf |
| 123 | + export EUSDIR=$(pwd) |
| 124 | + export ARCHDIR=Linux64 |
| 125 | + export PATH=$EUSDIR/$ARCHDIR/bin:$EUSDIR/$ARCHDIR/lib:$PATH |
| 126 | + export LD_LIBRARY_PATH=$EUSDIR/$ARCHDIR/lib:$EUSDIR/$ARCHDIR/bin:$LD_LIBRARY_PATH |
| 127 | + set -xe |
| 128 | + (cd test; make) |
| 129 | + export EXIT_STATUS=0; for test_l in test/*.l; do eusg $test_l; export TMP_EXIT_STATUS=$?; export EXIT_STATUS=`expr $TMP_EXIT_STATUS + $EXIT_STATUS`; done; [ $EXIT_STATUS == 0 ] || exit 1 |
| 130 | + - name: Check jskeus |
| 131 | + shell: bash |
| 132 | + run: | |
| 133 | + export EUSDIR=$(pwd) |
| 134 | + export ARCHDIR=Linux64 |
| 135 | + export PATH=$EUSDIR/$ARCHDIR/bin:$EUSDIR/$ARCHDIR/lib:$PATH |
| 136 | + export LD_LIBRARY_PATH=$EUSDIR/$ARCHDIR/lib:$EUSDIR/$ARCHDIR/bin:$LD_LIBRARY_PATH |
| 137 | + set -xe |
| 138 | + apt install -y -qq git |
| 139 | + git clone --depth 1 https://github.com/euslisp/jskeus |
| 140 | + eusg lib/llib/unittest.l '(progn (init-unit-test)(load "jskeus/irteus/irtrobot.l"))' |
| 141 | + eusg lib/llib/unittest.l '(progn (init-unit-test)(load "jskeus/irteus/irtsensor.l"))' |
| 142 | +
|
| 143 | + # osx: |
| 144 | + # runs-on: macos-latest |
| 145 | + # timeout-minutes: 60 |
| 146 | + # steps: |
| 147 | + # - name: Checkout |
| 148 | + # uses: actions/checkout@v2 |
| 149 | + # - name: Get brew cache directory |
| 150 | + # id: brew-cache |
| 151 | + # run: echo "::set-output name=dir::$(brew --cache)/downloads" |
| 152 | + # - name: Brew cache |
| 153 | + # uses: actions/cache@v2 |
| 154 | + # with: |
| 155 | + # path: ${{ steps.brew-cache.outputs.dir }} |
| 156 | + # key: ${{ runner.os }}-${{ hashFiles('.github/workflows/Brewfile') }} |
| 157 | + # - name: Brew config |
| 158 | + # run: | |
| 159 | + # cd .github/workflows/ |
| 160 | + # brew config |
| 161 | + # - name: Run test |
| 162 | + # shell: bash |
| 163 | + # run: | |
| 164 | + # set -x |
| 165 | + # export CI_SOURCE_PATH=$(pwd) |
| 166 | + # export REPOSITORY_NAME=${PWD##*/} |
| 167 | + # export TRAVIS_BRANCH=${GITHUB_REF#refs/heads/} |
| 168 | + # export TRAVIS_OS_NAME=osx |
| 169 | + # export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH" |
| 170 | + # export LC_CTYPE=C |
| 171 | + # (cd ${HOME}; git clone --depth 1 http://github.com/euslisp/jskeus jskeus) |
| 172 | + # (cd ${HOME}/jskeus; patch -f -p1 < ${CI_SOURCE_PATH}/.github/workflows/fix-dylib-location.patch || echo "OK") |
| 173 | + # bash -x ./.travis.sh |
| 174 | + # - name: Cleanup some brew downloads |
| 175 | + # run: cd ${{ steps.brew-cache.outputs.dir }} && ls -lsS | head -n 10 | awk '{ print $10 }' | xargs rm -rf |
0 commit comments