Skip to content

Commit 732258a

Browse files
committed
ci: Test the JSON output
1 parent f518027 commit 732258a

File tree

3 files changed

+49
-12
lines changed

3 files changed

+49
-12
lines changed

.travis.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,22 @@ language: c
44
install:
55
- sudo apt-get install -y --force-yes gcc make cmake libglib2.0-dev
66
- sudo apt-get install -y --force-yes autoconf automake libtool xutils-dev
7+
- sudo apt-get install -y --force-yes jq
78
env:
89
matrix:
910
- BUILD_TYPE=Debug
1011
- BUILD_TYPE=Release
11-
script:
12+
before_script:
1213
- set -e
1314
- mkdir /tmp/oio
14-
- export CMAKE_OPTS='-DCMAKE_INSTALL_PREFIX=/tmp/oio -DLD_LIBDIR=lib'
15+
- export CMAKE_OPTS='-DCMAKE_INSTALL_PREFIX=/tmp/ROOT'
1516
- cmake ${CMAKE_OPTS} -DCMAKE_BUILD_TYPE=$BUILD_TYPE .
1617
- make all
1718
- make install
19+
script:
20+
- set -e
21+
- export PATH="$PATH:/tmp/ROOT/bin" TMPDIR=/tmp
22+
- ./tools/gridinit-genconf.sh 15
23+
- gridinit -d -s gridinit /tmp/gridinit/gridinit.conf
24+
- ./tools/cycle.sh
25+
- pkill gridinit

tools/cycle.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/usr/bin/env bash
2+
set -e
3+
set -x
4+
5+
CMD="gridinit_cmd -S /tmp/gridinit/gridinit.sock"
6+
7+
$CMD -f json status | jq
8+
9+
for G in @test-0 @test-1 '' '@test-0 @test-1' ; do
10+
$CMD status $G
11+
$CMD stop $G
12+
$CMD start $G
13+
$CMD status $G
14+
done
15+
16+
$CMD -f json status | jq
17+

tools/gridinit-genconf.sh

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,42 @@
11
#!/usr/bin/env bash
22
set -e
3-
MAX=$1
4-
shift
3+
set -x
54

5+
MAX=$1 ; shift
66
[[ -n "$MAX" ]]
77

8-
cat > /tmp/gridinit.conf <<EOF
8+
[[ -d "$TMPDIR" ]]
9+
BASEDIR="${TMPDIR}/gridinit"
10+
mkdir -p "$BASEDIR"
11+
12+
cat > "$BASEDIR/gridinit.conf" <<EOF
913
[Default]
10-
listen=/tmp/gridinit.sock
11-
pidfile=/tmp/gridinit.pid
12-
working_dir=/tmp
14+
listen=$BASEDIR/gridinit.sock
15+
pidfile=$BASEDIR/gridinit.pid
16+
working_dir=$BASEDIR
1317
inherit_env=1
1418
limit.core_size=0
1519
limit.max_files=256
1620
limit.stack_size=32
21+
include=$BASEDIR/{*,*/*}.conf
22+
1723
EOF
1824

19-
for i in $(seq ${MAX}) ; do
20-
cat >> /tmp/gridinit.conf <<EOF
25+
for i in 0 1 2 ; do
26+
if ! [[ -e "$BASEDIR/$i" ]] ; then
27+
mkdir "$BASEDIR/$i"
28+
fi
29+
done
2130

31+
for i in $(seq ${MAX}) ; do
32+
sub=$((i%3))
33+
cat >> $BASEDIR/$sub/service-${i}.conf <<EOF
2234
[service.TEST-$i]
23-
group=test
35+
group=test-$((i%2))
2436
on_die=respawn
2537
enabled=true
2638
start_at_boot=true
27-
command=/bin/sleep $((i+15))
39+
command=/bin/sleep $((i+30))
2840
EOF
2941
done
3042

0 commit comments

Comments
 (0)