Commit Graph

71 Commits

Author SHA1 Message Date
Phil Estes
b52727342c
Merge pull request #5308 from AkihiroSuda/add-imgcrypt-bin
cri-cni-release: add imgcrypt binaries (v1.1.0)
2021-04-07 15:43:38 -04:00
Mike Brown
da998c81eb move to gcr.io/k8s-staging-cri-tools test images
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-04-07 10:04:02 -05:00
Akihiro Suda
92ea98eda5
cri-cni-release: add imgcrypt binaries (v1.1.0)
Add `ctd-decoder` and `ctr-enc`.

Close issue 5265

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-04-07 17:38:42 +09:00
Mike Brown
548d984f27
Merge pull request #5132 from mikebrow/add-some-debug-out-for-dep-setups
adds a new install-deps in the makefile; and some refactoring of the scripts
2021-03-24 15:28:16 -05:00
Mike Brown
9ad87b9ba7 adds critools-version
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-03-24 10:58:40 -05:00
Phil Estes
a1138182d5
Merge pull request #5180 from dmcgowan/lint-enforce-comments
Fix exported comments enforcer in CI
2021-03-15 10:50:06 -04:00
Sebastiaan van Stijn
55a9bbc033
Prevent runc inheriting BUILDTAGS from containerd
Both runc and containerd use BUILDTAGS to customize go build-tags.

When building containerd with custom build-tags, runc inherited
those, causing the default to be overwritten, e.g.;

    make BUILDTAGS=no_btrfs cri-cni-release
    (in script/setup/install-runc)

    HEAD is now at 12644e61 VERSION: release 1.0.0~rc93
    make[1]: Entering directory '/tmp/tmp.ZJzc2KtI0A/runc'
    go build -trimpath "-mod=vendor" "-buildmode=pie"  -tags "no_btrfs" -ldflags "-X main.gitCommit="12644e614e25b05da6fd08a38ffa0cfe1903fdec" -X main.version=1.0.0-rc93 " -o runc .
                                                   ^^^^^^^^^^^^^^^^

This patch brings back the BUILDTAGS make-var in the runc-install
script, which fixates the buildtags to our defaults.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-12 18:37:18 +01:00
Derek McGowan
35eeb24a17
Fix exported comments enforcer in CI
Add comments where missing and fix incorrect comments

Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-03-12 08:47:05 -08:00
Mike Brown
2205da64a6 clean up install-cni and install-critools
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-03-11 10:21:32 -06:00
Sebastiaan van Stijn
79a51cd16a
move runc version to a separate file for easier consumption
This moves the runc version to build to scripts/setup/runc-version,
which makes it easier for packagers to find the default version
to use.

The RUNC_VERSION environment variable can still be used to override
the version, which can be used (e.g.) to test against different versions
in our CI.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-10 14:28:29 +01:00
Sebastiaan van Stijn
8325ba5d36
Separate runc binary version from libcontainer version
Now that the dependency on runc (libcontaienr) code has been reduced
considerably, it is probbaly ok to cut the version dependency between
libcontainer and the runc binary that is supported.

This patch separates the runc binary version from the version of
libcontainer that is defined in go.mod, and updates the documentation
accordingly.

The RUNC_COMMIT variable in the install-runc script is renamed to
RUNC_VERSION to encourage using tagged versions, and the Dockerfile
in contrib is updated to allow building with a custom version.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-10 13:41:12 +01:00
Sebastiaan van Stijn
b89a63a235
Remove references to apparmor and selinux buildtags for runc
From the runc v1.0.0-rc93 release notes:

> The "selinux" and "apparmor" buildtags have been removed, and now all runc
> builds will have SELinux and AppArmor support enabled. Note that "seccomp"
> is still optional (though we very highly recommend you enable it).

Also adding a note about kmem support.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-10 12:16:54 +01:00
Sebastiaan van Stijn
164573897c
script/setup: use git clone instead of go get -d
`go get -d` uses go modules by default in Go 1.16 and up, which results
in modules being fetched for the "latest" module version, after which we
tried to "git checkout" to `<VERSION>`.

