Commit Graph
60 Commits
Author SHA1 Message Date
Adin ScannellandgVisor bot 2876132f6f Add BuildKite annotations for failures and profiles.
This change cleans up some minor Makefile issues, and adds support for
BuildKite annotations on failure and on profiles being generated. These
annotations will make failures very clear and link to the artifacts.

This change is a stepping stone for aggregating coverage data from all
individual test jobs, as this will also happen in .buildkite/annotate.sh.

PiperOrigin-RevId: 349606598
2020-12-30 15:09:12 -08:00
Fabricio VoznikaandgVisor bot 2cbad081ee Set --nocache_test_results to runtime tests
If not set, the cached result is used even when runtime options
are changed, because they are not visible to blaze/bazel.

PiperOrigin-RevId: 348074339
2020-12-17 12:42:09 -08:00
Adin ScannellandgVisor bot 740b84f753 Restore refresh target.
PiperOrigin-RevId: 347864621
2020-12-16 11:45:28 -08:00
Adin ScannellandgVisor bot ce7927c30e Fix run and sudo targets.
These are not passing arguments properly. This breaks the current
pre-command for BuildKite.

PiperOrigin-RevId: 347062729
2020-12-11 13:25:44 -08:00
Ian LewisandgVisor bot 84b5c7511e Fix website build
Fix 'run' function call so that parameters are passed properly to the function.

PiperOrigin-RevId: 346929952
2020-12-10 21:50:03 -08:00
Adin ScannellandShentubot 0bcbf188c6 Refactor the Makefile to avoid recursive Make.
Recursive make is difficult to follow and debug. Drop this by using
internal functions, which, while difficult, are easier than trying to
following recursive invokations.

Further simplify the Makefile by collapsing the image bits and removing
the tools/vm directory, which is effectively unused.

Fixes #4952

PiperOrigin-RevId: 346569133
2020-12-09 15:53:23 -08:00
Peter JohnstonandgVisor bot c3b5ce0336 Support icmpv6 transport protocol
PiperOrigin-RevId: 346101076
2020-12-07 08:44:44 -08:00
Adin ScannellandgVisor bot f047cdd294 Update containerd tests for 1.4+ to 1.4.3.
PiperOrigin-RevId: 345764404
2020-12-04 15:05:46 -08:00
Zach KoopmansandgVisor bot 4c7f27c1a8 Fix load-benchmarks-images call.
make load-benchmarks-images is empty with the deleted line.

PiperOrigin-RevId: 345741855
2020-12-04 13:14:09 -08:00
Fabricio VoznikaandgVisor bot 5197a5cf06 Update containerd to 1.3.9
PiperOrigin-RevId: 345564927
2020-12-03 16:55:44 -08:00
Adin ScannellandgVisor bot 0d1d872f7f Support partitions for other tests.
PiperOrigin-RevId: 345399936
2020-12-03 01:00:21 -08:00
Adin ScannellandgVisor bot 6e17891ac5 Clean up build output.
This change also simplifies and documents the build_cmd pipeline, and
reduces general noise for debugging Makefile issues.

It also drops the mapping for /etc/docker/daemon.json, which if it
does not exist initially will create this as a directory (causing lots
of confusion and breaks).

PiperOrigin-RevId: 343932456
2020-11-23 14:45:34 -08:00
Ayush RanjanandgVisor bot fdd408538f [infra] Do not use debug flags for testing.
This causes some networking related tests to take a very long time.
Upon failure, tests can be manually run with debug flags to debug. As is the
strace logs are not available from a test run.

PiperOrigin-RevId: 342156294
2020-11-12 16:30:05 -08:00
Zach KoopmansandgVisor bot a629c3d159 Add debug logs to startup benchmark.
PiperOrigin-RevId: 341757694
2020-11-10 21:20:52 -08:00
Adin ScannellandgVisor bot 5e0b31bc57 Show run-benchmark output.
PiperOrigin-RevId: 341667792
2020-11-10 12:01:29 -08:00
Adin ScannellandgVisor bot 076cc064f3 Evaluate T as a shell variable, not a Make variable.
PiperOrigin-RevId: 341531230
2020-11-09 19:13:08 -08:00
Zach KoopmansandgVisor bot 5d347fa6cf Add pull image statment to benchmarks rule.
PiperOrigin-RevId: 341132662
2020-11-06 15:46:51 -08:00
Ayush RanjanandgVisor bot 5b4f1053bb [runtime tests] Add partitions to runtime tests.
This will allow us to run massive runtime tests live java to run in parallel
across multiple jobs.

PiperOrigin-RevId: 340956246
2020-11-05 17:11:32 -08:00
Zach KoopmansandgVisor bot af8d0efdcc Internal Change
PiperOrigin-RevId: 340941898
2020-11-05 15:43:14 -08:00
Kevin KrakauerandgVisor bot 46952474a9 Make RedirectTarget thread safe
Fixes #4613.

