From 3efa5def15b46faa855ff516c3c398dab3547e40 Mon Sep 17 00:00:00 2001 From: Brandon Philips Date: Tue, 2 Jul 2013 16:45:55 -0700 Subject: [PATCH 1/2] chore(coreos-init): mv update-engine.service into update_engine ebuild move the service file to the ebuild where it belongs. --- ...t-0.0.1-r8.ebuild => coreos-init-0.0.1-r9.ebuild} | 0 .../coreos-base/coreos-init/coreos-init-0.0.1.ebuild | 2 +- .../update_engine/files/update-engine.service | 12 ++++++++++++ ...1-r368.ebuild => update_engine-0.0.1-r369.ebuild} | 0 .../update_engine/update_engine-0.0.1.ebuild | 4 +++- .../update_engine/update_engine-9999.ebuild | 4 +++- 6 files changed, 19 insertions(+), 3 deletions(-) rename sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/{coreos-init-0.0.1-r8.ebuild => coreos-init-0.0.1-r9.ebuild} (100%) create mode 100644 sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service rename sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/{update_engine-0.0.1-r368.ebuild => update_engine-0.0.1-r369.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r8.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r9.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r8.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r9.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1.ebuild index 900913fcb9..139f14af08 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1.ebuild @@ -3,7 +3,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI="4" -CROS_WORKON_COMMIT="0e2d05ca5c6bf202e1936b94c17de2df1fe22ec1" +CROS_WORKON_COMMIT="c0df3a6ae153ab75644ffea5034fcc6aa1c37c26" CROS_WORKON_PROJECT="coreos/init" CROS_WORKON_LOCALNAME="init" diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service new file mode 100644 index 0000000000..77e56f4091 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service @@ -0,0 +1,12 @@ +[Unit] +Description=Update Engine +ConditionVirtualization=!container + +[Service] +Type=dbus +BusName=org.chromium.UpdateEngine +ExecStart=/usr/sbin/update_engine -foreground -logtostderr -no_connection_manager +BlockIOWeight=100 + +[Install] +WantedBy=multi-user.target diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1-r368.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1-r369.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1-r368.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1-r369.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1.ebuild index 467fe75554..f336970a6d 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.0.1.ebuild @@ -6,7 +6,7 @@ CROS_WORKON_COMMIT="08a60bd76c1a4ad8e59cf3e29b43a11c857e1bcd" CROS_WORKON_PROJECT="coreos/update_engine" CROS_WORKON_REPO="git://github.com" -inherit toolchain-funcs cros-debug cros-workon scons-utils +inherit toolchain-funcs cros-debug cros-workon scons-utils systemd DESCRIPTION="Chrome OS Update Engine" HOMEPAGE="http://www.chromium.org/" @@ -80,6 +80,8 @@ src_install() { use delta_generator && dobin delta_generator + systemd_dounit "${FILESDIR}"/update-engine.service + insinto /usr/share/dbus-1/services doins org.chromium.UpdateEngine.service diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild index c441db415f..383a238ad6 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild @@ -5,7 +5,7 @@ EAPI="4" CROS_WORKON_PROJECT="coreos/update_engine" CROS_WORKON_REPO="git://github.com" -inherit toolchain-funcs cros-debug cros-workon scons-utils +inherit toolchain-funcs cros-debug cros-workon scons-utils systemd DESCRIPTION="Chrome OS Update Engine" HOMEPAGE="http://www.chromium.org/" @@ -79,6 +79,8 @@ src_install() { use delta_generator && dobin delta_generator + systemd_dounit "${FILESDIR}"/update-engine.service + insinto /usr/share/dbus-1/services doins org.chromium.UpdateEngine.service From ce476ecc6c61825c2af9ecc96f0742eb45203194 Mon Sep 17 00:00:00 2001 From: Brandon Philips Date: Wed, 3 Jul 2013 11:05:18 -0700 Subject: [PATCH 2/2] feat(update_engine): restart a second after death It is possible that update_engine will crash. Try to recover by restarting the update_engine but wait some seconds first. --- .../coreos-base/update_engine/files/update-engine.service | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service index 77e56f4091..cbd23b7efd 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/files/update-engine.service @@ -7,6 +7,8 @@ Type=dbus BusName=org.chromium.UpdateEngine ExecStart=/usr/sbin/update_engine -foreground -logtostderr -no_connection_manager BlockIOWeight=100 +Restart=always +RestartSec=30 [Install] WantedBy=multi-user.target