Skip to content
This repository was archived by the owner on Aug 30, 2022. It is now read-only.

Commit 92fb4fb

Browse files
author
Isaac Hier
committed
Use Hunter cache repo
Signed-off-by: Isaac Hier <ihier@uber.com>
1 parent 8d3c512 commit 92fb4fb

File tree

4 files changed

+91
-27
lines changed

4 files changed

+91
-27
lines changed

.travis.yml

+26-22
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,38 @@
11
language: cpp
22
sudo: true
33
dist: trusty
4-
54
matrix:
65
include:
7-
- os: linux
8-
addons:
9-
apt:
10-
sources:
11-
- ubuntu-toolchain-r-test
12-
packages:
13-
- g++-6
14-
- lcov
15-
env:
16-
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
17-
6+
- os: linux
7+
addons:
8+
apt:
9+
sources:
10+
- ubuntu-toolchain-r-test
11+
packages:
12+
- g++-6
13+
- lcov
14+
env:
15+
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
1816
branches:
1917
only:
20-
- master
21-
18+
- master
2219
before_install:
23-
- eval "${MATRIX_EVAL}"
24-
20+
- eval "${MATRIX_EVAL}"
2521
script:
26-
- ./scripts/build.sh
27-
22+
- ./scripts/build.sh
2823
after_success:
29-
- for f in $(find build -name '*.gcno'); do gcov-6 $f; done
30-
- bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports"
31-
24+
- for f in $(find build -name '*.gcno'); do gcov-6 $f; done
25+
- bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage
26+
reports"
27+
after_script: |
28+
# Hunter: upload cache to the cache server.
29+
# Copied from [cpp-ethereum](https://github.com/ethereum/cpp-ethereum/blob/develop/.travis.yml).
30+
if [[ "$TRAVIS_EVENT_TYPE" != "pull_request" ]]; then
31+
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo pip install --upgrade requests pyopenssl; fi
32+
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then pip install requests; fi
33+
make -C $TRAVIS_BUILD_DIR/build hunter_upload_cache
34+
fi
3235
env:
3336
global:
34-
- LANG="en_US.UTF-8"
37+
- LANG="en_US.UTF-8"
38+
- secure: 1Pz1mI4PZdzFf2M33snYoaYu/gWxRGK22rw5h9DYtAMFyrqcTKJOI0WnXsIHxjZ5obqVLL/MaNTnO6PbO+sKGEueqNibZhYfjUbZtAV94/uXNkc6Qn6lNALJykqAueGXIkf04CLGpQaJoS8OebFdZODZMJzad58BpckJlF9O/v2OXNx244/bl4Eu61qvbLa/IgRUnLRwGUiHY4CN7Q8+6kNn2cu0nNb2bc+S01jB9PjC+lrkP39ant9f1fY3qWkN3blhLH7OsMaQ9tgs0c/fwCRpyNl95LYodL3Zzi/F61G0PPJL/B2jCGYwFPMsjIj+O6PwF+8k9iAnmA/hUdIQ7+a2l+/Pe9HrPstJD4V99Q922INBYLvgIkvCh7HIV9NDfJ3Ok8tA9PvvGXJ4y12aWvP6QYEfdDFcX6Yrc3NraVMMsz+UhkznHiLdTrj5UwFlmro4a0iRzKeEAOfBmb/pgeD8eESR2IGaZiFsGcLQ0RHFb477fiMJzCstLm/gfhlO6pOvbTMKItEswqePoJI9g0AxQT2Ib8F58Hp91G3U7kbtubZGIT4OZAv6ePj0WnL4FojFWM8TirmPkbVeKwBggxuI85BQO2XE8HhdJPZSz+vzUPPHZbspPdqMaEbk5WgnHv10TmL83VKof48sA4GxfDuXm+NlTan4sWgdPNKpSow=

CMakeLists.txt

+32-5
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,44 @@ cmake_minimum_required(VERSION 3.1)
22

33
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
44

