From: Ian Ray <[email protected]>
Refactor _process_deps to expand systemd instance specifier "%i" to the
template instance.
This change expands on prior commit e510222b57 ("systemd-systemctl: fix
instance template WantedBy symlink construction") by substituting every
"%i" pattern-match with the instance name.
The regexp handles the following cases:
* svc-wants@%i.service
* sys-subsystem-net-devices-%i.device
Signed-off-by: Ian Ray <[email protected]>
Signed-off-by: Alexandre Belloni <[email protected]>
(cherry picked from commit 9356276137267a29ae2289d796a2940918375308)
Signed-off-by: Steve Sakoman <[email protected]>
---
meta/recipes-core/systemd/systemd-systemctl/systemctl | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/meta/recipes-core/systemd/systemd-systemctl/systemctl
b/meta/recipes-core/systemd/systemd-systemctl/systemctl
index 1c87beadad..c8b5c9efe3 100755
--- a/meta/recipes-core/systemd/systemd-systemctl/systemctl
+++ b/meta/recipes-core/systemd/systemd-systemctl/systemctl
@@ -190,13 +190,8 @@ class SystemdUnit():
target = ROOT / location.relative_to(self.root)
try:
for dependent in config.get('Install', prop):
- # determine whether or not dependent is a template with an
actual
- # instance (i.e. a '@%i')
- dependent_is_template =
re.match(r"[^@]+@(?P<instance>[^\.]*)\.", dependent)
- if dependent_is_template:
- # if so, replace with the actual instance to achieve
- # [email protected]/[email protected]
- dependent =
re.sub(dependent_is_template.group('instance'), instance, dependent, 1)
+ # expand any %i to instance (ignoring escape sequence %%)
+ dependent = re.sub("([^%](%%)*)%i", "\\1{}".format(instance),
dependent)
wants = systemdir / "{}.{}".format(dependent, dirstem) /
service
add_link(wants, target)
--
2.34.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#183083):
https://lists.openembedded.org/g/openembedded-core/message/183083
Mute This Topic: https://lists.openembedded.org/mt/99616198/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-