Commit Graph

1442 Commits

Author SHA1 Message Date
Hui Zhu
0c5cfcd302
Merge pull request #1565 from jodh-intel/fix-markdown
Fix markdown
2019-04-23 12:52:09 +08:00
Zha Bin
dd0808ae54 network: pass network interface RawFlags to agent
In order to support NOARP in ipvlan interface, the runtime
will pass the rawflags to agent, which also apply to other
network interfaces, not just ipvlan.

Fixes: #1391

Signed-off-by: Zha Bin <zhabin@linux.alibaba.com>
2019-04-23 09:42:00 +08:00
Hui Zhu
74fb9ff570
Merge pull request #1541 from stefanha/fix-parallel-make
Fix parallel make
2019-04-23 09:09:02 +08:00
Julio Montes
77309f4982
Merge pull request #1519 from saschagrunert/patch-1
Update golang to 1.12.3
2019-04-22 09:13:42 -05:00
Xu Wang
b850ab85e2
Merge pull request #1567 from bergwolf/mount
vc: change container rootfs to be a mount
2019-04-21 12:29:16 +08:00
Peng Tao
196661bc0d vc: change container rootfs to be a mount
We can use the same data structure to describe both of them.
So that we can handle them similarly.

Fixes: #1566

Signed-off-by: Peng Tao <bergwolf@hyper.sh>
2019-04-20 00:42:25 -07:00
Xu Wang
b218229589
Merge pull request #883 from WeiZhang555/rfc-persist-data-standard-wip
persist: baseline persist data format
2019-04-20 11:54:48 +08:00
Wei Zhang
989b3737c7 docs: fix lisence header to 2019
Modify lisense header from 2018 to 2019.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-20 10:04:30 +08:00
Fupan Li
fe6ff5c042
Merge pull request #1550 from teawater/template_path
factory: Add new factory option template_path
2019-04-19 17:20:47 +08:00
Wei Zhang
3262da0207 bugfix: fix potential panic
* Fix potential panic by nil pointer.
* Address comments.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 16:03:50 +08:00
Wei Zhang
9bd4e5008c store: address comments
Address review comments

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:38:10 +08:00
Wei Zhang
0f52c8b56d test: add unit test for new FS storage driver
add more unit tests.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:37:33 +08:00
Wei Zhang
02f21228dd test: fix unit test
For experimental features, state.json won't be updated, so modify some
unit test to skip.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:37:33 +08:00
Wei Zhang
e40dcb9376 storage: set new storage driver as "experimental"
Set new persist storage driver "virtcontainers/persist/" as "experimental"
feature.
One day when this can fully work and we're ready to move to 2.0, we'll move
it from "experimental" feature to formal feature.
At that time, the "virtcontainers/filesystem_resource_storage.go" can be removed
completely.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:35:33 +08:00
Wei Zhang
504c706bea storage: address comments
Address some comments:
* fix persist driver func names for better understanding
* modify some logic, add some returned error etc

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:33:53 +08:00
Wei Zhang
6e4149d86c persist: save and restore state from persist.json
Save and restore state from persist.json instead of state.json

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:33:53 +08:00
Wei Zhang
039ed4eeb8 persist: persist device data
Persist device information to relative file

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:33:53 +08:00
Wei Zhang
b42fde69c0 persist: demo code for persist api
Demonstrate how to make use of `virtcontainer/persist/api` data structure
package.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:33:53 +08:00
Wei Zhang
e14ffb40cf persist: baseline persist data format
Fixes #803

The disk persist data should be "versioned" and baselined, any modification in
persist data should be considered potential break of backward compatibility.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2019-04-19 15:33:53 +08:00
Hui Zhu
925193fb3e
Merge pull request #1563 from bergwolf/blockIndex
vc: remove BlockIndex from container state
2019-04-19 13:54:08 +08:00
Hui Zhu
0549a70d93 factory: Add new factory option template_path
Add new factory option template_path that specifies the path of template.

Fixes: #1549

