Commit Graph

5373 Commits

Author SHA1 Message Date
James O. D. Hunt
fcbe6e1f90
Merge pull request #679 from amshinde/remove-cni-docs
network: Remove CNI docs
2018-08-31 11:34:39 +01:00
Peng Tao
5e849f143b network: always assign sandbox networkNS
For vm factory, we also need netns to be set otherwise we fail to
create new VMs in `s.network.run`.

Fixes: #681

Signed-off-by: Peng Tao <bergwolf@gmail.com>
2018-08-31 16:57:53 +08:00
Peng Tao
b982373813
Merge pull request #623 from sboeuf/move_hooks
network: Move OCI hooks and network namespace creation out of virtcontainers
2018-08-31 15:46:12 +08:00
Frank Cao
7dc1a3246c
Merge pull request #675 from caoruidong/delete-comment
virtcontainers: delete out-of-date TODO
2018-08-31 15:13:37 +08:00
Peng Tao
4c5fa2d641
Merge pull request #662 from WeiZhang555/fix-golang1.8.3
build: fix breaking 1.8.3 build
2018-08-31 15:09:04 +08:00
Jose Carlos Venegas Munoz
985f88e763 obs: pkglib: dont grep if file does not exit.
When tries to get release number from a new repo, the
specfile wont exist. Dont do grep in this case.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-30 20:58:45 -05:00
Jose Carlos Venegas Munoz
3d06a83814 obs: makefile: fix clean target.
Clean target tries to remove files multiples times.

Limit find max depth to not try to remove files more than once.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-30 20:57:05 -05:00
Jose Carlos Venegas Munoz
33214c90d6 image: Make sure agent sha is correct
Fix image generation.

Instead of use agent code from the host checkout to the
agent source code in a clean GOPATH env.

Make sure that the agent `commit id` is the correct before
push to github or OBS.

Fixes: #166

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-30 20:56:50 -05:00
Wei Zhang
e599ef430a device: don't persist ContainerPath of DeviceInfo
Fixes #635

`ContainerPath` isn't meaningful in sandbox's `devices.json`, because
device is sandbox level which can be referenced by many containers, and
`ContainerPath` is per container which means nothing to a sandbox level
resource.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2018-08-31 09:53:01 +08:00
Wei Zhang
affd6e3216 devices: add reference count for devices.
Fixes #635

Remove `Hotplugged bool` field from device and add two new fields
instead:
* `RefCount`: how many references to this device. One device can be
referenced(`NewDevice()`) many times by same/different container(s),
two devices are regarded identical if they have same hostPath
* `AttachCount`: how many times this device has been attached. A device
can only be hotplugged once to the qemu, every new Attach command will
add the AttachCount, and real `Detach` will be done only when
`AttachCount == 0`

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2018-08-31 09:53:01 +08:00
Wei Zhang
7f4b221bc3 devices: share genericDevice logic among devices
Fixes #635

Shares generic device logic among all device drivers to reduce
duplicated codes.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2018-08-31 09:53:01 +08:00
Wei Zhang
af0c137ec3 build: fix breaking 1.8.3 build
Fixes #638.

Latest kata-runtime can't build with golang 1.8.3, fix it for backward compatibility.

Signed-off-by: Wei Zhang <zhangwei555@huawei.com>
2018-08-31 09:52:04 +08:00
Eric Ernst
9bd2edd4bc
Merge pull request #235 from amshinde/remove-cni-flow
docs: Remove incorrect CNI flow
2018-08-30 15:37:50 -07:00
Archana Shinde
9a8b45fc53 network: Remove CNI docs
We need to update the network docs to reflect CNM
and CNI are handled much the same way. Start off
by removing the incorrect CNI docs first.

Fixes #678

Signed-off-by: Archana Shinde <archana.m.shinde@intel.com>
2018-08-30 15:31:39 -07:00
Archana Shinde
dc0c7063dd docs: Remove incorrect CNI flow
We need to update the way CNI is handled which is
mostly how CNM is taken care of. Start of by removing
the incorrect steps documented for CNI.

Fixes #236

Signed-off-by: Archana Shinde <archana.m.shinde@intel.com>
2018-08-30 15:25:19 -07:00
Yash Jain
3075de446f OSbuilder : Add support for Ubuntu rootfs
Fixes #32 #141

Signed-off-by: Yash Jain <ydjainopensource@gmail.com>
2018-08-30 21:06:06 +05:30
Ruidong Cao
e906095a7b virtcontainers: delete out-of-date TODO
drivers package is already removed from this file.

fixes #674