5+
set(CMAKE_TOOLCHAIN_FILE "${CMAKE_SOURCE_DIR}/cmake/toolchain.cmake")
6+
7+
set(HUNTER_CACHE_SERVERS "https://github.com/isaachier/cpp-client-hunter-cache")
8+
59
include(HunterGate)
610
HunterGate(
7-
URL "https://github.com/ruslo/hunter/archive/v0.19.129.tar.gz"
8-
SHA1 "3e190ff47df41cc16d32c479b9617309e01405bf"
11+
URL "https://github.com/ruslo/hunter/archive/v0.19.136.tar.gz"
12+
SHA1 "00e8ee66494a66cc2d4df0410ab3dd3948892a7a"
913
LOCAL
1014
)
1115

12-
project(jaegertracing VERSION 0.0.1)
16+
# Copied from [cpp-ethereum](https://github.com/ethereum/cpp-ethereum/blob/develop/CMakeLists.txt)
17+
# to upload packages to Hunter cache
18+
if(HUNTER_ENABLED)
19+
find_package(PythonInterp QUIET)
20+
if(PYTHONINTERP_FOUND)
21+
hunter_gate_self(
22+
"${HUNTER_CACHED_ROOT}"
23+
"${HUNTER_VERSION}"
24+
"${HUNTER_SHA1}"
25+
hunter_dir
26+
)
27+
set(hunter_upload_script "${hunter_dir}/maintenance/upload-cache-to-github.py")
28+
set(hunter_cache_dir "${HUNTER_GATE_ROOT}/_Base/Cache")
29+
set(hunter_tmp_dir "${HUNTER_GATE_ROOT}/tmp")
30+
add_custom_target(
31+
hunter_upload_cache
32+
${PYTHON_EXECUTABLE} ${hunter_upload_script}
33+
--username isaachier
34+
--repo-owner isaachier
35+
--repo cpp-client-hunter-cache
36+
--cache-dir ${hunter_cache_dir}
37+
--temp-dir ${hunter_tmp_dir}
38+
)
39+
endif()
40+
endif()
1341

14-
set(CMAKE_CXX_STANDARD_REQUIRED true)
15-
set(CMAKE_CXX_STANDARD 11)
42+
project(jaegertracing VERSION 0.0.1)
1643

1744
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR
1845
CMAKE_CXX_COMPILER_ID MATCHES "Clang")

cmake/toolchain.cmake

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
set(CMAKE_CXX_STANDARD_REQUIRED true)
2+
set(CMAKE_CXX_STANDARD 11)
3+
set(CMAKE_CXX_EXTENSIONS OFF)
4+
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

src/jaegertracing/samplers/SamplerTest.cpp

+29
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include "jaegertracing/samplers/RemotelyControlledSampler.h"
2929
#include "jaegertracing/samplers/Sampler.h"
3030
#include "jaegertracing/samplers/SamplingStatus.h"
31+
#include "jaegertracing/testutils/MockAgent.h"
3132
#include "jaegertracing/testutils/TUDPTransport.h"
3233

3334
namespace jaegertracing {
@@ -285,5 +286,33 @@ TEST(Sampler, testAdaptiveSamplerUpdate)
285286
sampler.update(newStrategies);
286287
}
287288

289+
TEST(Sampler, testRemotelyControlledSampler)
290+
{
291+
const auto mockAgent = testutils::MockAgent::make();
292+
mockAgent->start();
293+
const auto logger = logging::nullLogger();
294+
const auto metrics = metrics::Metrics::makeNullMetrics();
295+
RemotelyControlledSampler sampler(
296+
"test-service",
297+
"http://" + mockAgent->samplingServerAddr().authority(),
298+
std::make_shared<ProbabilisticSampler>(
299+
kTestDefaultSamplingProbability),
300+
kTestDefaultMaxOperations,
301+
std::chrono::milliseconds(100),
302+
*logger,
303+
*metrics);
304+
std::random_device device;
305+
std::mt19937_64 rng;
306+
rng.seed(device());
307+
for (auto startTime = RemotelyControlledSampler::Clock::now();
308+
std::chrono::duration_cast<std::chrono::seconds>(
309+
RemotelyControlledSampler::Clock::now() - startTime).count() < 1;) {
310+
TraceID traceID(rng(), rng());
311+
sampler.isSampled(traceID, kTestOperationName);
312+
std::this_thread::sleep_for(std::chrono::milliseconds(20));
313+
}
314+
sampler.close();
315+
}
316+
288317
} // namespace samplers
289318
} // namespace jaegertracing

0 commit comments

Comments
 (0)