From 66ca7ac0fd48ffd8f3fbf2d2fe999b261132da65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iago=20L=C3=B3pez=20Galeiras?= Date: Thu, 31 Mar 2016 16:22:01 +0200 Subject: [PATCH 1/4] ROADMAP: update --- ROADMAP.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index e5daecc49b..e25a5f0e53 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -9,23 +9,21 @@ The version of the spec that rkt implements can be seen in the output of `rkt ve rkt's version 1.0 release marks the command line user interface and on-disk data structures as stable and reliable for external development. The (optional) API for pod inspection is not yet completely stabilized, but is quite usable. -### rkt 1.3 (March) +### rkt 1.4 (April) - enhanced DNS configuration [#2044](https://github.com/coreos/rkt/issues/2044) -- app exit status propagation [#1460](https://github.com/coreos/rkt/issues/1460) -- different shared namespace execution modes [#1433](https://github.com/coreos/rkt/issues/1433) -- stage1 benchmarking [#1788](https://github.com/coreos/rkt/issues/1788) - user configuration for stage1 [#2013](https://github.com/coreos/rkt/issues/2013) +- `rkt fly` as top-level command [#1889](https://github.com/coreos/rkt/issues/1889) +- IPv6 support [appc/cni#31](https://github.com/appc/cni/issues/31) +- stage1 benchmarking [#1788](https://github.com/coreos/rkt/issues/1788) - rkt runs on Fedora with SELinux in enforcing mode -### rkt 1.4 (April) +### rkt 1.5 (April) - stable API - full integration with Kubernetes (aka "rktnetes") - full integration with `machinectl login` and `systemd-run` [#1463](https://github.com/coreos/rkt/issues/1463) -- `rkt fly` as top-level command [#1889](https://github.com/coreos/rkt/issues/1889) - attach to the app's stdin/stdout [#1799](https://github.com/coreos/rkt/issues/1799) -- IPv6 support [appc/cni#31](https://github.com/appc/cni/issues/31) - packaged for more distributions - Debian [#1307](https://github.com/coreos/rkt/issues/1307) - CentOS [#1305](https://github.com/coreos/rkt/issues/1305) From 03b7de4bf9d62ca250bcc20aa67b65e7ad422bd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iago=20L=C3=B3pez=20Galeiras?= Date: Thu, 31 Mar 2016 17:54:00 +0200 Subject: [PATCH 2/4] CHANGELOG: add v1.3.0 --- CHANGELOG.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 89fbe458f5..ab0a4d4792 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,31 @@ +## v1.3.0 + +This release includes a number of new features and bugfixes like the long-awaited propagation of apps' exit status. + +#### New features and UX changes + +- Propagate exit status from apps inside the pod to rkt ([#2308](https://github.com/coreos/rkt/pull/2308)). Previously, if an app exited with a non-zero exit status, rkt's exit status would still be 0. Now, if an app fails, its exit status will be propagated to the outside. While this was partially implemented in some stage1 flavors since rkt v1.1.0, it now works in the default coreos flavor. +- Check signatures for stage1 images by default, especially useful when stage1 images are downloaded from the Internet ([#2336](https://github.com/coreos/rkt/pull/2336)). + This doesn't affect the following cases: + - The stage1 image is already in the store + - The stage1 image is in the default directory configured at build time + - The stage1 image is the default one and it is in the same directory as the rkt binary +- Allow downloading of insecure public keys with the `pubkey` insecure option ([#2278](https://github.com/coreos/rkt/pull/2278)). +- Implement Docker volume semantics ([#2315](https://github.com/coreos/rkt/pull/2315)). Docker volumes are initialized with the files in the image if they exist, unless a host directory is mounted there. Implement that behavior in rkt when it runs a Docker converted image. + +#### API service + +- Return the cgroup when getting information about running pods and add a new cgroup filter ([#2331](https://github.com/coreos/rkt/pull/2331)). + +#### Bug fixes + +- Avoid configuring more CPUs than the host has in the kvm flavor ([#2321](https://github.com/coreos/rkt/pull/2321)). +- Fix a bug where the proxy configuration wasn't forwarded to docker2aci ([docker2aci#147](https://github.com/appc/docker2aci/pull/147)). + +#### Notes + +- This release drops support for go1.4. + ## v1.2.1 This release fixes a couple of bugs we missed in 1.2.0. From 97b92aac8e4ea6b39b8d2e0a42b3d3a1b91c9092 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iago=20L=C3=B3pez=20Galeiras?= Date: Thu, 31 Mar 2016 17:58:38 +0200 Subject: [PATCH 3/4] version: bump to v1.3.0 --- Documentation/getting-started-ubuntu.md | 6 +++--- Documentation/running-fly-stage1.md | 4 ++-- Documentation/running-lkvm-stage1.md | 4 ++-- Documentation/subcommands/prepare.md | 2 +- Documentation/subcommands/version.md | 2 +- Documentation/trying-out-rkt.md | 6 +++--- configure.ac | 2 +- scripts/acbuild-rkt-builder.sh | 2 +- scripts/build-rir.sh | 2 +- tests/empty-image/manifest | 2 +- tests/image/manifest | 2 +- tests/rkt_exec_test.go | 2 +- tests/rkt_image_cat_manifest_test.go | 2 +- tests/rkt_image_export_test.go | 2 +- tests/rkt_image_render_test.go | 2 +- tests/rkt_os_arch_test.go | 2 +- 16 files changed, 22 insertions(+), 22 deletions(-) diff --git a/Documentation/getting-started-ubuntu.md b/Documentation/getting-started-ubuntu.md index 86672711a7..591bc19fe9 100644 --- a/Documentation/getting-started-ubuntu.md +++ b/Documentation/getting-started-ubuntu.md @@ -15,9 +15,9 @@ vagrant up --provider virtualbox vagrant ssh sudo -s -wget https://github.com/coreos/rkt/releases/download/v1.2.1/rkt-v1.2.1.tar.gz -tar xzvf rkt-v1.2.1.tar.gz -cd rkt-v1.2.1 +wget https://github.com/coreos/rkt/releases/download/v1.3.0/rkt-v1.3.0.tar.gz +tar xzvf rkt-v1.3.0.tar.gz +cd rkt-v1.3.0 ./rkt help ``` diff --git a/Documentation/running-fly-stage1.md b/Documentation/running-fly-stage1.md index 04d33fc3d1..b1a370a42f 100644 --- a/Documentation/running-fly-stage1.md +++ b/Documentation/running-fly-stage1.md @@ -60,14 +60,14 @@ $ ./autogen.sh && ./configure --with-stage1-flavors=fly && make ``` For more details about configure parameters, see the [configure script parameters documentation](build-configure.md). -This will build the rkt binary and the stage1-fly.aci in `build-rkt-1.2.1+git/bin/`. +This will build the rkt binary and the stage1-fly.aci in `build-rkt-1.3.0+git/bin/`. ### Selecting stage1 at runtime Here is a quick example of how to use a container with the official fly stage1: ``` -# rkt run --stage1-name=coreos.com/rkt/stage1-fly:1.2.1 coreos.com/etcd:v2.2.5 +# rkt run --stage1-name=coreos.com/rkt/stage1-fly:1.3.0 coreos.com/etcd:v2.2.5 ``` If the image is not in the store, `--stage1-name` will perform discovery and fetch the image. diff --git a/Documentation/running-lkvm-stage1.md b/Documentation/running-lkvm-stage1.md index dd77c1b595..b66dbef611 100644 --- a/Documentation/running-lkvm-stage1.md +++ b/Documentation/running-lkvm-stage1.md @@ -13,7 +13,7 @@ $ ./autogen.sh && ./configure --with-stage1-flavors=kvm && make ``` For more details about configure parameters, see [configure script parameters documentation](build-configure.md). -This will build the rkt binary and the LKVM stage1-kvm.aci in `build-rkt-1.2.1+git/bin/`. +This will build the rkt binary and the LKVM stage1-kvm.aci in `build-rkt-1.3.0+git/bin/`. Provided you have hardware virtualization support and the [kernel KVM module](http://www.linux-kvm.org/page/Getting_the_kvm_kernel_modules) loaded (refer to your distribution for instructions), you can then run an image like you would normally do with rkt: @@ -84,7 +84,7 @@ If you want to run software that requires hypervisor isolation along with truste For example, to use the official lkvm stage1: ``` -# rkt run --stage1-name=coreos.com/rkt/stage1-kvm:1.2.1 coreos.com/etcd:v2.0.9 +# rkt run --stage1-name=coreos.com/rkt/stage1-kvm:1.3.0 coreos.com/etcd:v2.0.9 ... ``` diff --git a/Documentation/subcommands/prepare.md b/Documentation/subcommands/prepare.md index 9b1793dd91..0c9df9ca45 100644 --- a/Documentation/subcommands/prepare.md +++ b/Documentation/subcommands/prepare.md @@ -14,7 +14,7 @@ Therefore, the supported arguments are mostly the same as in `run` except runtim ``` # rkt prepare coreos.com/etcd:v2.0.10 rkt prepare coreos.com/etcd:v2.0.10 -rkt: using image from local store for image name coreos.com/rkt/stage1-coreos:1.2.1 +rkt: using image from local store for image name coreos.com/rkt/stage1-coreos:1.3.0 rkt: searching for app image coreos.com/etcd:v2.0.10 rkt: remote fetching from url https://github.com/coreos/etcd/releases/download/v2.0.10/etcd-v2.0.10-linux-amd64.aci prefix: "coreos.com/etcd" diff --git a/Documentation/subcommands/version.md b/Documentation/subcommands/version.md index 905dba5666..69cfbfbafb 100644 --- a/Documentation/subcommands/version.md +++ b/Documentation/subcommands/version.md @@ -6,7 +6,7 @@ This command prints the rkt version, the appc version rkt is built against, and ``` $ rkt version -rkt Version: 1.2.1 +rkt Version: 1.3.0 appc Version: 0.7.4 Go Version: go1.5.3 Go OS/Arch: linux/amd64 diff --git a/Documentation/trying-out-rkt.md b/Documentation/trying-out-rkt.md index 909c515bbb..e966deb92b 100644 --- a/Documentation/trying-out-rkt.md +++ b/Documentation/trying-out-rkt.md @@ -10,9 +10,9 @@ rkt consists of a single CLI tool, and is currently supported on amd64 Linux. A To download the rkt binary, simply grab the latest release directly from GitHub: ``` -wget https://github.com/coreos/rkt/releases/download/v1.2.1/rkt-v1.2.1.tar.gz -tar xzvf rkt-v1.2.1.tar.gz -cd rkt-v1.2.1 +wget https://github.com/coreos/rkt/releases/download/v1.3.0/rkt-v1.3.0.tar.gz +tar xzvf rkt-v1.3.0.tar.gz +cd rkt-v1.3.0 ./rkt help ``` diff --git a/configure.ac b/configure.ac index 19f06c020a..4df5fbe3d3 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.63]) -AC_INIT([rkt], [1.2.1+git], [https://github.com/coreos/rkt/issues]) +AC_INIT([rkt], [1.3.0], [https://github.com/coreos/rkt/issues]) AC_DEFUN([RKT_CHECK_PROG], [AS_VAR_IF([$1], [], diff --git a/scripts/acbuild-rkt-builder.sh b/scripts/acbuild-rkt-builder.sh index 1e5ef7a12a..76a49dd403 100755 --- a/scripts/acbuild-rkt-builder.sh +++ b/scripts/acbuild-rkt-builder.sh @@ -25,7 +25,7 @@ ACI_NAME=${ACI_NAME:-"coreos.com/rkt/builder"} BUILDDIR=/opt/build-rkt SRC_DIR=/opt/rkt ACI_GOPATH=/go -VERSION=${VERSION:-"v1.2.1+git"} +VERSION=${VERSION:-"v1.3.0"} echo "Version: $VERSION" echo "Building $ACI_FILE" diff --git a/scripts/build-rir.sh b/scripts/build-rir.sh index 8db2ec9076..67c16e2d9f 100755 --- a/scripts/build-rir.sh +++ b/scripts/build-rir.sh @@ -4,7 +4,7 @@ set -xe SRC_DIR=${SRC_DIR:-$PWD} BUILDDIR=${BUILDDIR:-$PWD/build-rir} -RKT_BUILDER_ACI=${RKT_BUILDER_ACI:-coreos.com/rkt/builder:v1.2.1+git} +RKT_BUILDER_ACI=${RKT_BUILDER_ACI:-coreos.com/rkt/builder:v1.3.0} mkdir -p $BUILDDIR diff --git a/tests/empty-image/manifest b/tests/empty-image/manifest index 09c7e908ef..2a57160f49 100644 --- a/tests/empty-image/manifest +++ b/tests/empty-image/manifest @@ -5,7 +5,7 @@ "labels": [ { "name": "version", - "value": "1.2.1" + "value": "1.3.0" }, { "name": "arch", diff --git a/tests/image/manifest b/tests/image/manifest index 81978de79d..a48b7362ea 100644 --- a/tests/image/manifest +++ b/tests/image/manifest @@ -5,7 +5,7 @@ "labels": [ { "name": "version", - "value": "1.2.1" + "value": "1.3.0" }, { "name": "arch", diff --git a/tests/rkt_exec_test.go b/tests/rkt_exec_test.go index 9696bacd81..3268656bfe 100644 --- a/tests/rkt_exec_test.go +++ b/tests/rkt_exec_test.go @@ -24,7 +24,7 @@ import ( ) const ( - noappManifestStr = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"coreos.com/rkt-inspect","labels":[{"name":"version","value":"1.2.1"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}]}` + noappManifestStr = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"coreos.com/rkt-inspect","labels":[{"name":"version","value":"1.3.0"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}]}` ) func TestRunOverrideExec(t *testing.T) { diff --git a/tests/rkt_image_cat_manifest_test.go b/tests/rkt_image_cat_manifest_test.go index 72dd1e5948..765e584db9 100644 --- a/tests/rkt_image_cat_manifest_test.go +++ b/tests/rkt_image_cat_manifest_test.go @@ -27,7 +27,7 @@ import ( const ( // The expected image manifest of the 'rkt-inspect-image-cat-manifest.aci'. - manifestTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.2.1"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"app":{"exec":["/inspect"],"user":"0","group":"0","workingDirectory":"/","environment":[{"name":"VAR_FROM_MANIFEST","value":"manifest"}]}}` + manifestTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.3.0"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"app":{"exec":["/inspect"],"user":"0","group":"0","workingDirectory":"/","environment":[{"name":"VAR_FROM_MANIFEST","value":"manifest"}]}}` ) // TestImageCatManifest tests 'rkt image cat-manifest', it will: diff --git a/tests/rkt_image_export_test.go b/tests/rkt_image_export_test.go index fd48d7a8f2..35401d5927 100644 --- a/tests/rkt_image_export_test.go +++ b/tests/rkt_image_export_test.go @@ -26,7 +26,7 @@ import ( ) const ( - manifestExportTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.2.1"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"app":{"exec":["/inspect"],"user":"0","group":"0","workingDirectory":"/","environment":[{"name":"VAR_FROM_MANIFEST","value":"manifest"}]}}` + manifestExportTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.3.0"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"app":{"exec":["/inspect"],"user":"0","group":"0","workingDirectory":"/","environment":[{"name":"VAR_FROM_MANIFEST","value":"manifest"}]}}` ) // TestImageExport tests 'rkt image export', it will import some existing diff --git a/tests/rkt_image_render_test.go b/tests/rkt_image_render_test.go index 8abba1a4e2..8b5f91420f 100644 --- a/tests/rkt_image_render_test.go +++ b/tests/rkt_image_render_test.go @@ -26,7 +26,7 @@ import ( ) const ( - manifestRenderTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.2.1"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"dependencies":[{"imageName":"coreos.com/rkt-inspect"}],"app":{"exec":["/inspect"],"user":"0","group":"0","workingDirectory":"/","environment":[{"name":"VAR_FROM_MANIFEST","value":"manifest"}]}}` + manifestRenderTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.3.0"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"dependencies":[{"imageName":"coreos.com/rkt-inspect"}],"app":{"exec":["/inspect"],"user":"0","group":"0","workingDirectory":"/","environment":[{"name":"VAR_FROM_MANIFEST","value":"manifest"}]}}` ) // TestImageRender tests 'rkt image render', it will import some existing empty diff --git a/tests/rkt_os_arch_test.go b/tests/rkt_os_arch_test.go index ef5165ffad..a82e36b684 100644 --- a/tests/rkt_os_arch_test.go +++ b/tests/rkt_os_arch_test.go @@ -25,7 +25,7 @@ import ( ) const ( - manifestOSArchTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.2.1"}ARCH_OS],"app":{"exec":["/inspect", "--print-msg=HelloWorld"],"user":"0","group":"0","workingDirectory":"/"}}` + manifestOSArchTemplate = `{"acKind":"ImageManifest","acVersion":"0.7.4","name":"IMG_NAME","labels":[{"name":"version","value":"1.3.0"}ARCH_OS],"app":{"exec":["/inspect", "--print-msg=HelloWorld"],"user":"0","group":"0","workingDirectory":"/"}}` ) type osArchTest struct { From 00e233f24bd6639413fd95995cd1fd949fac68ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iago=20L=C3=B3pez=20Galeiras?= Date: Thu, 31 Mar 2016 17:58:38 +0200 Subject: [PATCH 4/4] version: bump to v1.3.0+git --- configure.ac | 2 +- scripts/acbuild-rkt-builder.sh | 2 +- scripts/build-rir.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 4df5fbe3d3..096c1dc974 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.63]) -AC_INIT([rkt], [1.3.0], [https://github.com/coreos/rkt/issues]) +AC_INIT([rkt], [1.3.0+git], [https://github.com/coreos/rkt/issues]) AC_DEFUN([RKT_CHECK_PROG], [AS_VAR_IF([$1], [], diff --git a/scripts/acbuild-rkt-builder.sh b/scripts/acbuild-rkt-builder.sh index 76a49dd403..27cff65468 100755 --- a/scripts/acbuild-rkt-builder.sh +++ b/scripts/acbuild-rkt-builder.sh @@ -25,7 +25,7 @@ ACI_NAME=${ACI_NAME:-"coreos.com/rkt/builder"} BUILDDIR=/opt/build-rkt SRC_DIR=/opt/rkt ACI_GOPATH=/go -VERSION=${VERSION:-"v1.3.0"} +VERSION=${VERSION:-"v1.3.0+git"} echo "Version: $VERSION" echo "Building $ACI_FILE" diff --git a/scripts/build-rir.sh b/scripts/build-rir.sh index 67c16e2d9f..2bcb4ae23e 100755 --- a/scripts/build-rir.sh +++ b/scripts/build-rir.sh @@ -4,7 +4,7 @@ set -xe SRC_DIR=${SRC_DIR:-$PWD} BUILDDIR=${BUILDDIR:-$PWD/build-rir} -RKT_BUILDER_ACI=${RKT_BUILDER_ACI:-coreos.com/rkt/builder:v1.3.0} +RKT_BUILDER_ACI=${RKT_BUILDER_ACI:-coreos.com/rkt/builder:v1.3.0+git} mkdir -p $BUILDDIR