PiperOrigin-RevId: 339746784
2020-10-29 14:28:56 -07:00
Ian LewisandgVisor bot 1eae07b6a8 Add a platform portability blog post
Also fixes the docker_image bazel rule, and website-server make target.

Fixes #3273

PiperOrigin-RevId: 338606668
2020-10-22 21:22:54 -07:00
Adin ScannellandgVisor bot 56dd1e2544 Remove legacy bazel configurations.
Using the newer bazel rules necessitates a transition from proto1 to
proto2. In order to resolve the incompatibility between proto2 and
gogoproto, the cri runtimeoptions proto must be vendored.

Further, some of the semantics of bazel caching changed during the
transition. It is now necessary to:

- Ensure that :gopath depends only on pure library targets, as the
  propagation of go_binary build attributes (pure, static) will
  affected the generated files (though content remains the same,
  there are conflicts with respect to the gopath).
- Update bazel.mk to include the possibility of binaries in the
  bazel-out directory, as it will now put runsc and others there.
  This required some refinements to the mechanism of extracting
  paths, since some the existing regex resulted in false positives.
- Change nogo rules to prevent escape generation on binary targets.
  For some reason, the newer version of bazel attempted to run the
  nogo analysis on the binary targets, which fails due to the fact
  that objdump does not work on the final binary. This must be due
  to a change in the semantics of aspects in bazel3.

PiperOrigin-RevId: 337958324
2020-10-19 16:28:40 -07:00
Adin ScannellandgVisor bot 19946cdca7 Add easier-to-use docker_image target.
PiperOrigin-RevId: 337415009
2020-10-15 17:21:24 -07:00
Adin ScannellandgVisor bot bc736093c5 Add staticcheck and staticstyle analyzers.
This change also adds support to go_stateify for detecting an appropriate
receiver name, avoiding a large number of false positives.

PiperOrigin-RevId: 335994587
2020-10-07 18:29:05 -07:00
Adin ScannellandgVisor bot 18a81e4721 Add nogo check annotations to GitHub.
When nogo checks are violated, they will automatically posted
as annotations on the specific GitHub commit. This allows us
to ensure analysis & style rules and have them called out.

PiperOrigin-RevId: 334447285
2020-09-29 13:16:54 -07:00
Ayush RanjanandgVisor bot 097f345187 Port fuse tests to Makefile.
PiperOrigin-RevId: 332878900
2020-09-21 10:27:13 -07:00
Kevin KrakauerandgVisor bot afcb0762ed ip6tables: filter table support
`ip6tables -t filter` is now usable. NAT support will come in a future CL.

#3549

PiperOrigin-RevId: 332381801
2020-09-17 21:54:48 -07:00
Ayush RanjanandgVisor bot ab4a0f3d5c Fix root tests target in Makefile.
PiperOrigin-RevId: 332358833
2020-09-17 18:27:10 -07:00
Kevin KrakauerandgVisor bot 65f8ea1e00 Fix modprobe dependency
The modprobe command only takes 1 module per invocation. The second module name
is being passed as a module parameter.

PiperOrigin-RevId: 331585765
2020-09-14 11:11:05 -07:00
Ayush RanjanandgVisor bot ae7b148600 [vfs] Add vfs2 runtime tests.
PiperOrigin-RevId: 330981912
2020-09-10 11:42:51 -07:00
Ayush RanjanandgVisor bot e37fe2c110 Fix make_apt script.
This change makes the following fixes:
- When creating a test repo.key, create a secret keyring as other workflows
  also use secret keyrings only.
- We should not be using both --keyring and --secret-keyring options. Just use
  --secret-keyring.
- Pass homedir to all gpg commands. dpkg-sig takes an arg -g which stands for
  gpgopts. So we need to pass the homedir there too.

PiperOrigin-RevId: 330443280
2020-09-07 21:18:22 -07:00
Adin ScannellandgVisor bot 8ed0ce1893 Include shim in individual released binaries.
The debian rules are also moved to the top-level, since they
apply to binaries outside the //runsc directory.

Fixes #3665

PiperOrigin-RevId: 328379709
2020-08-25 12:24:32 -07:00
Zach KoopmansandgVisor bot 37b92bb038 Mark integration tests as passing in VFS2 except CheckpointRestore.
Mark all tests passing for VFS2 in:
image_test
integration_test

There's no way to do negative look ahead/behind in golang test regex,
so check if the tests uses VFS2 and skip CheckPointRestore if it does.

