Skip to content

Commit 993d2d4

Browse files
author
Oded Porat
authored
[FEAT] dockerize brubeck (#5)
1 parent 1c0ca98 commit 993d2d4

File tree

7 files changed

+75
-18
lines changed

7 files changed

+75
-18
lines changed

.circleci/config.yml

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
defaults: &defaults
2+
working_directory: ~/app
3+
version: 2
4+
jobs:
5+
release:
6+
<<: *defaults
7+
docker:
8+
- image: circleci/buildpack-deps:xenial
9+
steps:
10+
- checkout
11+
- run:
12+
name: install env manager
13+
command: git clone --depth 1 -b master [email protected]:fiverr/kubernetes.git /var/tmp/kubernetes
14+
- setup_remote_docker:
15+
reusable: true
16+
exclusive: true
17+
- run:
18+
name: prepare docker version
19+
command: /var/tmp/kubernetes/scripts/ci/create_version_name.sh
20+
- run:
21+
name: docker build
22+
command: /var/tmp/kubernetes/scripts/ci/build_version.sh
23+
- run:
24+
name: docker push (create tag if master)
25+
command: /var/tmp/kubernetes/scripts/ci/push_version.sh false
26+
workflows:
27+
version: 2
28+
ci-cd:
29+
jobs:
30+
- release:
31+
filters:
32+
branches:
33+
only:
34+
- master
35+
- /.*_rc/

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
brubeck
2+
brubeck_test
3+
*.deb
24
*.o
5+
a.out
36
*.swp
47
*~
58
.DS_Store

.version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1.0.0

Dockerfile

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
FROM alpine:latest AS build-env
2+
RUN apk add -qU alpine-sdk jansson-dev libmicrohttpd-dev libressl-dev
3+
4+
# build
5+
ADD . /tmp/brubeck
6+
WORKDIR /tmp/brubeck
7+
RUN ./script/cibuild
8+
9+
10+
# final stage
11+
FROM alpine
12+
RUN apk add --no-cache jansson libmicrohttpd libressl
13+
WORKDIR /usr/sbin/
14+
COPY --from=build-env /tmp/brubeck/brubeck /usr/sbin/
15+
COPY --from=build-env /tmp/brubeck/debian/biz.json /tmp/brubeck/debian/tech.json /etc/brubeck/

script/cibuild

+7-4
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
#!/bin/sh
22

33
set -e
4-
ROOT=$(dirname "$0")/..
4+
ROOT=$(git rev-parse --show-toplevel)
5+
cd $ROOT
56

67
echo "=> Cleaning @ $(date)"
78
git clean -fdx
89
git submodule update --init
10+
(cd vendor/ck && git clean -dfx)
911

10-
echo "=> Building @ $(date)"
11-
cd $ROOT
12+
echo "=> Testing @ $(date)"
13+
make test
1214

13-
make test && ./brubeck_test
15+
echo "=> Building @ $(date)"
16+
make brubeck

src/histogram.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ void brubeck_histo_sample(
9393
value_t pct_rank = histo_percentile_rank(histo, 0.9f);
9494

9595
sample->count = histo->count;
96-
sample->count_90 = histo->count * 0.9;
96+
sample->count_90 = floor((histo->count * 0.9) + 0.5f);
9797
sample->sum = histo_sum(histo, histo->size);
9898
sample->sum_90 = histo_sum(histo, pct_rank);
9999
sample->lower = histo->values[0];

tests/histogram.c

+13-13
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ void test_histogram__single_element(void)
6363
sput_fail_unless(sample.mean == 42.0, "sample.mean");
6464
sput_fail_unless(sample.mean_90 == 42.0, "sample.mean_90");
6565
sput_fail_unless(sample.count == 1, "sample.count");
66-
sput_fail_unless(sample.count_90 == 0.9, "sample.count_90");
66+
sput_fail_unless(sample.count_90 == 1.0, "sample.count_90");
6767
sput_fail_unless(sample.sum == 42.0, "sample.sum");
6868
sput_fail_unless(sample.sum_90 == 42.0, "sample.sum_90");
6969
sput_fail_unless(sample.std == 0.0, "sample.std");
@@ -111,9 +111,9 @@ void test_histogram__multisamples(void)
111111
sput_fail_unless(sample.mean == 64.5, "sample.mean");
112112
sput_fail_unless(sample.mean_90 == 58.0, "sample.mean_90");
113113
sput_fail_unless(sample.count == 128, "sample.count");
114-
sput_fail_unless(sample.count_90 == 115.2, "sample.count_90");
114+
sput_fail_unless(sample.count_90 == 115, "sample.count_90");
115115
sput_fail_unless(sample.sum == 8256.0, "sample.sum");
116-
sput_fail_unless(floor(sample.sum_90) == 6670, "sample.sum_90");
116+
sput_fail_unless(sample.sum_90 == 6670, "sample.sum_90");
117117
sput_fail_unless(floor(sample.std) == 36.0, "sample.std");
118118
sput_fail_unless(sample.median == 64.0, "sample.median");
119119
}
@@ -136,16 +136,16 @@ void test_histogram__with_sample_rate(void)
136136
brubeck_histo_sample(&sample, &h);
137137

138138
sput_fail_unless(sample.lower == 1.0, "sample.lower");
139-
sput_fail_unless(sample.upper == 128.0, "sample.upper");
140-
sput_fail_unless(sample.upper_90 == 115.0, "sample.upper_90");
141-
sput_fail_unless(sample.mean == 64.5, "sample.mean");
142-
sput_fail_unless(sample.mean_90 == 58.0, "sample.mean_90");
143-
sput_fail_unless(sample.count == 1280, "sample.count");
144-
sput_fail_unless(sample.count_90 == 1152.0, "sample.count_90");
145-
sput_fail_unless(sample.sum == 8256.0, "sample.sum");
146-
sput_fail_unless(floor(sample.sum_90) == 6670, "sample.sum_90");
147-
sput_fail_unless(floor(sample.std) == 36.0, "sample.std");
148-
sput_fail_unless(sample.median == 64.0, "sample.median");
139+
sput_fail_unless(sample.upper == 128.0, "sample.upper");
140+
sput_fail_unless(sample.upper_90 == 115.0, "sample.upper_90");
141+
sput_fail_unless(sample.mean == 64.5, "sample.mean");
142+
sput_fail_unless(floor(sample.mean_90) == 57.0, "sample.mean_90");
143+
sput_fail_unless(sample.count == 1280, "sample.count");
144+
sput_fail_unless(sample.count_90 == 1152.0, "sample.count_90");
145+
sput_fail_unless(sample.sum == 82560.0, "sample.sum");
146+
sput_fail_unless(sample.sum_90 == 66700, "sample.sum_90");
147+
sput_fail_unless(floor(sample.std) == 36.0, "sample.std");
148+
sput_fail_unless(sample.median == 64.0, "sample.median");
149149
}
150150

151151
void test_histogram__capacity(void)

0 commit comments

Comments
 (0)