Signed-off-by: Hui Zhu <teawater@hyper.sh>
2019-04-19 11:31:18 +08:00
Fupan Li
3bdc40bfd0
Merge pull request #1547 from teawater/vmtemplate_init_check
factory: Check if vm templateing is on before vm templateing initialize
2019-04-19 10:19:14 +08:00
Archana Shinde
f6b8387814 devices: Skip floppy drives while passing devices to guest
In privileged mode, all host devices are supposed to be passed
to the container in config.json. Skip floppy drives.

Fixes #1551

Signed-off-by: Archana Shinde <archana.m.shinde@intel.com>
2019-04-18 11:26:07 -07:00
James O. D. Hunt
82d105f759 doc: Fix markdown
Resolve a number of syntax issues that were lurking in the markdown.

Fixes: #1564.

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2019-04-18 15:50:34 +01:00
James O. D. Hunt
1a0a4bc049 doc: Fix broken internal link
Link addresses must be all lower case to work.

Partially fixes: #1564.

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2019-04-18 15:50:26 +01:00
James O. D. Hunt
92edeb11c6 doc: Simplify note
It seems that codeblocks inside block quotes are not well understood by
markdown parsers, so simplify by removing the codeblock in the note -
the note is clear enough without labouring the point.

Partially fixes: #1564.

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2019-04-18 15:50:23 +01:00
Peng Tao
203728676a vc: remove BlockIndex from container state
No longer used.

Fixes: #1562

Signed-off-by: Peng Tao <bergwolf@hyper.sh>
2019-04-17 22:39:42 -07:00
Hui Zhu
76a5076e56 template: Add check if vm template is on before vm template initialize
Add check if vm template is on before vm template initialize.

Fixes: #1514

Signed-off-by: Hui Zhu <teawater@hyper.sh>
2019-04-18 10:53:08 +08:00
Eric Ernst
8097c54e79 Firecracker: update to version v0.15.2
Fixes: #1559

Signed-off-by: Eric Ernst <eric.ernst@intel.com>
2019-04-17 16:09:40 -07:00
Eric Ernst
717a30bfe0
Merge pull request #1556 from katacontainersbot/1.7.0-alpha1-branch-bump
# Kata Containers 1.7.0-alpha1
2019-04-17 13:26:18 -07:00
katacontainers bot
0ec4d799f8 release: Kata Containers 1.7.0-alpha1
- s390x: fix gofmt complain
- factory: Make VMCache and VM templating can work together
- agent: pass correct mount type to agent for ephemeral volumes
- network: Make tcfilter model as default
- netmon: Fix bug in how routes are converted
- shimv2 should return grpc error codes
- Deprecate hyperstart, CC shim, and CC proxy
- virtcontainers: inherit parent's CPU constraint
- fix ut failure due to incorrect cleanup and make it runnable with non-root
- storage: create k8s emptyDir inside VM
- virtcontainers: prepend a kata specific string to host cgroups path
- Factory: enable template feature for arm64
- cli: fix kata-check test
- shimv2: fix the issue of stop container failed
- split sandbox/container state
- Make factory can control VMCache server
- vc: remove spawner
- s390x: fix golangci-lint complains
- qemu: Remove the storage directories if qemu get from the factory
- katautils: fix the issue of missing proxy debug config
- vendor: update govmm
- virtcontainers: Use only supported namespaces
- cri-o: Update repository URLs
- travis: use xenial
- runtime: support memory hotplug via probe interface on aarch64
- s390x: not set socketID and threadID
- config: fix panic in type assertion
- Fix yq issues

