Commit Graph

237 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
2bb8ad7c9e Makefile: pass build tags to manpage build process
The 'go run' command in manpage build stage currently doesn't know about
build tags yet. This could lead to strange effects when eg. optional deps
are switched off.

Therefore also pass the tags to the 'go run' calls.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-06-15 20:58:13 +02:00
Enrico Weigelt, metux IT consult
f60d447c16 Makefile: fix tags parameter computation
In the current implementation, the build tags arguments can catch up an
extra trailing whitespace. Since this parameter is passed in quotes, the
shell won't strip it, leading to the wrong tags passed.

Therefore just strip it explicitly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-06-15 20:58:07 +02:00
Enrico Weigelt, metux IT consult
77374e8b35 Makefile: FHS conformant manpage installation pathes
FHS mandates manpages should go to /usr/share/man (or /usr/local/share/man,
for site local installations) -- /usr/man was an fallout of some ancient
Unices that haven't been fully FHS conformant and usually just a symlink to
/usr/share/man, if existing at all.

Distros sometimes need to override this (eg. MVCC installs), therefore go
the 30+ years common practise way and introduce MANDIR environment variable.
Since it's a subdir under the prefix for general constant and machine
architecture independ data -- which in turn also sometimes wants to be
overridden by distros, it shall be derived from DATADIR variable.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-06-10 19:07:15 +02:00
Enrico Weigelt, metux IT consult
b5f530a157 Makefile: fix DESTDIR environment variable behaviour
The DESTDIR environment variable is used in the wrong way: since 30+ years
it's common practise using it for specifying *temporary* target *root*
(where eg. packaging infrastructure picks up the install image), instead
of the installation *prefix* on the final target.

Fixing this by introducing PREFIX variable (with default /usr/local) and
using both variables according to the 30 years matured common practise.
That way, distro packagers and other standardized build/installation
systems can easily do correct deployments w/o individual hacks.

changes v2: removed variables not used yet
            added documentation

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-06-01 10:49:25 +02:00
Enrico Weigelt, metux IT consult
923ab5b7ca Makefile: use $@ for target file names
Make rules can be formulated more generic by using the $@ symbol, instead
of duplicating the target file name.

Just a little cleanup for better maintainability.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-05-25 16:09:23 +02:00
Phil Estes
49321a12df
Merge pull request #5493 from oss-qm/submit/install-prog
Makefile: allow overriding install command via environment
2021-05-18 09:10:29 -04:00
Claudiu Belu
09a0c9471b tests: Adds support for Windows cri-integration tests
Currently, the cri-integration tests do not work on Windows due to various reasons.
One of the reasons is because all the tests are using Linux-specific images.
Previous commits refactored the image pulling / usage in the cri-integration tests,
making it easier to update, and easier to configure a custom registry to pull images
with Windows support.

For Windows runs, custom registries can be created, which will also contain Windows
images, and the cri-integration tests can be configured to use those registries by
specifying the "--repo-list" argument, a YAML file which will contain an alternative
mapping of the default registries. This is similar to how E2E tests are handled for
Windows runs in Kubernetes.

Some of the tests are Skipped, as they do not pass yet on Windows.

Windows does not collect inodes used stats, thus, the tests that were expecting non-zero
inodes stats were failing.

Signed-off-by: Claudiu Belu <cbelu@cloudbasesolutions.com>
2021-05-14 11:27:35 +00:00
Enrico Weigelt, metux IT consult
9643c99658 Makefile: allow overriding install command via environment
Packaging systems often want to override the install(1) command via INSTALL
environment variable, in order to do distro specific fixups (eg. splitting
out debug symbols from binaries to separate files).

