Skip to content

Permit build type, add missing quadlet arguments - #103

Merged
jcpunk merged 3 commits into
voxpupuli:masterfrom
jcpunk:missing-opts
Apr 24, 2026
Merged

Permit build type, add missing quadlet arguments#103
jcpunk merged 3 commits into
voxpupuli:masterfrom
jcpunk:missing-opts

Conversation

@jcpunk

@jcpunk jcpunk commented Apr 21, 2026

Copy link
Copy Markdown
Contributor

Pull Request (PR) description

This adds in a few of the missing podman arguments, fixes a typo, and adds the build type of quadlet.

This Pull Request (PR) fixes the following issues

jcpunk added 2 commits April 21, 2026 10:27
Container: add AppArmor, HttpProxy, LogOpt, HealthStartupRetries,
HealthStartupSuccess, RetryDelay, SecurityLabelLevel, SecurityLabelType;
fix PidsLimits -> PidsLimit (matches quadlet man page spelling).

Pod: add AddHost, DNS, DNSOption, DNSSearch, ExitPolicy, GIDMap, IP, IP6,
NetworkAlias, ServiceName, ShmSize, StopTimeout, SubGIDMap, SubUIDMap, UIDMap.

Spec: expand type alias tests to cover every defined key across Container,
Pod, Kube, Network, Volume, and Image unit types.
Add Quadlets::Unit::Build type alias covering all 27 options documented in
the podman-systemd.unit(5) man page: Annotation, Arch, AuthFile, BuildArg,
ContainersConfModule, DNS, DNSOption, DNSSearch, Environment, File, ForceRM,
GlobalArgs, GroupAdd, IgnoreFile, ImageTag, Label, Network, PodmanArgs,
Pull, Retry, RetryDelay, Secret, SetWorkingDirectory, Target, TLSVerify,
Variant, Volume.

Wire the new type into quadlets::quadlet as build_entry, add Build to the
template section list, extend Quadlets::Quadlet_name to accept .build files,
and add spec coverage for the type alias, the define, and the name pattern.

Update README with a build-then-run example.
@jcpunk jcpunk added the enhancement New feature or request label Apr 21, 2026
Comment thread README.md
Comment thread types/unit/build.pp Outdated
@traylenator

Copy link
Copy Markdown
Collaborator

Like what you did with the sanity checks - much cleaner and simpler.

Replace seven parallel if/or chains with a hash that maps each quadlet
type to its one permitted section entry.  A single filter pass over all
entry names finds any unexpected non-undef values and fails with a
descriptive message naming the offending entries.

Adding a new quadlet type now requires one line in $_type_entry_map and
one line in $_all_entries rather than touching every existing case branch.
@jcpunk
jcpunk merged commit 2f61bbc into voxpupuli:master Apr 24, 2026
14 checks passed
@jcpunk
jcpunk deleted the missing-opts branch April 24, 2026 13:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants