Skip to content

Commit d40d5b6

Browse files
committed
build: add some caching and fix broken nightlies
1 parent bc6c673 commit d40d5b6

4 files changed

Lines changed: 53 additions & 29 deletions

File tree

.circleci/config.yml

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ commands:
2323
name: Running Kapacitor Tests
2424
no_output_timeout: 30m
2525
command: |
26+
mkdir -p /go
2627
./circle-test.sh
2728
deploy_nightly:
2829
description: >
@@ -38,35 +39,58 @@ jobs:
3839
docker:
3940
- image: nathanielc/docker-client
4041
parallelism: 2
42+
resource_class: large
4143
working_directory: ~/kapacitor
4244
steps:
4345
- checkout
4446
- restore_cache: # restores saved cache if no changes are detected since last run
4547
keys:
46-
- go-mod-{{ checksum "go.sum" }}
48+
- v0-go-mod-{{ checksum "go.sum" }}
49+
- v0-go-mod
4750
- setup_remote_docker:
4851
docker_layer_caching: true
4952
- run_tests
53+
- save_cache:
54+
key: v0-go-mod-{{ checksum "go.sum" }}
55+
paths:
56+
- "/go/pkg/mod"
5057

5158
release:
5259
docker:
5360
- image: nathanielc/docker-client
5461
working_directory: ~/kapacitor
62+
resource_class: large
5563
steps:
5664
- checkout
65+
- restore_cache: # restores saved cache if no changes are detected since last run
66+
keys:
67+
- v0-go-mod-{{ checksum "go.sum" }}
68+
- v0-go-mod-
5769
- setup_remote_docker:
5870
docker_layer_caching: true
5971
- deploy_release_packages
72+
- save_cache:
73+
key: v0-go-mod-{{ checksum "go.sum" }}
74+
paths:
75+
- "/go/pkg/mod"
6076

6177
nightly-build:
6278
docker:
6379
- image: nathanielc/docker-client
6480
working_directory: ~/kapacitor
6581
steps:
6682
- checkout
83+
- restore_cache: # restores saved cache if no changes are detected since last run
84+
keys:
85+
- v0-go-mod-{{ checksum "go.sum" }}
86+
- v0-go-mod
6787
- setup_remote_docker:
6888
docker_layer_caching: true
6989
- run_tests
90+
- save_cache:
91+
key: v0-go-mod-{{ checksum "go.sum" }}
92+
paths:
93+
- "/go/pkg/mod"
7094
- deploy_nightly
7195

7296

@@ -96,4 +120,4 @@ workflows:
96120
only:
97121
- master
98122
jobs:
99-
- nightly-build
123+
- nightly-build

Dockerfile_build_ubuntu64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ RUN gem install fpm
3636
# Install protobuf3 protoc binary
3737
ENV PROTO_VERSION 3.11.1
3838
RUN wget -q https://github.com/google/protobuf/releases/download/v${PROTO_VERSION}/protoc-${PROTO_VERSION}-linux-x86_64.zip \
39-
&& unzip -j protoc-${PROTO_VERSION}-linux-x86_64.zip bin/protoc -d /bin \
39+
&& unzip -oj protoc-${PROTO_VERSION}-linux-x86_64.zip bin/protoc -d /bin \
4040
rm protoc-${PROTO_VERSION}-linux-x86_64.zip
4141

4242
# Install protobuf3 python library

build.sh

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,24 +23,42 @@ docker build -f Dockerfile_build_ubuntu64 -t $imagename --build-arg GO_VERSION=$
2323
# Build new docker image
2424
docker build -f Dockerfile_build_ubuntu64 -t influxdata/kapacitor-builder --build-arg GO_VERSION=${GO_VERSION} $DIR
2525

26-
# Create data volume with code
2726
docker create \
28-
--name $dataname \
29-
-v "/go/src/github.com/influxdata/kapacitor" \
30-
$imagename /bin/true
27+
--name $dataname \
28+
-v "/go/src/github.com/influxdata/kapacitor" \
29+
$imagename /bin/true
3130

3231
docker cp "$DIR/" "$dataname:/go/src/github.com/influxdata/"
3332

3433
echo "Running build.py"
35-
# Run docker
36-
docker run \
34+
if [ $GOPATH ];then
35+
docker run \
36+
--rm \
37+
-v "$GOPATH"/pkg/mod:/go/pkg/mod
38+
--volumes-from $dataname \
39+
-e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" \
40+
-e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" \
41+
$imagename \
42+
"$@"
43+
elif [ -d "/go/pkg/mod" ];then
44+
docker run \
3745
--rm \
46+
-v "/go/pkg/mod:/go/pkg/mod"
3847
--volumes-from $dataname \
3948
-e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" \
4049
-e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" \
4150
$imagename \
4251
"$@"
52+
else
53+
docker run \
54+
--rm \
55+
--volumes-from $dataname \
56+
-e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" \
57+
-e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" \
58+
$imagename \
59+
"$@"
60+
fi
61+
# Run docker
4362

44-
docker cp "$dataname:/go/src/github.com/influxdata/kapacitor/build" \
45-
./
63+
docker cp "$dataname:/go/src/github.com/influxdata/kapacitor/build" ./
4664
docker rm -v $dataname

gobuild.sh

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)