Also use it for creating install target directories.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-05-12 15:52:51 +02:00
Enrico Weigelt, metux IT consult
4b1b8346be Makefile: make sure manpages are built before install-man
Let install-man depend on man, so manpages are really built before
trying to install them.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-05-12 15:50:10 +02:00
Enrico Weigelt, metux IT consult
9ea25634bd Makefile: allow overriding go command by environment
This is required for environments/build systems where a specific
go version / command needs to be used.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2021-05-04 20:39:47 +02:00
Claudiu Belu
5847340a7d tests: Refactors container image usage
Currently, the cri-integration tests do not work on Windows due to various reasons.
One of the reasons is because all the tests are using Linux-specific images. This
commit refactors the image pulling / usage in the cri-integration tests, making it
easier to update, and easier to configure the a custom registry to pull those images
from.

For Windows runs, custom registries can be created, which will also contain Windows
images, and the cri-integration tests can be configured to use those registries by
specifying the "--image-list" argument, a TOML file which will contain an alternative
mapping of the default images.

Signed-off-by: Claudiu Belu <cbelu@cloudbasesolutions.com>
2021-04-27 08:44:21 +00:00
Phil Estes
6ef0d383e3
Merge pull request #5271 from cpuguy83/ci_output_junit
ci: upload junit formatted test results
2021-04-15 13:20:35 -04: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
Brian Goff
af1e2af720 ci: upload junit formatted test results
This allows us to dig more details out of test runs and maintain a
better history.

For this we can use `gotestsum`, which is a utility that wraps `go test`
so that it outputs test2json (go's format) and output junit (a format
more easily imported into other systems).