Signed-off-by: Ruidong Cao <caoruidong@huawei.com>
2018-08-30 23:20:18 +08:00
James O. D. Hunt
7d14aea067
Merge pull request #657 from devimc/topic/applyConstraints
virtcontainers: apply devices constraints
2018-08-30 14:57:58 +01:00
James O. D. Hunt
ede60044fd
Merge pull request #661 from jodh-intel/fix-amd64-kata-env
kata-env: Fix amd64 VM container capable check
2018-08-30 14:07:52 +01:00
James O. D. Hunt
35d7672d73 kata-env: Fix amd64 VM container capable check
Fix nasty bug which resulted in `kata-env` showing
`VMContainerCapable = true` even on amd64 systems without virtualisation
support (thankfully `kata-check` still showed the correct results).

Added arch-specific tests to avoid any possibility of regression.

Fixes #660.

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2018-08-30 09:41:24 +01:00
James O. D. Hunt
d814bc50fb versions: Bump golang from 1.8.3 to 1.9.7
golang version 1.8.3 is old and the runtime cannot even be built with
it now it seems.

Since it is no longer considered a stable version [1], move to the
oldest official stable version (version 1.9.7).

Fixes #642.

[1] - https://golang.org/dl/

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2018-08-30 09:40:20 +01:00
James O. D. Hunt
fe2d20ee4f
Merge pull request #164 from jcvenegas/fix-tag-multi-branch
release: tag: checkout to branch to tag.
2018-08-30 08:45:20 +01:00
Frank Cao
f14660f82c
Merge pull request #664 from chavafg/topic/travis-static-checks
travis: Add variable needed to run static checks
2018-08-30 10:21:03 +08:00
Jose Carlos Venegas Munoz
88ce6e027d release: tag: checkout to branch to tag.
Checkout to a target branch before create a tag.

We dont checkout for repos that does not have stable branches.
We want to do is just push the tags to master branch
since we don't maintain a seperate one.

The repos are:

osbuilder
packaging
ksm-throttler

Fixes: #163

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-29 15:13:20 -05:00
Julio Montes
c2c7c1c513
Merge pull request #162 from jcvenegas/fix-qemu-vanilla-rng
obs: qemu-vanilla: point to qemu repository.
2018-08-29 13:17:36 -05:00
Salvador Fuentes
414ddd17e8 travis: Add variable needed to run static checks
Now that we support multiple branches, we changed how
static-checks.sh compares branches. We now need a
variable called $target_branch to make the correct
comparison when testing a PR.

Fixes: #663.

Signed-off-by: Salvador Fuentes <salvador.fuentes@intel.com>
2018-08-29 11:13:37 -05:00
Julio Montes
137769a694 virtcontainers: apply devices constraints
Apply devices constraints to the container in the virtual machine

fixes #656

Signed-off-by: Julio Montes <julio.montes@intel.com>
2018-08-29 10:15:07 -05:00
Jose Carlos Venegas Munoz
953ec99bae obs: qemu-vanilla: point to qemu repository.
Lets point to qemu repository instead of kata fork
for qemu-vanilla.

Fixes: #161

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-29 09:44:06 -05:00
Jose Carlos Venegas Munoz
6d6d669fd2 obs: get_versions: fix qemu-vanilla sha.
The qemu vanilla sha was incorrect.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-29 09:44:06 -05:00
James O. D. Hunt
54164dd62f
Merge pull request #159 from jcvenegas/release-tag-osbuilder-not-check
release: dont check osbuilder VERSION file.
2018-08-29 15:05:18 +01:00
Jose Carlos Venegas Munoz
a2a36599a0 release: dont check osbuilder VERSION file.
The osbuilder version file wont be the same if
we tag a stable branch. But we still want to tag
the HEAD of osbuilder to do reproducible builds of
a Kata branch.