For runc, this means that (possibly incorrectly), `go get` will download
runc `v0.1.1` (most recent non-"pre-release", which caused failures (e.g
the old `Sirupsen/logrus` being downloaded).

In addition, some of the dependencies we're installing use vendoring, and
thus would not require the modules to be downloaded (and vendored files
will be ignored when using `go get` with modules).

This patch switches several uses `go get -d` to use a regular
git clone, after which the desired version is checked out,
and the binaries are built.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Phil Estes <estesp@amazon.com>
2021-03-03 15:34:54 -05:00
Akihiro Suda
80243b8667
CI: update crun to 0.17
https://github.com/containers/crun/releases/tag/0.17

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-01-22 20:51:14 +09:00
Shengjing Zhu
56672b961d Change to GOPATH before go get
So it won't touch go.mod

Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2020-12-01 01:39:10 +08:00
Shengjing Zhu
553a369158 Fix reference to vendor.conf in scripts
Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2020-12-01 01:34:10 +08:00
Akihiro Suda
a67dbdee79
CI: update crun to 0.16
Changes since 0.15:
- https://github.com/containers/crun/releases/tag/0.16
- https://github.com/containers/crun/releases/tag/0.15.1

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-11-30 18:10:24 +09:00
Sebastiaan van Stijn
1edeea7663
install-runc: remove unused USESUDO variable
This is no longer needed, as the script is already run with sudo.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-11-10 12:49:21 +01:00
Mike Brown
63f673a229 updates cri-tools to latest version
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-10-31 14:46:44 -05:00
Phil Estes
615af428a3
Windows CNI install script using lowercase "destdir"
Fixes packaging via GH Actions script, which sets DESTDIR and is used
across many scripts.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-10-02 16:31:28 -04:00
Akihiro Suda
c385d1102b
CI: update crun to v0.15
Changes: https://github.com/containers/crun/releases/tag/0.15

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-09-29 17:12:23 +09:00
Derek McGowan
65df8db289
Remove sudo from installation and cri release
Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-09-25 14:40:59 -07:00
Antonio Ojea
e3d27f9ed8 bump cni version to v0.8.0
bump cni dependencies so we can benefits from its
bugfixes and improvements

Signed-off-by: Antonio Ojea <antonio.ojea.garcia@gmail.com>
2020-08-21 19:55:13 +02:00
Derek McGowan
d2472ecc59
Add CRI release build
Add installation scripts needed to generate CRI + CNI tar package on
release.
Update Github action release script to generate CRI release tarballs for
Linux and Windows.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-08-11 09:16:38 -07:00
Jacob Blain Christen
b4376e9865 Update Vagrantfile for testing SELinux
`vagrant up` will build and install containerd and all dependencies,
setting up proper SELinux contexts on the runc and containerd binaries.
The VM is configured to be SELinux Enforcing by default but this gets
changed during various CI passes via a matrix param to Disabled and
Permissive before running tests. I have an open PR to fix the
container-selinux policy for containerd at
https://github.com/containers/container-selinux/pull/98 which once
accepted we will want to update the CI matrix to use Enforcing mode
instead of Permissive.

All tests currently pass in SELinux permissive mode with containerd
configured with `enable_selinux=true`. To see which tests are failing
with SELinux enforcing and an already spun up VM:
`SELINUX=Enforcing vagrant up --provision-with=selinux,test-cri`
To test SELinux enforcing in a new VM:
`vagrant destroy -force; SELINUX=Enforcing vagrant up --provision-with=shell,selinux,test-cri`

The `selinux` shell provisioner, parameterized by the SELINUX envvar,
will configure the system as you would expect, with the side effect that
containerd is configured with `enable_selinux=true` via
`/etc/containerd/config.toml` for Permissive or Enforcing modes and
`enable_selinux=false` when SELINUX=Disabled.

Provided that virtualization is suported, this Vagrantfile and provisioners
make it easy to test containerd/cri for conformance under SELinux on
non-SELinux systems.

Signed-off-by: Jacob Blain Christen <jacob@rancher.com>
2020-08-10 01:55:44 -07:00
Sebastiaan van Stijn
3cc2be2a87
Update cri-tools to v1.18.0-100-g2bf7674 for Go 1.15 compatibility
full diff: 16911795a3...2bf7674922

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-08-05 13:17:11 +02:00
Phil Estes
b47c7ec274
Update to later version of critools with timing fix.
Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-07-15 14:43:58 -04:00
Akihiro Suda
c041970e99
update crun to v0.14
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-07-03 12:59:04 +09:00
Sebastiaan van Stijn
a6dd1f27d9
update urfave/cli v1.22.1, go-md2man v2.0.0, blackfriday v2.0.1
This updates urfave/cli and its dependencies to v1.22.1:

- diff for urfave/cli: https://github.com/urfave/cli/compare/v1.22.0...v1.22.1
- diff for go-md2man: https://github.com/cpuguy83/go-md2man/compare/v1.0.10...v2.0.0
- diff for blackfriday: https://github.com/russross/blackfriday/compare/v1.5.2...v2.0.1

Also adds github.com/shurcooL/sanitized_anchor_name as a new dependency, which is
used by russross/blackfriday, but will be removed again in a future update (dependency
is already removed on the v2 branch through russross/blackfriday@919b1f5b9b

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-07-02 10:48:45 +02:00
Phil Estes
ef0cf12647
Match version used in CRI project
Use the critools version currently being used in the CRI project CI.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-06-03 15:12:48 -04:00
Akihiro Suda
af131d7258 cgroup2 CI
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-05-22 01:15:12 +09:00
fahedouch
24b331ad1e omit sudo when EUID eqto 0
Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

omit sudo when EUID eqto 0

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

omit sudo when EUID eqto 0

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

omit sudo when EUID eqto 0

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

use gosu to omit sudo in GA

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

use gosu to omit sudo in GA

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

set working-dir for <<Setup gosu>> step

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>

fix job permissions

Signed-off-by: fahedouch <fahed.dorgaa@gmail.com>
2020-05-05 20:13:27 +02:00
ktock
046a520c91 vendor: update containerd/cri dc7afe8fbe
full diff: 61b7af7564...dc7afe8fbe

This commit includes moving up to the latest critools(1.18.0).

Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2020-04-29 14:49:54 +09:00
Phil Estes
32649fe305
Fix retrieval of golangci-lint specific version
Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-04-22 14:45:31 -04:00
Phil Estes
74ceb35f50
Small fixes to our Actions CI workflow
Integration tests were running with latest Go release rather than the
version used everywhere else. Also, we don't need to install protoc from
tarball and also apt-get the package for Ubuntu when used as a
dependency for criu build.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-04-15 15:19:01 -04:00
Davanum Srinivas
7a252f3ca1
Build runc with selinux support
docker-ce seems to be building runc with selinux support, let us follow
the same pattern here please:
https://github.com/docker/docker-ce/search?p=1&q=RUNC_BUILDTAGS&unscoped_q=RUNC_BUILDTAGS

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-04-14 15:24:31 -04:00
Phil Estes
041545cd6a
Fix protobuild and CI check protos
Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-04-14 14:31:43 -04:00
Sebastiaan van Stijn
4326fc624a
Update Golangci-lint v1.23.8
full diff: https://github.com/golangci/golangci-lint/compare/v1.18.0...v1.23.8

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-10 12:46:31 +01:00
Akihiro Suda
8e448bb279 vendor protobuf & grpc
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-02-26 10:57:05 +09:00
Wei Fu
246a560edb script: use github.com/kubernetes-sigs/cri-tools directly
When we call `go get -d -v
github.com/kubernetes-incubator/cri-tools/...` which repos has been
moved to `github.com/kubernetes-sigs/cri-tools`, `go get` will create
package `github.com/kubernetes-sigs/cri-tools`.

```
go get -d -v github.com/kubernetes-incubator/cri-tools/...
github.com/kubernetes-incubator/cri-tools (download)
github.com/kubernetes-sigs/cri-tools (download)
```

According to old version of `github.com/kubernetes-incubator/cri-tools`
Makefile, if there is no `github.com/kubernetes-sigs/cri-tools` package,
it will create softlink self to `github.com/kubernetes-sigs/cri-tools`.
But `go get` will create `github.com/kubernetes-sigs/cri-tools` and
there is no softlink. Therefore, the critools are always latest one, not
specific version.

So, use `github.com/kubernetes-sigs/cri-tools` will be better and save
traffic from `go get`.

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2020-02-17 21:52:39 +08:00
Phil Estes
75d0c5f2e7
Fix incorrect comment from copy/paste of starting script
Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2020-02-13 11:48:12 -05:00
Akihiro Suda
067a66b90a
.travis.yml: run test with crun
Relates to #3727

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-01-06 16:29:06 -08:00
Joakim Roubert
9eef69e3ae Update after review comments
Change-Id: Ic566e4857436409cdf1cdd7a635dfeee809b91a9
Signed-off-by: Joakim Roubert <joakimr@axis.com>
2019-12-13 08:07:23 +01:00
Joakim Roubert
499fbb0337 Improve install scripts
* Only use bash where needed (scripts with pipes that use -o pipefail)
* Make string comparisons POSIX compatible
* Handle whitespace(s) in GOPATH
* Remove superfluous quotes in variable assignments

Change-Id: If1ea55f06f402ded646b5085d4837c0996f90fab
Signed-off-by: Joakim Roubert <joakimr@axis.com>
2019-12-12 13:25:25 +01:00
Sebastiaan van Stijn
55ea3dc9b1
vendor.conf: reformat to use columns
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-11-29 13:33:32 +01:00
Lantao Liu
90735a5d13 Update cri to 5d49e7e51b43e36a6b9c4386257c7d08c602237f.
Signed-off-by: Lantao Liu <lantaol@google.com>
2019-09-26 14:31:00 -07:00
Michael Crosby
3bc99755d4 Try set GOGC for golint
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-09-17 14:52:49 -04:00
Lantao Liu
1b4cec9796 Update cri test to fix image reference test and fix gcs deploy.
Signed-off-by: Lantao Liu <lantaol@google.com>
2019-09-09 23:51:36 -07:00
Michael Crosby
b5f03eacd3 Pin to libseccomp 2.3.3
lib seccomp 2.4 has huge performance regressions.
This change pins to 2.3.3 where that is not an issue

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-08-23 15:19:38 +00:00
Michael Crosby
28bdb71cc9
Merge pull request #3492 from Random-Liu/update-cri
Update cri to b213648c5b
2019-08-06 10:53:29 -04:00