The PR makes it possible to override the Makefile's use of `go test` to
use any other command tto executet the test. For CI we'll use `gotestsum
--`, where `gotestsum` expects everything after the `--` to be flags for
`go test`.
We then use environment variables to configure `gotestsum` (e.g.
`GOTESTSUM_JUNITFILE` is an env var accepted by `gotestsum`).

For cri tests, the test suite supports outputing test results to a
directory, these are in junit format already. The file is not named
properly just because the code that creates it (in ginkgo) is not
configured well. We can fix that upstream to give us a better name...
until then I'm keeping those results in a separate dir.

A second workflow is also added so the test results can be summed up and
a report added to the workflow run. The 2nd workflow is required for
this since PR runs do not have access to do some of this due to safety
reasons
(https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2021-03-31 17:00:49 +00: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
Maksym Pavlenko
a47feaf462
Merge pull request #4898 from timchenxiaoyu/makefile
standard makefile,fix not work no  macos
2021-03-19 16:05:46 -07:00
Davanum Srinivas
6a4aa1e2e7
Separate go module for client tests
Will help us drop dependency to github.com/Microsoft/hcsshim/test in the
main go.mod

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-03-11 19:27:45 -05: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
Mike Brown
1b1bb48709 adds a new install-deps in the makefile; and some debug out
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-03-11 10:21:32 -06:00
Sebastiaan van Stijn
6c69cd55fb
Makefile: run "go mod tidy" when vendoring
`make vendor` did not do a `go mod tidy` after vendoring, whereas
CI does this as part of the vendor validation, causing CI to fail
if `make vendor` was used to update vendoring, without doing a
`go mod tidy` as well.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-01-27 16:17:50 +01:00
Derek McGowan
7dffdfa560
Move documentation and helper directories out of root
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-01-12 12:19:50 -08:00
weixian.cxy
d649174037 standard makefile,fix not work no macos
Signed-off-by: timchenxiaoyu <837829664@qq.com>
2021-01-04 09:37:56 +08:00
Shengjing Zhu
5988bfc1ef docs: Various typo found by codespell
Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2020-12-22 13:22:16 +08:00
Akihiro Suda
7e6e4c466f
remove "selinux" build tag
The build tag was removed in go-selinux v1.8.0: opencontainers/selinux#132

Related: remove "apparmor" build tag: 0a9147f3aa

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-12-15 20:05:25 +09:00
Akihiro Suda
0a9147f3aa
remove "apparmor" build tag
The "apparmor" build tag does not have any cgo dependency and can be removed safely.

Related: https://github.com/opencontainers/runc/issues/2704

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-12-08 19:22:39 +09:00
Shengjing Zhu
089d2183bf Replace vndr in Makefile
Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2020-12-01 01:33:56 +08: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
c876b15b54 getting cri integration up and running
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-10-19 10:02:05 -05:00
Derek McGowan
1c60ae7f87
Use local version of cri packages
Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-10-07 10:59:40 -07: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
Derek McGowan
4e0b13544e
Update CRI tests to build and push to gcs
This enables to the CRI e2e tests to use the build from a PR

Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-09-25 14:12:57 -07:00
Derek McGowan
f35f21dd0b
Add CRI release functionality to makefile
Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-09-23 14:10:27 -07:00
Derek McGowan
3216a16959
Remove unused Travis configuration
Remove related stale cri release files

Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-09-21 21:15:42 -07:00
Derek McGowan
3275a216fd
Update go list to respect build tags
This prevents packages with no Go included files due to build constraints
being included in the package list. These packages cause the test command
to fail with "can't load package build constraints exclude all Go files".

Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-08-21 09:39:00 -07:00
Akihiro Suda
6988b4d640
remove seccomp buildtag
The cgo dependency on libseccomp was removed in containerd/cri#1548.

The `seccomp` build tag is now ignored (and the seccomp support is always built-in).

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-07-31 14:41:41 +09:00
Davanum Srinivas
49200a1dd4
CRI plugin needs selinux tag as well
A simple `grep selinux_stub bin/containerd` shows that we are not using
selinux tag when building containerd. The CRI plugin pulls in a bunch of
selinux related code, so we need to enable this tag as well.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-04-13 09:29:07 -04:00
Sebastiaan van Stijn
ad090e67e9
man: move ctr.1, containerd-config to section 8, and fix generation
I missed this in my previous change: the ctr man page is also
in Section 8, because it's considered an administrative tool,
and containerd-config is related to containerd so updating these
as well.

This commit also fixes naming of the generated files, which was
hard-coded to .1.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-03 12:32:52 +02:00
Sebastiaan van Stijn
356782cb47
Makefile: man page: rename containerd.1 to containerd.8
The generated file was incorrectly named containerd.1 and should
be in section 8 (see [MAN-PAGES(7)]: Sections of the manual pages)

This patch fixes the filename and updates references to containerd(1)
to refer to containerd(8).

The generated file itself already had the correct section set in its
header, so didn't need updating.

[MAN-PAGES(7)]: http://man7.org/linux/man-pages/man7/man-pages.7.html

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-02 13:52:06 +02:00
Derek McGowan
94d499843c
Add Makefile variable to skip test packages
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2020-01-07 15:25:05 -08:00
Phil Estes
02dcf384bf
Disable criu tests in Travis CI
Temporarily disable criu tests until the 5.0.0 CI kernel issue is
resolved. Also update criu to v3.13

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2019-12-19 00:06:12 -05:00
Lantao Liu
3db1c3b8f4 Better support windows binaries.
Signed-off-by: Lantao Liu <lantaol@google.com>
2019-11-12 11:52:49 -08:00
Michael Crosby
84879b7c48 Add CGO makefile flag
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-11-04 16:25:58 -05:00
Manuel Rüger
5e5584196b
Makefile: Drop vndr whitelist
Since autocompletions moved to contrib/ in
https://github.com/containerd/containerd/pull/3766

Signed-off-by: Manuel Rüger <manuel@rueg.eu>
2019-10-28 15:16:45 +01:00
Eli Uriegas
036db34f37
build: Fix manpage generation
Seems to be that docs/man/ctr.1.md and docs/man/containerd.1.md were
removed in #3637 and were not updated correctly in the Makefile, leading
to build failures like:

    + make man

    make: *** No rule to make target `man/ctr.1', needed by `man'.  Stop.

Changes the gen-manpages command to be specific on which manpages are to
be generated.