Fixes: #158

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-28 13:09:58 -05:00
Julio Montes
65e57d45f3
Merge pull request #140 from jcvenegas/obs-branch-repo-creator
obs: create-repo-branch.sh: New script to create OBS repos.
2018-08-28 12:59:49 -05:00
Jose Carlos Venegas Munoz
c2e29904b3
Merge pull request #155 from nitkon/master
obs-packaging: set BUILD_ARCH, DEB_ARCH arch specific
2018-08-28 12:45:50 -05:00
Jose Carlos Venegas Munoz
65c581ed61 release: get current version before modify file.
When we get changes from one version to a newer this
is empty because we dont get the current version.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-28 11:33:45 -05:00
Jose Carlos Venegas Munoz
1a751c5214 obs: docker-build: move osc file creation.
We need to create the osc file before enter the container.
If build_all.sh is executed without a container and osc
is intalled osc will ask for setup but in the container
fails do to a missing tty.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-28 11:31:26 -05:00
Jose Carlos Venegas Munoz
dbe64e6461 obs: dont checkout repo in tmpdir.
When we genete packages file we want to see
the resulting files. This changes to now
create repos in a tmpdir.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-28 11:31:26 -05:00
Jose Carlos Venegas Munoz
b66368fbe0 obs: factor out projects array.
projects array is used in two scripts move it to
obs-pkgs.sh

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-28 11:31:26 -05:00
Jose Carlos Venegas Munoz
afe2dff5c3 obs: create-repo-branch.sh: New script to create OBS repos.
If want to create pkgs based in new branch, this script will create
all the empty repositories in OBS for each kata package.

Then we can point use the rest of scripts to push changes to this new repo.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2018-08-28 11:31:26 -05:00
James O. D. Hunt
b5ea753ff4 config: Detect if VM memory smaller than image
Add a heuristic to ensure the amount of memory allocated to the
hypervisor is bigger than the size of the image.

This catches simple configuration issues where `default_memory=` is set
to a smaller value than the size of either the `image=` or `initrd=`
files.

If the configured image type is `initrd`, fail but only warn in the
logs for `image` as although it seems a highly unlikely scenario, it is
permitted.

Update tests to ensure that created resources have `>0` bytes.

Fixes #636.

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2018-08-28 16:21:36 +01:00
James O. D. Hunt
1ba4841865 config: Fix test that was using system files
The `TestMinimalRuntimeConfig` should not be using the real
resource files that might be installed on a system so make temporary
files instead to better control the test.

Split out `TestMinimalRuntimeConfigWithVsock` to reduce cyclomatic
complexity (along with dropping the config file delete at the end - not
required as the entire test-specific directory gets auto-deleted).

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
2018-08-28 16:21:34 +01:00
Julio Montes
a3038924fb
Merge pull request #654 from devimc/topic/applyMemConstraints
virtcontainers: Apply memory constraints
2018-08-28 09:09:39 -05:00
Nitesh Konkar
3a034d9ab2 obs-packaging: set BUILD_ARCH, DEB_ARCH arch specific
pkglib.sh uses BUILD_ARCH and DEB_ARCH which are
by default not set and hence take the value of
x86_64 and amd64 respectively. Make this
architecture specific.

Fixes: #154

Signed-off-by: Nitesh Konkar niteshkonkar@in.ibm.com
2018-08-28 19:25:16 +05:30
James O. D. Hunt
dcf3229b37
Merge pull request #648 from bergwolf/vmconsole
builtin-proxy: print guest console output to logger
2018-08-28 14:46:10 +01:00
Julio Montes
12f52cdfb8
Merge pull request #641 from jodh-intel/trace-grpc-calls
vendor: Update kata agent for gRPC tracing
2018-08-28 08:09:45 -05:00
Julio Montes
2677a5fa91 virtcontainers: Apply memory constraints
Apply all supported memory constraints to the contrainer
inside the virtual machine.

fixes #653

Signed-off-by: Julio Montes <julio.montes@intel.com>
2018-08-28 07:36:40 -05:00
Peng Tao
3940189be0 builtin-proxy: print guest console output to logger
So daemons such as containerd shimv2 can still see it.

Fixes: #647

Signed-off-by: Peng Tao <bergwolf@gmail.com>
2018-08-28 14:45:40 +08:00
Julio Montes
f31f50a7ea
Merge pull request #153 from nitkon/qemulite
obs-packaging: Skip packaging qemu-lite for non-amd64 arch
2018-08-27 15:14:35 -05:00
Nitesh Konkar
d72fb8f397 obs-packaging: Skip packaging qemu-lite for non-amd64 arch
qemu-lite is required to be packaged only
for amd64 arch. Skip it for all other
architectures.

Fixes: #152

Signed-off-by: Nitesh Konkar niteshkonkar@in.ibm.com
2018-08-27 23:30:25 +05:30
Jose Carlos Venegas Munoz
e22b1b625f
Merge pull request #151 from nitkon/patch-5
obs-packaging: scripts: make osc checkout verbose
2018-08-27 12:14:13 -05:00
Jose Carlos Venegas Munoz
7f89d0c40d
Merge pull request #149 from nitkon/patch-4
obs-packaging: Build and run Dockerfile based on GOARCH
2018-08-27 12:13:14 -05:00