Commit graph

24 commits

Author SHA1 Message Date
Lennart Poettering 62590f23c1 unit: introduce ConditionCapability 2011-10-11 15:16:52 +02:00
Kay Sievers e5396fed3f test_virtualization: do not try to compare id in !virt context 2011-10-09 16:36:45 +02:00
Lennart Poettering 8095200d05 condition: optionally test against type of virtualization (vm vs. container) 2011-09-23 17:09:49 +02:00
Michal Schmidt 1f8fef5a44 condition: fix reversed tests if path does not exist at all
CONDITION_PATH_IS_DIRECTORY, CONDITION_PATH_IS_SYMBOLIC_LINK and
CONDITION_FILE_IS_EXECUTABLE gave reversed results when the path
did not exist at all.
2011-09-23 02:10:00 +02:00
Michal Schmidt 0d60602c3b condition: add ConditionPathIsSymbolicLink 2011-09-21 01:42:02 +02:00
Lennart Poettering 8571962ca3 condition: always follow symlinks for condition checks, to mimic test 2011-09-21 01:07:25 +02:00
Lennart Poettering ab7f148f81 unit: introduce ConditionPathIsMountPoint= 2011-09-21 00:50:40 +02:00
Lennart Poettering 34a2dc4bfc condition: in ConditionPathIsExecutable follow symlinks
https://bugzilla.redhat.com/show_bug.cgi?id=737047
2011-09-20 01:28:07 +02:00
Lennart Poettering a373b0e7bc condition: opt out of /proc/cmdline parsing only when running in a container, not in a VM 2011-09-19 23:51:15 +02:00
Lennart Poettering 82e487c56d unit: introduce ConditionFileIsExecutable= and use it where we check for a binary we'll spawn 2011-07-12 04:25:02 +02:00
Lennart Poettering 8092a428d4 path,unit: support globbing in conditions and path units 2011-07-07 02:07:39 +02:00
Lennart Poettering d24e1b4806 condition: use 'selinux' rather than 'SELinux' as preferred spelling
The virtualization condition and others use lowercase identifiers, so
for the sake of keeping things least surprising, use lowercase
identifiers here too.
2011-04-03 22:18:39 +02:00
Michal Schmidt 07e833bc1d condition: add ConditionSecurity
Using ConditionSecurity a unit can depend on a security module being
enabled/disabled. For now the only recognized security module is SELinux.

I'd like to use this feature for a unit that creates /.autorelabel if
SELinux is disabled, to ensure a relabel is done automatically when the
system is later rebooted with SELinux enabled.
2011-04-03 22:16:37 +02:00
Michal Schmidt 8fb81fa784 condition: fix dumping of conditions
Several condition types were missing their strings, they were showing as
"(null)" in systemctl dump.
Indentation was missing too.
2011-04-03 22:15:58 +02:00
Lennart Poettering da19d5c19f src: our lord is coverity 2011-03-31 15:35:40 +02:00
Kay Sievers 2b583ce657 use /run instead of /dev/.run
Instead of the /dev/.run trick we have currently implemented, we decided
to move the early-boot runtime dir to /run.

An existing /var/run directory is bind-mounted to /run. If /var/run is
already a symlink, no action is taken.

An existing /var/lock directory is bind-mounted to /run/lock.
If /var/lock is already a symlink, no action is taken.

To implement the directory vs. symlink logic, we have a:
  ConditionPathIsDirectory=
now, which is used in the mount units.

Skipped mount unit in case of symlink:
  $ systemctl status var-run.mount
  var-run.mount - Runtime Directory
    Loaded: loaded (/lib/systemd/system/var-run.mount)
    Active: inactive (dead)
            start condition failed at Fri, 25 Mar 2011 04:51:41 +0100; 6min ago
     Where: /var/run
      What: /run
    CGroup: name=systemd:/system/var-run.mount

The systemd rpm needs to make sure to add something like:
  %pre
  mkdir -p -m0755 /run >/dev/null 2>&1 || :
or it needs to be added to filesystem.rpm.

Udev -git already uses /run if that exists, and is writable at bootup.
Otherwise it falls back to the current /dev/.udev.

Dracut and plymouth need to be adopted to switch from /dev/.run to run
too.

Cheers,
Kay
2011-03-28 23:00:00 +02:00
Lennart Poettering 2fc9784656 container: skip a few things when we are run in a container such as accessing /proc/cmdline 2011-03-14 23:41:47 +01:00
Lennart Poettering 267632f0ab unit: distuingish mandatory from triggering conditions 2011-03-08 03:04:47 +01:00
Lennart Poettering cb40c15e48 condition: drop pointless double negation 2011-02-21 22:10:04 +01:00
Lennart Poettering 039655a40c unit: introduce ConditionVirtualization= 2011-02-21 22:07:55 +01:00
Lennart Poettering 36af55d997 unit: introduce ConditionDirectoryNotEmpty= 2010-11-15 22:13:25 +01:00
Lennart Poettering d257ddef22 unit: add ConditionNull= condition 2010-11-10 22:39:18 +01:00
Lennart Poettering f23c09b0fd condition: fix copyright 2010-10-14 00:40:39 +02:00
Lennart Poettering 52661efd21 unit: add minimal condition checker for unit startup 2010-10-13 02:15:41 +02:00