Signed-off-by: Eli Uriegas <eli.uriegas@docker.com>
2019-10-08 18:22:23 +00:00
Wei Fu
eaef634ef7 version: use runtime.Version() directly
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2019-10-07 22:45:26 +08:00
fahed dorgaa
c0984941e3 adding go version to client description
Signed-off-by: fahed dorgaa <fahed.dorgaa@gmail.com>

gofmt version.go

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

add a Godoc

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

go fmt version.go

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

add sapces to comment

Signed-off-by: fahed dorgaa <fahed.dorgaa@gmail.com>
2019-10-06 13:38:51 +02:00
Manuel Rüger
b5fa55b0c2 ctr: Enable shell autocompletion
Signed-off-by: Manuel Rüger <manuel@rueg.eu>
2019-10-01 09:43:21 +02:00
Phil Estes
57b51b9481
Move golangci-lint deadline to config file
Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2019-09-19 09:10:56 -04:00
Wei Fu
83a72858f8 Makefile: increase deadline to 2m for golangci-lint
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2019-09-18 11:53:56 +08: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
Michael Crosby
5a656cacb4 Move manpage gen to separate binary
This moves the man page generation to a separate binary

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-09-12 14:19:00 -04:00
Michael Crosby
f3a5b8c0a9 Add command to generate man pages
The climan package has a command that can be registered with any urfav
cli app to generate man pages.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-09-11 15:31:02 -04:00
Derek McGowan
3db5a5ad2e
Fix darwin build for cri release
Split release target for cri

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2019-09-10 16:38:33 -07:00
Lantao Liu
e3abd03ae1 Fix CRI release build.
Signed-off-by: Lantao Liu <lantaol@google.com>
2019-09-09 16:09:25 -07:00
Lantao Liu
61f113e608 Automate CRI tarball release.
Signed-off-by: Lantao Liu <lantaol@google.com>
2019-09-09 10:48:52 -07:00
Justin Terry (VM)
4b5dfaee13 Completely remove Windows v2 in-tree shim
Signed-off-by: Justin Terry (VM) <juterry@microsoft.com>
2019-08-05 16:49:56 -07:00
Wei Fu
b72673fdc7 Makefile: allow custom base path to install
for example, `make DESTDIR=/usr install`.

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2019-07-17 09:26:25 -04:00
Michael Crosby
e4bfab7182
Merge pull request #3417 from dmcgowan/testing-log-hook
Add unit test logging hook
2019-07-16 15:11:12 -04:00
Derek McGowan
f63eab32e1
Add testing log hook to context
Allows log output to sent along with test output
for cleaner output and clearer ordering.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2019-07-16 10:31:43 -07:00
Maksym Pavlenko
2b521e25a7 Switch to golangci-lint
Signed-off-by: Maksym Pavlenko <makpav@amazon.com>
2019-07-14 20:49:28 -07:00
Mattias Appelgren
650a7e5c1e Add hashsum for release archives
Signed-off-by: Mattias Appelgren <mattias@ppelgren.se>
2019-06-25 21:00:09 +02:00
Georgi Sabev
d5b770aa87 Introduce 'clean-test' target in Makefile
When tests fail they could leave debris behind such as
- overlay mounts
- cgroups
- metadata
These debris can cause subsequent tests to fail

