build: downloads and bundles phantomjs for darwin and windows.

This commit is contained in:
Leonard Gram
2018-05-18 11:38:31 +02:00
parent 3933cb6bf6
commit 7ca346e9f0
3 changed files with 52 additions and 0 deletions

View File

@@ -77,6 +77,15 @@ jobs:
- run: - run:
name: prepare build tools name: prepare build tools
command: '/tmp/bootstrap.sh' command: '/tmp/bootstrap.sh'
- restore_cache:
key: phantomjs-binaries-{{ checksum "scripts/build/download-phantomjs.sh" }}
- run:
name: download phantomjs binaries
command: './scripts/build/download-phantomjs.sh'
- save_cache:
key: phantomjs-binaries-{{ checksum "scripts/build/download-phantomjs.sh" }}
paths:
- /tmp/phantomjs
- run: - run:
name: build and package grafana name: build and package grafana
command: './scripts/build/build.sh' command: './scripts/build/build.sh'

View File

@@ -47,7 +47,20 @@ if [ "$CIRCLE_TAG" != "" ]; then
go run build.go -goos linux -pkg-arch amd64 -includeBuildNumber=false package-only latest go run build.go -goos linux -pkg-arch amd64 -includeBuildNumber=false package-only latest
go run build.go -goos linux -pkg-arch armv7 -includeBuildNumber=false package-only go run build.go -goos linux -pkg-arch armv7 -includeBuildNumber=false package-only
go run build.go -goos linux -pkg-arch arm64 -includeBuildNumber=false package-only go run build.go -goos linux -pkg-arch arm64 -includeBuildNumber=false package-only
if [ -d '/tmp/phantomjs/darwin' ]; then
cp /tmp/phantomjs/darwin/phantomjs tools/phantomjs/phantomjs
else
echo 'PhantomJS binaries for darwin missing!'
fi
go run build.go -goos darwin -pkg-arch amd64 -includeBuildNumber=false package-only go run build.go -goos darwin -pkg-arch amd64 -includeBuildNumber=false package-only
if [ -d '/tmp/phantomjs/windows' ]; then
cp /tmp/phantomjs/windows/phantomjs.exe tools/phantomjs/phantomjs.exe
rm tools/phantomjs/phantomjs
else
echo 'PhantomJS binaries for darwin missing!'
fi
go run build.go -goos windows -pkg-arch amd64 -includeBuildNumber=false package-only go run build.go -goos windows -pkg-arch amd64 -includeBuildNumber=false package-only
else else
echo "Building frontend for $CIRCLE_BRANCH" echo "Building frontend for $CIRCLE_BRANCH"
@@ -56,6 +69,19 @@ else
go run build.go -goos linux -pkg-arch amd64 -buildNumber=${CIRCLE_BUILD_NUM} package-only latest go run build.go -goos linux -pkg-arch amd64 -buildNumber=${CIRCLE_BUILD_NUM} package-only latest
go run build.go -goos linux -pkg-arch armv7 -buildNumber=${CIRCLE_BUILD_NUM} package-only go run build.go -goos linux -pkg-arch armv7 -buildNumber=${CIRCLE_BUILD_NUM} package-only
go run build.go -goos linux -pkg-arch arm64 -buildNumber=${CIRCLE_BUILD_NUM} package-only go run build.go -goos linux -pkg-arch arm64 -buildNumber=${CIRCLE_BUILD_NUM} package-only
if [ -d '/tmp/phantomjs/darwin' ]; then
cp /tmp/phantomjs/darwin/phantomjs tools/phantomjs/phantomjs
else
echo 'PhantomJS binaries for darwin missing!'
fi
go run build.go -goos darwin -pkg-arch amd64 -buildNumber=${CIRCLE_BUILD_NUM} package-only go run build.go -goos darwin -pkg-arch amd64 -buildNumber=${CIRCLE_BUILD_NUM} package-only
if [ -d '/tmp/phantomjs/windows' ]; then
cp /tmp/phantomjs/windows/phantomjs.exe tools/phantomjs/phantomjs.exe
rm tools/phantomjs/phantomjs
else
echo 'PhantomJS binaries for windows missing!'
fi
go run build.go -goos windows -pkg-arch amd64 -buildNumber=${CIRCLE_BUILD_NUM} package-only go run build.go -goos windows -pkg-arch amd64 -buildNumber=${CIRCLE_BUILD_NUM} package-only
fi fi

View File

@@ -0,0 +1,17 @@
#!/bin/bash -e
if [ ! -d '/tmp/phantomjs' ]; then
_version="2.1.1"
curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$_version-windows.zip > /tmp/phantomjs-win.zip
curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$_version-macosx.zip > /tmp/phantomjs-mac.zip
cd /tmp
unzip /tmp/phantomjs-win.zip
unzip /tmp/phantomjs-mac.zip
mkdir -p /tmp/phantomjs/windows /tmp/phantomjs/darwin
cp /tmp/phantomjs-$_version-windows/bin/phantomjs.exe /tmp/phantomjs/windows/phantomjs.exe
cp /tmp/phantomjs-$_version-macosx/bin/phantomjs /tmp/phantomjs/darwin/phantomjs
fi