authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-24 14:09:09-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-24 19:46:11-04:00
log099532af87543eb379c260091701e4e0f38b6797
tree03db5c98d4b1577a61f8e286789040c93ba4deac
parentad438a95c528c4a2013e3e7fb99ea9a260143eb3
signature Commit is signed but in an unrecognized format.

add Drone Cloud CI configuration


3 files changed, 75 insertions(+), 1 deletions(-)

ci/drone/drone.yml created+25
...@@ -0,0 +1,25 @@
1---
2kind: pipeline
3name: test-aarch64-linux-gnu
4
5platform:
6 arch: arm64
7
8steps:
9- name: build-and-test
10 image: alpine:edge
11 commands:
12 - ./ci/drone/linux_script aarch64 linux musl
13
14---
15kind: pipeline
16name: test-arm-linux-gnueabihf
17
18platform:
19 arch: arm
20
21steps:
22- name: build-and-test
23 image: alpine:edge
24 commands:
25 - ./ci/drone/linux_script arm linux musleabihf
ci/drone/linux_script created+49
...@@ -0,0 +1,49 @@
1#!/bin/sh
2
3set -x
4set -e
5
6TRIPLEARCH="$0"
7TRIPLEOS="$1"
8TRIPLEABI="$2"
9BUILDDIR="$(pwd)"
10DISTDIR="$(pwd)/dist"
11
12apk update
13apk add gcc g++ cmake make libc-dev binutils libstdc++ py3-pip clang-static llvm9-static xz llvm9-dev clang-dev zlib-static libxml2-dev
14pip3 install s3cmd
15
16mkdir build
17cd build
18cmake .. -DCMAKE_BUILD_TYPE=Release "-DCMAKE_INSTALL_PREFIX=$DISTDIR" -DZIG_STATIC=ON
19
20make -j$(nproc) install
21./zig build test
22
23if [ -n "$DRONE_PULL_REQUEST" ]; then
24 mv ../LICENSE "$DISTDIR/"
25 mv ../zig-cache/langref.html "$DISTDIR/"
26 mv "$DISTDIR/bin/zig" "$DISTDIR/"
27 rmdir "$DISTDIR/bin"
28
29 GITBRANCH="$DRONE_BRANCH"
30 VERSION=$("$DISTDIR/zig" version)
31 DIRNAME="zig-$TRIPLEOS-$TRIPLEARCH-$VERSION"
32 TARBALL="$DIRNAME.tar.xz"
33 mv "$DISTDIR" "$DIRNAME"
34 tar cfJ "$TARBALL" "$DIRNAME"
35
36 s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" "$TARBALL" s3://ziglang.org/builds/
37
38 SHASUM=$(shasum -a 256 $TARBALL | cut '-d ' -f1)
39 BYTESIZE=$(wc -c < $TARBALL)
40
41 JSONFILE="$TRIPLEARCH-$TRIPLEOS-$GITBRANCH.json"
42 touch $JSONFILE
43 echo "{\"tarball\": \"$TARBALL\"," >>$JSONFILE
44 echo "\"shasum\": \"$SHASUM\"," >>$JSONFILE
45 echo "\"size\": \"$BYTESIZE\"}" >>$JSONFILE
46
47 s3cmd put -P --add-header="Cache-Control: max-age=0, must-revalidate" "$JSONFILE" "s3://ziglang.org/builds/$JSONFILE"
48 s3cmd put -P "$JSONFILE" "s3://ziglang.org/builds/$TRIPLEARCH-$TRIPLEOS-$VERSION.json"
49fi
ci/srht/freebsd_script+1-1
...@@ -15,7 +15,7 @@ tar xf "$CACHE_BASENAME.tar.xz"...@@ -15,7 +15,7 @@ tar xf "$CACHE_BASENAME.tar.xz"
15cd $ZIGDIR15cd $ZIGDIR
16mkdir build16mkdir build
17cd build17cd build
18cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$PREFIX -DCMAKE_INSTALL_PREFIX=$(pwd)/release -DZIG_STATIC=ON18cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$PREFIX "-DCMAKE_INSTALL_PREFIX=$(pwd)/release" -DZIG_STATIC=ON
19make $JOBS install19make $JOBS install
2020
21release/bin/zig build test-fmt21release/bin/zig build test-fmt