1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-22 17:35:35 +03:00

Merge pull request #33338 from ml-/specifiers

tmpfiles: add %q, %A, %M specifiers
This commit is contained in:
Luca Boccassi 2024-06-26 21:40:15 +02:00 committed by GitHub
commit d031b5876b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 32 additions and 11 deletions

View File

@ -821,6 +821,7 @@
<xi:include href="standard-specifiers.xml" xpointer="m"/>
<xi:include href="standard-specifiers.xml" xpointer="M"/>
<xi:include href="standard-specifiers.xml" xpointer="o"/>
<xi:include href="standard-specifiers.xml" xpointer="q"/>
<xi:include href="standard-specifiers.xml" xpointer="v"/>
<xi:include href="standard-specifiers.xml" xpointer="w"/>
<xi:include href="standard-specifiers.xml" xpointer="W"/>

View File

@ -278,6 +278,7 @@ r - 500-900
<xi:include href="standard-specifiers.xml" xpointer="m"/>
<xi:include href="standard-specifiers.xml" xpointer="M"/>
<xi:include href="standard-specifiers.xml" xpointer="o"/>
<xi:include href="standard-specifiers.xml" xpointer="q"/>
<xi:include href="standard-specifiers.xml" xpointer="T"/>
<xi:include href="standard-specifiers.xml" xpointer="v"/>
<xi:include href="standard-specifiers.xml" xpointer="V"/>

View File

@ -764,6 +764,7 @@ d /tmp/foo/bar - - - bmA:1h -</programlisting></para>
<xi:include href="standard-specifiers.xml" xpointer="m"/>
<xi:include href="standard-specifiers.xml" xpointer="M"/>
<xi:include href="standard-specifiers.xml" xpointer="o"/>
<xi:include href="standard-specifiers.xml" xpointer="q"/>
<row>
<entry><literal>%S</literal></entry>
<entry>System or user state directory</entry>

View File

@ -3610,17 +3610,6 @@ static int parse_line(
assert(buffer);
const Specifier specifier_table[] = {
{ 'a', specifier_architecture, NULL },
{ 'b', specifier_boot_id, NULL },
{ 'B', specifier_os_build_id, NULL },
{ 'H', specifier_hostname, NULL },
{ 'l', specifier_short_hostname, NULL },
{ 'm', specifier_machine_id, NULL },
{ 'o', specifier_os_id, NULL },
{ 'v', specifier_kernel_release, NULL },
{ 'w', specifier_os_version_id, NULL },
{ 'W', specifier_os_variant_id, NULL },
{ 'h', specifier_user_home, NULL },
{ 'C', specifier_directory, UINT_TO_PTR(DIRECTORY_CACHE) },
@ -3628,6 +3617,7 @@ static int parse_line(
{ 'S', specifier_directory, UINT_TO_PTR(DIRECTORY_STATE) },
{ 't', specifier_directory, UINT_TO_PTR(DIRECTORY_RUNTIME) },
COMMON_SYSTEM_SPECIFIERS,
COMMON_CREDS_SPECIFIERS(arg_runtime_scope),
COMMON_TMP_SPECIFIERS,
{}

View File

@ -0,0 +1,28 @@
#!/usr/bin/env bash
# SPDX-License-Identifier: LGPL-2.1-or-later
# Test specifiers
set -eux
rm -rf /tmp/specifiers
root='/tmp/specifiers/root'
mkdir -p $root/etc
cat >$root/etc/os-release <<EOF
ID=the-id
BUILD_ID=build-id
VARIANT_ID=variant-id
VERSION_ID=version-id
IMAGE_ID=image-id
IMAGE_VERSION=22
EOF
systemd-tmpfiles --create - --root=$root <<EOF
f /os-release2 - - - - ID=%o\n
w+ /os-release2 - - - - BUILD_ID=%B\n
w+ /os-release2 - - - - VARIANT_ID=%W\n
w+ /os-release2 - - - - VERSION_ID=%w\n
w+ /os-release2 - - - - IMAGE_ID=%M\n
w+ /os-release2 - - - - IMAGE_VERSION=%A\n
EOF
diff $root/etc/os-release $root/os-release2