Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bisect test_gcc CI test #874

Closed
wants to merge 27 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c3fe87f
Merge pull request #1 from envoyproxy/main
jiajunye Feb 24, 2021
a4c7ba0
Merge remote-tracking branch 'upstream/main'
jiajunye Mar 29, 2021
0b985a8
Merge remote-tracking branch 'upstream/main'
jiajunye May 3, 2021
472f554
Merge remote-tracking branch 'upstream/main'
jiajunye Jun 14, 2021
9c73023
Merge remote-tracking branch 'upstream/main'
jiajunye Jul 26, 2021
518989b
Merge remote-tracking branch 'upstream/main'
jiajunye Sep 7, 2021
0f968eb
Merge remote-tracking branch 'upstream/main'
jiajunye Oct 11, 2021
e641760
Merge remote-tracking branch 'upstream/main'
jiajunye Nov 22, 2021
70df13b
Merge remote-tracking branch 'upstream/main'
jiajunye Feb 7, 2022
20b0c72
Merge remote-tracking branch 'upstream/main'
jiajunye Mar 21, 2022
a1776a6
Merge remote-tracking branch 'upstream/main'
jiajunye Apr 25, 2022
3c4578f
Merge remote-tracking branch 'upstream/main'
jiajunye Jul 11, 2022
c9611d7
Merge remote-tracking branch 'upstream/main'
jiajunye Jul 12, 2022
b198194
Merge remote-tracking branch 'upstream/main'
jiajunye Jul 14, 2022
eaf46af
only keep test_gcc in CI
jiajunye Jul 14, 2022
1e0c354
only run the failed test_remote_execution_basics test
jiajunye Jul 14, 2022
9e0c350
sync to 89b1460a2ce1a6cdd275806b0a0256e12f32c671
jiajunye Jul 14, 2022
291a821
sync to c4fe2aca957b977e4c954d325fb423cde51ffec8
jiajunye Jul 14, 2022
8a9dc1f
sync to e19476d62956b60688de2b6109de1cf4dea6ae19
jiajunye Jul 14, 2022
38fb295
sync to 764a2e9fbb06e2f27fd6775fdc0ed78313b94157
jiajunye Jul 14, 2022
c294119
sync to fbfaab57f8cddfc86779f9918e1c4a6857f74198
jiajunye Jul 14, 2022
7b70d08
sync to 21274872c359c6a8a69df957aefe5d474156c3f1
jiajunye Jul 14, 2022
84156a2
sync to 9b424e6328e72a6f579fb39308786a90431de5aa
jiajunye Jul 15, 2022
1fc721c
sync to fbfaab57f8cddfc86779f9918e1c4a6857f74198 again to make sure i…
jiajunye Jul 15, 2022
f911cc7
sync to 9b424e6328e72a6f579fb39308786a90431de5aa to make sure it fails
jiajunye Jul 15, 2022
2f020ca
call DnsResolverFactory::terminateFactories after creating a DnsResol…
jiajunye Jul 15, 2022
9fb0d09
properly terminate DnsResolverFactory
jiajunye Jul 15, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
107 changes: 4 additions & 103 deletions .azure-pipelines/pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,115 +4,16 @@ trigger:
- "main"

stages:
- stage: check
dependsOn: []
- stage: test_gcc
pool: "x64-large"
jobs:
- job: build_and_format
displayName: "do_ci.sh"
dependsOn: []
strategy:
maxParallel: 2
matrix:
build:
CI_TARGET: "build"
format:
CI_TARGET: "check_format"
timeoutInMinutes: 120
steps:
- template: bazel.yml
parameters:
ciTarget: $(CI_TARGET)

- stage: test
dependsOn: ["check"]
pool: "x64-large"
jobs:
- job: test_and_benchmark
displayName: "do_ci.sh"
strategy:
# Both test and benchmark need dedicated resources for stability.
maxParallel: 1
matrix:
test:
CI_TARGET: "test"
benchmark:
CI_TARGET: "benchmark_with_own_binaries"
timeoutInMinutes: 120
steps:
- template: bazel.yml
parameters:
ciTarget: $(CI_TARGET)

- stage: clang_tidy
dependsOn: ["check"]
pool: "x64-large"
jobs:
- job: clang_tidy
- job: test_gcc
displayName: "do_ci.sh"
strategy:
maxParallel: 1
matrix:
clang_tidy:
CI_TARGET: "clang_tidy"
timeoutInMinutes: 120
steps:
- template: bazel.yml
parameters:
ciTarget: $(CI_TARGET)