a013f9b s390x: fix gofmt complain
3852682 network: Change the package level network default
33bae70 network: Make tcfilter model as default
343a0d3 factory: Make VMCache and VM templating can work together
b08ab6a vc: modify ioctl function to handle shim test
c425079 vc: Deprecate CC proxy and shim
c658770 vc: remove virtc api cli
d4ef9c0 vc: deprecate hyperstart agent
8abd2ec netmon: Fix bug in how routes are converted
59e3956 virtcontainers: inherit parent's CPU constraint
f512542 sandbox: return ErrNoSuchContainer when failing to find a container
8215a3c shimv2: convert vc errors to grpc errors
cf90751 vc: export vc error types
9040f6a ut: fix UT failure due to incorrect cleanup
a0f49a9 ut: fix UT failure due to non-root
1a1f93b virtcontainers: add a kata specific prefix to host cgroups path
f7223c6 shimv2: fix the issue of stop container failed
76c4639 storage: create k8s emptyDir inside VM
98687a3 Template: enable template for arm64
16fe855 qemu: Remove the storage directories if qemu get from the factory
ace8115 factory: Make factory status can show status of VMCache server
f639787 factory: Make factory destroy can stop VMCache server
9ac6831 cli: fix kata-check test
a63013d vc: remove spawner
c414599 types: remove pid from sandbox state
03ee25d agent: treat container as shared pidns whenever it has pidns path
616f26c types: split sandbox and container state
8041fc9 katautils: fix the issue of missing proxy debug config
bb347ac vendor: update govmm
0b430dc virtcontainers: Use only supported namespaces
e31b040 cri-o: Update repository URL
ea1df84 travis: use xenial
b50292a arm64: dep ensure to keep track of the revisons in kata agent
3bfcdf7 agent: add interface memHotplugByProbe
47670fc memoryDevice: reconstruct memoryDevice
30a6a7d agent: acquire memory hotplug probe info via GetGuestDetails
4993dff ci: Add a failed execution check for curl
7fa0390 ci: set $yq_version to 2.3.0
19458ec s390x: fix golangci-lint
49be8ee s390x: not set socketID and threadID
1b6affe config: fix panic in type assertion
2d422a8 agent: pass correct mount type to agent for ephemeral volumes
228d151 mount: Add check for k8s host empty directory
70c1931 mounts: Add check for system volumes

Signed-off-by: katacontainers bot <katacontainersbot@katacontainers.io>
2019-04-17 17:39:20 +00:00
Jose Carlos Venegas Munoz
57b1ce9328
Merge pull request #1554 from alicefr/fix-gofmt
s390x: fix gofmt complain
2019-04-17 11:05:16 -05:00
Alice Frosi
a013f9b27b s390x: fix gofmt complain
Fix gofmt complain for virtcontainers/qemu_s390x.go

Fixes: #1553

Signed-off-by: Alice Frosi <afrosi@de.ibm.com>
2019-04-17 14:10:09 +02:00
Stefan Hajnoczi
53ebe51f1c build: fix race between 'clean' and generated files
When a parallel build is invoked using "make -j4" there is a race
between EXTRA_DEPS ('clean') and generating files:

  CPU1                             CPU2
  ----                             ----
  create cli/generated-config.go
                                   rm cli/generated-config.go
  go build -> error: generated-config.go doesn't exist!

Previous commits ensured that targets relying on version information
like VERSION and COMMIT declare appropriate dependencies.  Therefore
make is now able to detect changes and rebuild targets as needed.  It is
no longer necessary to abuse the clean target to force a rebuild.

Fixes: #1540
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-04-17 11:59:10 +01:00
Stefan Hajnoczi
7949cd6ebc build: turn COMMIT into a file dependency
Makefile uses $(shell) to build a git commit string.  Unfortunately this
means make targets cannot be rebuilt when COMMIT changes value.  We need
to reflect this string value into files on which make can process
dependencies.

I stole a solution from QEMU's Makefile:
1. Print the string into .git-commit.tmp
2. If .git-commit.tmp differs from .git-commit, copy it to .git-commit
3. Depend on .git-commit from all targets that need $COMMIT

This way targets are only rebuilt if the commit string value actually
changes.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-04-17 11:59:10 +01:00
Stefan Hajnoczi
0f7bb25cf7 build: extract config-generated.go.in from Makefile
Makefile had a template for cli/config-generated.go embedded inside it.
There is already a templating mechanism for .in files.  Using a .in file
is cleaner since it avoids make's awkward interaction with shell
escaping and line splitting.

