summaryrefslogtreecommitdiffhomepage
path: root/scripts
AgeCommit message (Collapse)Author
2020-06-09Invoke bazel query via bash function.Kevin Krakauer
PiperOrigin-RevId: 315514034
2020-06-01Move to make for tag release workflow.Adin Scannell
This will make tag & release workflows idempotent. PiperOrigin-RevId: 314154888
2020-05-29Fix the APT repository structure.Adin Scannell
This change fixes the apt repository structure to avoid emiting warnings on Ubuntu 18.04 (and potentially other versions). This requires a slight refactor of the repository generation scripts, since we can no longer copy the same release files for different "suites". This should avoid the warning by setting the suite to the distribution: https://github.com/Debian/apt/blob/master/apt-pkg/metaindex.cc#L75 This change also moves over to the standardized Makefile entrypoint, which makes settings clearer and enables local testing. PiperOrigin-RevId: 313817017
2020-04-30Allow to run kvm syscall tests on the RBE clusterAndrei Vagin
PiperOrigin-RevId: 309265978
2020-04-24VFS2: Get HelloWorld image tests to pass with VFS2Zach Koopmans
This change includes: - Modifications to loader_test.go to get TestCreateMountNamespace to pass with VFS2. - Changes necessary to get TestHelloWorld in image tests to pass with VFS2. This means runsc can run the hello-world container with docker on VSF2. Note: Containers that use sockets will not run with these changes. See "//test/image/...". Any tests here with sockets currently fail (which is all of them but HelloWorld). PiperOrigin-RevId: 308363072
2020-04-24Standardize all Docker images.Adin Scannell
This change moves all Docker images to a standard location, and abstracts the build process so that they can be maintained in an automated fashion. This also allows the images to be architecture-independent. All images will now be referred to by the test framework via the canonical `gvisor.dev/images/<name>`, where `<name>` is a function of the path within the source tree. In a subsequent change, continuous integration will be added so that the images will always be correct and available locally. In the end, using `bazel` for Docker containers is simply not possible. Given that we already have the need to use `make` with the base container (for Docker), we extend this approach to get more flexibility. This change also adds a self-documenting and powerful Makefile that is intended to replace the collection of scripts in scripts. Canonical (self-documenting) targets can be added here for targets that understand which images need to be loaded and/or built. PiperOrigin-RevId: 308322438
2020-04-24kokoro: save all files from test.outputs/Andrei Vagin
If a test fails by timeout, bazel doesn't generate outputs.zip. PiperOrigin-RevId: 308307815
2020-04-23Simplify Docker test infrastructure.Adin Scannell
This change adds a layer of abstraction around the internal Docker APIs, and eliminates all direct dependencies on Dockerfiles in the infrastructure. A subsequent change will automated the generation of local images (with efficient caching). Note that this change drops the use of bazel container rules, as that experiment does not seem to be viable. PiperOrigin-RevId: 308095430
2020-04-22Remove unnecessary kokoro configurations.Adin Scannell
PiperOrigin-RevId: 307841689
2020-04-20Fix release.sh. git commands need to be run in git repo.Ting-Yu Wang
PiperOrigin-RevId: 307458938
2020-04-20Move runtime_tests.sh to align with other scripts.Adin Scannell
PiperOrigin-RevId: 307435879
2020-04-09kokoro: fix handling of apt-get errorsAndrei Vagin
When a command is called as if expression, its error code can be get only in this if block. For example, the next script prints 0: if ( false ); then true fi echo $? PiperOrigin-RevId: 305638629
2020-04-02Fix typo in benchmarks.shZach Koopmans
PiperOrigin-RevId: 304440599
2020-04-01Add "/snap/bin" to PATH.Zach Koopmans
"gcloud" may be installed as a snap, under "/snap/bin". Make sure this is in our PATH so that we can use gcloud. PiperOrigin-RevId: 304297180
2020-03-31Debug script issues on Kokoro.Zach Koopmans
PiperOrigin-RevId: 304068950
2020-03-30Internal change.Zach Koopmans
PiperOrigin-RevId: 303773475
2020-03-25iptable: fix tests timeoutsKevin Krakauer
Tests were run assuming a runtime of "runsc" was present, and did not have --net-raw enabled.
2020-03-19Add packetimpact tests to presubmit and CI testingEyal Soha
PiperOrigin-RevId: 301872161
2020-03-13Internal changeZach Koopmans
PiperOrigin-RevId: 300836270
2020-03-13Run "startup" benchmark in Kokoro benchmark job.Zach Koopmans
PiperOrigin-RevId: 300798423
2020-03-11iptables: ready tests to be enabled in kokoroKevin Krakauer
Fixed flakes (tested via --runs_per_test=100) and added skips for not-yet-implemented features. Once submitted, the iptables tests will be ready to enable in kokoro.
2020-03-11Internal changeZach Koopmans
PiperOrigin-RevId: 300410856
2020-03-06Fix runsc permissions for "dev.sh --refresh"Fabricio Voznika
PiperOrigin-RevId: 299466906
2020-02-27Fix apt-get reliability issues.Adin Scannell
This is frequently causing the core build scripts to fail. The core ubuntu distribution will perform an auto-update at first start, which may cause the lock file to be held. All apt-get commands may be done in a loop in order to retry to avoid this issue. We may want to consider retrying other pieces, but for now this should avoid the most frequent cause of build flakes. PiperOrigin-RevId: 297704789
2020-02-27Use automated release notes, if available.Adin Scannell
PiperOrigin-RevId: 297628615
2020-02-24Internal change.Brad Burlage
PiperOrigin-RevId: 296972565
2020-02-19Internal change.gVisor bot
PiperOrigin-RevId: 296055452
2020-02-12Minor runtime test fixes.gVisor bot
* Allow scripts/common.sh to be sourced from outside the scripts/ directory * Fix passing empty args to Bazel, which causes the tool to exit with a failure even if the command succeeds. PiperOrigin-RevId: 294785456
2020-02-05Fix undeclared variable error in common_build.sh.Brad Burlage
PiperOrigin-RevId: 293413711
2020-02-05Add packetdrill tests to presubmit and CI testingEyal Soha
PiperOrigin-RevId: 293409718
2020-02-03Add 1 Kokoro job per runtime test.Brad Burlage
PiperOrigin-RevId: 293019326
2020-01-29Fix iptables tests that were broken by rename.Kevin Krakauer
The name of the runner binary target changed from "runner" to "runner-image", causing iptables tests to fail. PiperOrigin-RevId: 292242263
2020-01-27Standardize on tools directory.Adin Scannell
PiperOrigin-RevId: 291745021
2020-01-23Try running kythe build on RBE.Brad Burlage
Also add our RBE project/instance to the --config=remote defaults. PiperOrigin-RevId: 291201426
2020-01-23Fix master build case.Adin Scannell
Otherwise, this will be built when building a specific release tag (typically in the past), causing the master binary to be overwritten with something older. We can generally assume that tags will be applied after the commit has been integrated, and therefore that any builds pointing to tags will use only the tags. Another way to fix this would be to introduce something akin to the KOKORO_BUILD_NIGHTLY environment variable, but it doesn't seem strictly necessary. PiperOrigin-RevId: 291198171
2020-01-13Allow dual stack sockets to operate on AF_INETTamir Duberstein
Fixes #1490 Fixes #1495 PiperOrigin-RevId: 289523250
2020-01-09Configure issue reviver to run with KokoroFabricio Voznika
PiperOrigin-RevId: 288921032
2019-12-12Add iptables testing framework.Kevin Krakauer
It would be preferrable to test iptables via syscall tests, but there are some problems with that approach: * We're limited to loopback-only, as syscall tests involve only a single container. Other link interfaces (e.g. fdbased) should be tested. * We'd have to shell out to call iptables anyways, as the iptables syscall interface itself is too large and complex to work with alone. * Running the Linux/native version of the syscall test will require root, which is a pain to configure, is inherently unsafe, and could leave host iptables misconfigured. Using the go_test target allows there to be no new test runner. PiperOrigin-RevId: 285274275
2019-12-09Mark runner_test as manual.Adin Scannell
Because it is local-only, it should also be marked manual. PiperOrigin-RevId: 284596186
2019-12-06Update Kokoro image to install Golang 1.13Fabricio Voznika
PiperOrigin-RevId: 284308422
2019-12-06Add runtime tracing.Adin Scannell
This adds meaningful annotations to the trace generated by the runtime/trace package. PiperOrigin-RevId: 284290115
2019-12-02Import benchmark-tools to main repository.Zach Koopmans
This has adapted for use with bazel from the original commit a26e93769ebefd82593a43e22fb13a09717cfa6d. In particular, the style has been made consistent with internal python style guidelines, and the packages (including the main entrypoint) have been refactored in order to allow bazel testing targets. PiperOrigin-RevId: 283484433
2019-11-20Use a GitHub credential for tagging a release.Adin Scannell
PiperOrigin-RevId: 281617882
2019-11-12kokoro: correct a path to outputs.zipAndrei Vagin
PiperOrigin-RevId: 280021914
2019-11-08test: merge log files of all shards for each test suiteAndrei Vagin
This significantly speeds up a process of uploading this files to sponge and resultstore by kokoro. PiperOrigin-RevId: 279416349
2019-11-05Fix repository build scripts.Adin Scannell
This fixes a number of issues with the repository build process: * Fix the overall structure of the repository. * Fix the debian package description. * Fix the broken version number for packages. * Update the digest algorithm used for signing the release. I've validated that installation works from a separate staging bucket. Updates #852 PiperOrigin-RevId: 278716914
2019-11-04kokoro: run KVM syscall testsAndrei Vagin
We don't know how stable they are, so let's start with warning. PiperOrigin-RevId: 278484186
2019-10-31Fix overloaded use of $RUNTIME.Brad Burlage
Turns out we use $RUNTIME in scripts/common.sh to give a name to the runsc runtime used by the tests. PiperOrigin-RevId: 277764383
2019-10-30Add Kokoro config for new runtime testsBrad Burlage
PiperOrigin-RevId: 277607217
2019-10-22netstack/tcp: software segmentation offloadAndrei Vagin
Right now, we send each tcp packet separately, we call one system call per-packet. This patch allows to generate multiple tcp packets and send them by sendmmsg. The arguable part of this CL is a way how to handle multiple headers. This CL adds the next field to the Prepandable buffer. Nginx test results: Server Software: nginx/1.15.9 Server Hostname: 10.138.0.2 Server Port: 8080 Document Path: /10m.txt Document Length: 10485760 bytes w/o gso: Concurrency Level: 5 Time taken for tests: 5.491 seconds Complete requests: 100 Failed requests: 0 Total transferred: 1048600200 bytes HTML transferred: 1048576000 bytes Requests per second: 18.21 [#/sec] (mean) Time per request: 274.525 [ms] (mean) Time per request: 54.905 [ms] (mean, across all concurrent requests) Transfer rate: 186508.03 [Kbytes/sec] received sw-gso: Concurrency Level: 5 Time taken for tests: 3.852 seconds Complete requests: 100 Failed requests: 0 Total transferred: 1048600200 bytes HTML transferred: 1048576000 bytes Requests per second: 25.96 [#/sec] (mean) Time per request: 192.576 [ms] (mean) Time per request: 38.515 [ms] (mean, across all concurrent requests) Transfer rate: 265874.92 [Kbytes/sec] received w/o gso: $ ./tcp_benchmark --client --duration 15 --ideal [SUM] 0.0-15.1 sec 2.20 GBytes 1.25 Gbits/sec software gso: $ tcp_benchmark --client --duration 15 --ideal --gso $((1<<16)) --swgso [SUM] 0.0-15.1 sec 3.99 GBytes 2.26 Gbits/sec PiperOrigin-RevId: 276112677