- stage: sanitizers
dependsOn: ["test"]
pool: "x64-large"
jobs:
- job: sanitizers
displayName: "do_ci.sh"
strategy:
maxParallel: 2
matrix:
asan:
CI_TARGET: "asan"
tsan:
CI_TARGET: "tsan"
timeoutInMinutes: 120
steps:
- template: bazel.yml
parameters:
ciTarget: $(CI_TARGET)

- stage: coverage
dependsOn: ["test"]
pool: "x64-large"
jobs:
- job: coverage
displayName: "do_ci.sh"
strategy:
maxParallel: 2
matrix:
coverage:
CI_TARGET: "coverage"
coverage_integration:
CI_TARGET: "coverage_integration"
timeoutInMinutes: 120
steps:
- template: bazel.yml
parameters:
ciTarget: $(CI_TARGET)

- stage: release
dependsOn:
- "clang_tidy"
- "sanitizers"
- "coverage"
condition: eq(variables['PostSubmit'], true)
pool: "x64-large"
jobs:
- job: release
displayName: "do_ci.sh"
strategy:
matrix:
release:
CI_TARGET: "docker"
test_gcc:
CI_TARGET: "test_gcc"
timeoutInMinutes: 120
steps:
- template: bazel.yml
Expand Down
4 changes: 2 additions & 2 deletions bazel/repositories.bzl
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

ENVOY_COMMIT = "0f0f675c22de944889298e0787e107265367b367"
ENVOY_SHA = "711446e6eedbced802d95e84303b6215e116bc68bfde55d8ab429dad1b9857cd"
ENVOY_COMMIT = "9b424e6328e72a6f579fb39308786a90431de5aa"
ENVOY_SHA = "1a8855e046de1d7ab1abab926ac78d6d41b42f8323d0ccddf728367722c34f75"

HDR_HISTOGRAM_C_VERSION = "0.11.2" # October 12th, 2020
HDR_HISTOGRAM_C_SHA = "637f28b5f64de2e268131e4e34e6eef0b91cf5ff99167db447d9b2825eae6bad"
Expand Down
1 change: 1 addition & 0 deletions source/client/client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ bool Main::run() {
*options_, dns_resolver_factory, std::move(typed_dns_resolver_config), time_system);
if (!process_or_status.ok()) {
ENVOY_LOG(error, "Unable to create ProcessImpl: {}", process_or_status.status().ToString());
Envoy::Network::DnsResolverFactory::terminateFactories();
return false;
}
process = std::move(*process_or_status);
Expand Down
4 changes: 2 additions & 2 deletions source/client/process_impl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -197,8 +197,7 @@ class ClusterManagerFactory : public Envoy::Upstream::ProdClusterManagerFactory
Envoy::Http::HttpConnPoolImplBase* pool) {
Envoy::Http::CodecClientPtr codec{new Envoy::Http::CodecClientProd(
Envoy::Http::CodecClient::Type::HTTP1, std::move(data.connection_),
data.host_description_, pool->dispatcher(), pool->randomGenerator(),
pool->transportSocketOptions())};
data.host_description_, pool->dispatcher(), pool->randomGenerator())};
return codec;
},
protocols);
Expand Down Expand Up @@ -325,6 +324,7 @@ void ProcessImpl::shutdown() {
}
tls_.shutdownThread();
dispatcher_->shutdown();
Envoy::Network::DnsResolverFactory::terminateFactories();
shutdown_ = true;
}

Expand Down
1 change: 1 addition & 0 deletions source/client/service_impl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ void ServiceImpl::handleExecutionRequest(const nighthawk::client::ExecutionReque
response.mutable_error_detail()->set_message(
fmt::format("Unable to create ProcessImpl: {}", process_or_status.status().ToString()));
writeResponse(response);
Envoy::Network::DnsResolverFactory::terminateFactories();
return;
}
ProcessPtr process = std::move(*process_or_status);
Expand Down
7 changes: 5 additions & 2 deletions test/python_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,14 @@ class PythonTest : public Test {};
// of getting code coverage reporting to also consider the code hit by integration tests.
TEST_F(PythonTest, IntegrationTests) {
const std::string path = TestEnvironment::runfilesPath("test/integration/integration_test");
// The binary accepts a python expression it compares all test targets against.
// See the k argument in https://docs.pytest.org/en/6.2.x/reference.html#command-line-flags
const std::string altered_cmd = path + " test_remote_execution_basics";
#if defined(__has_feature) && (__has_feature(thread_sanitizer) || __has_feature(address_sanitizer))
char env[] = "NH_INTEGRATION_TEST_SANITIZER_RUN=1";
putenv(env);
#endif
ASSERT_EQ(0, system(path.c_str()));
ASSERT_EQ(0, system(altered_cmd.c_str()));
}

} // namespace Nighthawk
} // namespace Nighthawk