Block host power on when ActivationBlocksTransition exists

Add a dependency to the power on target so that it waits to
start until the ActivationBlocksTransition interface is not
present on any of the Software subtrees, which would indicate
that a code update is in progress.

Closes openbmc/openbmc#1344

Change-Id: I926d209ce4d3106e09e35a35c1e9cfde1ec2f613
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
diff --git a/meta-phosphor/common/recipes-core/systemd/obmc-targets/obmc-chassis-poweron@.target b/meta-phosphor/common/recipes-core/systemd/obmc-targets/obmc-chassis-poweron@.target
index bb7e797..55f6d91 100644
--- a/meta-phosphor/common/recipes-core/systemd/obmc-targets/obmc-chassis-poweron@.target
+++ b/meta-phosphor/common/recipes-core/systemd/obmc-targets/obmc-chassis-poweron@.target
@@ -4,6 +4,8 @@
 After={SYSTEMD_DEFAULT_TARGET}
 Wants=mapper-wait@-xyz-openbmc_project-state-chassis%i.service
 After=mapper-wait@-xyz-openbmc_project-state-chassis%i.service
+Wants=mapper-subtree-remove@-xyz-openbmc\x5fproject-software\x3Axyz.openbmc_project.Software.ActivationBlocksTransition.service
+After=mapper-subtree-remove@-xyz-openbmc\x5fproject-software\x3Axyz.openbmc_project.Software.ActivationBlocksTransition.service
 Conflicts=obmc-chassis-poweroff@%i.target
 RefuseManualStop=yes
 OnFailure=obmc-chassis-poweroff@%i.target