This patch moves the template into cli/config-generated.go.in and reuses
the existing .in file templating mechanism.  Only the PKGRUNDIR variable
needs to be added.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-04-17 11:59:10 +01:00
Stefan Hajnoczi
1eb5d6c900 build: use MAKEFILE_LIST for a more complete Makefile dependency
Depending on Makefile is not enough to detect all changes.  We must
rebuild when included makefiles change, too.

The MAKEFILE_LIST special variable contains the filenames of all
included makefiles and Makefile itself.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-04-17 11:26:24 +01:00
Stefan Hajnoczi
bbf92533f4 build: add VERSION dependency to netmon target
The netmon target must be rebuilt when the VERSION file changes since it
uses the value of VERSION on the build command-line.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-04-17 11:26:00 +01:00
Stefan Hajnoczi
b20fd9d10e build: remove duplicated COLLECT_SCRIPT from clean
GENERATED_FILES already includes COLLECT_SCRIPT, so there's no need to
specify it again:

  GENERATED_FILES += $(COLLECT_SCRIPT)
  ...
  clean:
    $(QUIET_CLEAN)rm -f ... $(GENERATED_FILES) $(COLLECT_SCRIPT)

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-04-17 11:26:00 +01:00
Fupan Li
5d875be274
Merge pull request #1409 from teawater/vmcache_templating
factory: Make VMCache and VM templating can work together
2019-04-16 23:56:08 +08:00
Peng Tao
168665b9a7
Merge pull request #1439 from YongjiXie/pass-correct-mount-type-for-ephemeral-volumes
agent: pass correct mount type to agent for ephemeral volumes
2019-04-16 15:36:14 +08:00
Archana Shinde
edc77a0263
Merge pull request #1502 from amshinde/make-tc-default
network: Make tcfilter model as default
2019-04-15 11:34:07 -07:00
Archana Shinde
385268226f network: Change the package level network default
Change the package level default network model to tcfilter.

Signed-off-by: Archana Shinde <archana.m.shinde@intel.com>
2019-04-15 09:34:58 -07:00
Archana Shinde
33bae7053f network: Make tcfilter model as default
tcfilter requires no changes to the interface provided by the network
plugin and supports a larger set of plugins.

Fixes #1501

Signed-off-by: Archana Shinde <archana.m.shinde@intel.com>
2019-04-15 09:34:58 -07:00
Sebastien Boeuf
d75e7fc8ca
Merge pull request #1524 from amshinde/fix-netmon-routes-cidr
netmon: Fix bug in how routes are converted
2019-04-15 08:38:15 -06:00
Fupan Li
2b45f0b2fd
Merge pull request #1528 from bergwolf/grpc
shimv2 should return grpc error codes
2019-04-15 09:50:10 +08:00
Hui Zhu
343a0d35fe factory: Make VMCache and VM templating can work together
Make VMCache and VM templating can work together.

Fixes: #1376

Signed-off-by: Hui Zhu <teawater@hyper.sh>
2019-04-13 21:07:39 +08:00
zhangwei_cs
fae022dc64
Merge pull request #1428 from gabibeyer/slashNburn
Deprecate hyperstart, CC shim, and CC proxy
2019-04-13 11:06:23 +08:00
Hui Zhu
6e5957830e
Merge pull request #1530 from devimc/topic/virtcontainers/inheritParentCpuCgroup
virtcontainers: inherit parent's CPU constraint
2019-04-13 08:36:26 +08:00
Gabi Beyer
b08ab6ae1f vc: modify ioctl function to handle shim test
The kata shim tests make use of an ioctl function, so instead
of having a custom one within that file, use the ioctl
function in utils/utils_linux

Fixes #1419

Signed-off-by: Gabi Beyer <Gabrielle.n.beyer@intel.com>
2019-04-12 10:48:08 -07:00