Co-authored-by: Danail Branekov <danailster@gmail.com>
Signed-off-by: Georgi Sabev <georgethebeatle@gmail.com>
2019-04-05 17:17:03 +03:00
Sebastiaan van Stijn
b858cfb41b
Makefile: allow overriding package name
With this patch applied, the package-name in the `--version` output can be overridden;

    make PACKAGE=containerd.io binaries

    ./bin/containerd --version
    containerd containerd.io v1.2.0-329-ga15b6e20.m a15b6e2097c48b632dbdc63254bad4c62b69e709.m

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-14 11:38:13 +01:00
Michael Crosby
84a24711e8 Add runc.v2 multi-shim
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-02-21 11:09:46 -05:00
Michael Crosby
5abeeff84f
Merge pull request #2647 from teawater/gdb
Add build option "GODEBUG=1"
2019-01-29 12:04:05 -05:00
Sebastiaan van Stijn
897afeaf35
Revert "Fix CI due to Golang 1.10.6 / 1.11.3 regressions (workaround)"
This reverts commit 52de371700.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-12-19 19:05:30 +01:00
Sebastiaan van Stijn
52de371700
Fix CI due to Golang 1.10.6 / 1.11.3 regressions (workaround)
Attempt to fix CI is failing due to a regression in Go 1.10.6 / 1.11.3 (see https://github.com/golang/go/issues/29241)

```
package github.com/containernetworking/plugins/...: github.com/containernetworking/plugins/...: invalid import path: malformed import path "github.com/containernetworking/plugins/...": double dot
```

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-12-14 15:35:10 +01:00
Justin Terry (VM)
7d70d2b78d Fix Makefile to run protobuild on paths with spaces
Signed-off-by: Justin Terry (VM) <juterry@microsoft.com>
2018-11-05 09:08:48 -08:00
Phil Estes
0dd3211a06
Remove containerd-release tool from main repo
The release-tool is now located in the `containerd/project` repo.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2018-10-19 12:13:38 -04:00
Hui Zhu
c5a0c7f491 Add build option "GODEBUG=1"
Make will generate GDB friendly binary with this build option.

Signed-off-by: Hui Zhu <teawater@hyper.sh>
2018-09-19 16:13:42 +08:00
Justin Terry (VM)
019b0c34de Introduce containerd-shim-runhcs-v1 on Windows
Implements the containerd-shim-runhcs-v1 shim on Windows for the runtime
v2 shim API.

Signed-off-by: Justin Terry (VM) <juterry@microsoft.com>
2018-08-22 08:15:43 -07:00
Aleksa Sarai
7aa132ffc7
docs: man: rename config.toml(5) to be more descriptive
The man page namespace is global, so in order to avoid colliding with
other man pages named "config.toml" rename ours to be more descriptive.
This also helps with discoverability (now tab-completion of 'man
containerd<tab>' will return the config man page), as well as making it
much cleaner from the perspective of distributions that want to package
containerd.

Signed-off-by: Aleksa Sarai <asarai@suse.de>
2018-08-08 18:33:29 +10:00
Michael Crosby
da1b5470cd Runtime v2
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2018-07-17 10:21:29 -04:00
Derek McGowan
5bd99af7db
Merge pull request #2097 from Random-Liu/vendor-cri-plugin
Vendor cri plugin into containerd.
2018-02-23 13:55:13 -08:00
Kunal Kushwaha
b12c3215a0 Licence header added
Signed-off-by: Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp>
2018-02-19 10:32:26 +09:00
Lantao Liu
809a99a39e Vendor cri plugin and add critest
Signed-off-by: Lantao Liu <lantaol@google.com>
2018-02-16 23:23:47 +00:00
Phil Estes
8f183b5ee9
Add basic manpages for ctr, containerd, containerd-config
Adds initial manpages for ctr, containerd, and containerd config
commands, as well as the config.toml configuration file.

Adds targets to Makefile for generating and installing manpages.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2018-02-14 15:17:31 -05:00
Phil Estes
fc1913a5a6
Add capability to build manpages from markdown
Adds capability to build the manpages via the go-md2man utility to the
make framework for containerd

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2018-01-30 19:50:45 -05:00
Phil Estes
e78c77fd2b
Add Golang issue link re: -trimpath to Makefile
Per the request in #2021, add a link to the issue in case this situation
changes in the future.

Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2018-01-22 15:30:31 -05:00
Michael Crosby
e9432a7900
Merge pull request #2021 from kunalkushwaha/trimpath
trim code path in stack trace.
2018-01-22 15:25:11 -05:00
Stephen J Day
fe5da18f70
Makefile: ensure that containerd-shim gets added when installing
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2018-01-22 11:48:27 -08:00
Kunal Kushwaha
ad4f265497 trim code path in stack trace.
Added -trimpath flag in -gcflags to reduce codepath in stack trace.
Fixes #2000

In case of multiple GOPATH, it will trimpath of first one

Signed-off-by: Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp>
2018-01-22 11:03:49 +09:00
Lucas Molas
5fd9904684 Revert "Add go build option '-i' only for native builds"
Signed-off-by: Lucas Molas <lmolas@fundacionsadosky.org.ar>
2018-01-10 12:54:42 -03:00
Daniel Nephin
ebbcececa1 Remove DCO check from makefile, move to .travis.yml
The DCO check is primarily only relevant as part of CI, so it
doesn't need to be in the Makefile. A contributor looking to
validate their commits can run script/validate/dco.

Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2018-01-08 18:35:15 -05:00
Stephen J Day
1c8911b1f1
Makefile: no need to calculate GOOS
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2018-01-04 17:30:01 -08:00
Lucas Molas
55b5e356de Added go build option '-i' only for native builds
Signed-off-by: Lucas Molas <lmolas@fundacionsadosky.org.ar>
2017-12-20 17:00:47 -03:00
Daniel Nephin
cc9216c1dd Remove go install from Makefile
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2017-12-18 11:17:24 -05:00
Daniel Nephin
274ce69f93 Less verbose build output
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2017-12-15 16:41:28 -05:00
Michael Crosby
96e2f30250
Merge pull request #1759 from dnephin/single-integration-target
Remove duplicate integration target
2017-11-21 10:57:22 -05:00
Michael Crosby
434f0e679f Compile shim without cgo for size and mem usage
This compiles the shim without cgo and statically which ends up to have
lower memory usage and binary size.  buildmode=pie cannot be used
without cgo.

ref: https://github.com/golang/go/issues/17789#issuecomment-258542220

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-11-17 17:32:49 -05:00
Daniel Nephin
4df7075a74 Remove integration-parallel target
Always run in parallel. The old target can be emulated with

TESTFLAGS_PARALLEL=1 make integration

Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2017-11-16 11:15:33 -05:00
Daniel Nephin
d8cf30e42e Reduce number of blobs in TestWalkBlobs
Reduce runtime from 170s to 3s

Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2017-11-14 17:51:44 -05:00
Daniel Nephin
b28e1eee42 Fix coverage report
Previously the coverage.txt file was never populated

Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2017-11-14 12:47:48 -05:00
Michael Crosby
01cdf330bb
Merge pull request #1716 from crosbymichael/strip
Strip binaries in Makefile
2017-11-07 10:44:47 -05:00
Daniel Nephin
f9e969bac8 Use gometalinter for linting
gometalinter runs linters in parallel for faster linting
it provides a uniform way of whitelisting lines using // nolint or the exclude
field in the config

Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2017-11-03 18:02:27 -04:00
Michael Crosby
a045575998 Strip binaries in Makefile
This will make the binaries around 8MB smaller.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-11-03 11:44:41 -04:00
Michael Crosby
b8c4d85564 Add buildmode=pie to makefile
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-10-26 16:25:30 -04:00
Michael Crosby
769d9e16bd add release tool to generate releases
This tool makes our standard release template easy to generate.  It also
adds a few features like marking changed dependnencies for packages and
others to know what updated from the last release.

usage:
`containerd-release -n releases/v1.0.0-beta.2.toml`

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2017-10-11 18:51:13 -04:00
Stephen J Day
363d692f35
api/services: define the introspection API
After several requests for information about platform support,
configuration introspection and feature switches, we now have a solution
that should work in all these use cases. The Introspection API hooks
into the plugin subsystem registration process. During registration,
plugins declare several pieces of information, allowing clients to
discover the cababilities and support that a containerd instance
provides, including whether or not it loaded with an error.

To allow symmetrical error reporting, the `google/rpc.Status` protobuf
definitions have been brought in from the googleapis project.
Unfortunately, we had to generate these in place to match our protobuf
system.

Once we like this design, we can add an implementation to integrate it
directly with the plugin system.

Enjoy!

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-10-10 16:40:47 -07:00