PiperOrigin-RevId: 326050915
2020-08-11 10:37:32 -07:00
Zach KoopmansandgVisor bot 40ad264a89 Mark DirCreation/tmp tests as passing.
PiperOrigin-RevId: 325861904
2020-08-10 12:27:53 -07:00
Zach KoopmansandgVisor bot dee8e179ad Remove old benchmark tools.
Remove the old benchmark-tools directory, including
imports in the WORKSPACE file and associated bazel rules.

The new Golang benchmark-tools can be found at //test/benchmarks
and it is functionally equivalent, excepting syscall_test
which can be found in //test/perf/linux.

PiperOrigin-RevId: 325529075
2020-08-07 16:18:51 -07:00
Adin Scannell 06788f392f Enable "make packetimpact-tests" to work.
This required minor fixes to the bazel wrapper. The "dut_platform" is
also changed to "native" to line-up with the system call tests and
remove the hard-coded "linux" and "netstack" strings.
2020-08-04 20:49:00 -07:00
Kevin KrakauerandgVisor bot 6fc131c3c2 Fix PHONY target typos
PiperOrigin-RevId: 324305107
2020-07-31 16:20:35 -07:00
Adin ScannellandgVisor bot c297ba2451 Override the test timeout for runtimes.
PiperOrigin-RevId: 324026021
2020-07-30 10:12:20 -07:00
Zach KoopmansandgVisor bot b84dec23d4 Mark Passing Integration Tests for VFS2.
Mark the currently passing integration/image tests for
VFS2. Bugs will be filed for remaining failing tests.

Updates #1487

PiperOrigin-RevId: 323297260
2020-07-26 21:43:46 -07:00
Ayush RanjanandgVisor bot f55969196d Fix make dev
The "dev" target had been failing. The failure was being caused due to variable
overload of "RUNTIME".

PiperOrigin-RevId: 323106040
2020-07-24 17:49:19 -07:00
Ayush RanjanandgVisor bot 6a799ba38e Fix kokoro presubmits!
Fixed the following error:
tools/bazel.mk:119: *** Destination not provided..  Stop.
The issue was that we were running all make commands in a subshell so variables
like $T were not passed on.

The other issue was related to credentials. The test passed locally but not on
kokoro, the only difference in the workflow was the credentials bit.

Also fixed up some other tiny issues I came across, were not blockers.

PiperOrigin-RevId: 322782457
2020-07-23 07:29:06 -07:00
Adin ScannellandgVisor bot 8263dbfb0f Add standard entrypoints for test targets.
PiperOrigin-RevId: 322265513
2020-07-20 18:05:05 -07:00
gVisor bot 517ba1fffe Merge pull request #2672 from amscanne:shim-integrated
PiperOrigin-RevId: 321053634
2020-07-13 16:10:58 -07:00
Adin Scannell 8c1e2ee569 Update shim to build using bazel.
The go.mod dependency tree for the shim was somehow contradictory. After
resolving these issues (e.g. explicitly imported k8s 1.14, pulling a
specific dbus version), and adding all dependencies, the shim can now be
build as part of the regular bazel tree.

As part of this process, minor cleanup was done in all the source files:
headers were standardized (and include "The gVisor Authors" in addition
to the "The containerd Authors" if originally derived from containerd
sources), and comments were cleaned up to meet coding standards.

This change makes the containerd installation dynamic, so that multiple
versions can be tested, and drops the static installer for the VM image
itself.

This change also updates test/root/crictl_test.go and related utilities,
so that the containerd tests can be run on any version (and in cases
where it applies, they can be run on both v1 and v2 as parameterized
tests).
2020-07-09 17:39:47 -07:00
Adin ScannellandgVisor bot 16559291c5 Fix test release commands to work with older GPG.
The --quick-generate-key command wasn't added until recently.

PiperOrigin-RevId: 314570297
2020-06-03 11:32:11 -07:00
gVisor bot 911986c381 Merge pull request #2837 from avagin:make-startup-option
PiperOrigin-RevId: 314415164
2020-06-02 15:24:33 -07:00
Andrei Vagin cd9ff80442 make: Allow to specify bazel startup options.
And don't parse binary paths for the build target.

Signed-off-by: Andrei Vagin <[email protected]>
2020-06-02 11:30:26 -07:00
Fabricio VoznikaandgVisor bot d7827bf4c9 More runsc changes for VFS2
- Add /tmp handling
- Apply mount options
- Enable more container_test tests
- Forward signals to child process when test respaws process
  to run as root inside namespace.

Updates #1487

PiperOrigin-RevId: 314263281
2020-06-01 21:32:09 -07:00
Adin ScannellandgVisor bot e08aab967d Move to make for tag release workflow.
This will make tag & release workflows idempotent.

PiperOrigin-RevId: 314154888
2020-06-01 10:31:26 -07:00
Adin ScannellandgVisor bot 17dfa07f9b Fix issue with make copy targets.
PiperOrigin-RevId: 313838809
2020-05-29 13:21:20 -07:00