diff --git a/REFERENCE.md b/REFERENCE.md index 0ecbcaa..76f1c33 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -151,7 +151,15 @@ Default value: `'systemd-container'` ##### `podman_pkg_ensure` -Data type: `Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/]` +Data type: `Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/, /latest/]` + +The ensure value for the podman package (default 'installed') + +Default value: `'installed'` + +##### `skopeo_pkg_ensure` + +Data type: `Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/, /latest/]` The ensure value for the podman package (default 'installed') @@ -159,7 +167,7 @@ Default value: `'installed'` ##### `buildah_pkg_ensure` -Data type: `Optional[Enum['absent', 'installed']]` +Data type: `Optional[Enum['absent', 'installed', 'latest']]` The ensure value for the buildah package (default 'absent') @@ -167,7 +175,7 @@ Default value: `undef` ##### `podman_docker_pkg_ensure` -Data type: `Optional[Enum['absent', 'installed']]` +Data type: `Optional[Enum['absent', 'installed', 'latest']]` The ensure value for the podman docker package (default 'installed') @@ -175,7 +183,7 @@ Default value: `undef` ##### `compose_pkg_ensure` -Data type: `Optional[Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/]]` +Data type: `Optional[Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/, /latest/]]` The ensure value for the podman-compose package (default 'absent') @@ -183,7 +191,7 @@ Default value: `undef` ##### `machinectl_pkg_ensure` -Data type: `Optional[Enum['absent', 'installed']]` +Data type: `Optional[Enum['absent', 'installed', 'latest']]` The ensure value for the machinectl package (default 'installed') diff --git a/manifests/init.pp b/manifests/init.pp index 5ab8bb3..fc4297a 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -115,32 +115,33 @@ # - Podman::Volume[jenkins] # class podman ( - String $podman_pkg = 'podman', - String $skopeo_pkg = 'skopeo', - String $buildah_pkg = 'buildah', - String $podman_docker_pkg = 'podman-docker', - String $compose_pkg = 'podman-compose', - String $machinectl_pkg = 'systemd-container', - Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/] $podman_pkg_ensure = 'installed', - Optional[Enum['absent', 'installed']] $buildah_pkg_ensure = undef, - Optional[Enum['absent', 'installed']] $podman_docker_pkg_ensure = undef, - Optional[Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/]] $compose_pkg_ensure = undef, - Optional[Enum['absent', 'installed']] $machinectl_pkg_ensure = undef, - Enum['absent', 'file'] $nodocker = 'absent', - Hash $storage_options = {}, - Hash $containers_options = {}, - Array $rootless_users = [], - Boolean $enable_api_socket = false, - Boolean $manage_subuid = false, - Boolean $match_subuid_subgid = true, - String $file_header = '# FILE MANAGED BY PUPPET', - Hash $subid = {}, - Hash $pods = {}, - Hash $volumes = {}, - Hash $images = {}, - Hash $containers = {}, - Hash $networks = {}, - Hash $quadlets = {}, + String $podman_pkg = 'podman', + String $skopeo_pkg = 'skopeo', + String $buildah_pkg = 'buildah', + String $podman_docker_pkg = 'podman-docker', + String $compose_pkg = 'podman-compose', + String $machinectl_pkg = 'systemd-container', + Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/, /latest/] $podman_pkg_ensure = 'installed', + Optional[Enum['absent', 'installed', 'latest']] $skopeo_pkg_ensure = 'installed', + Optional[Enum['absent', 'installed', 'latest']] $buildah_pkg_ensure = undef, + Optional[Enum['absent', 'installed', 'latest']] $podman_docker_pkg_ensure = undef, + Optional[Pattern[/^(\d+\.){2}\d+$/, /absent/, /installed/, /latest/]] $compose_pkg_ensure = undef, + Optional[Enum['absent', 'installed', 'latest']] $machinectl_pkg_ensure = undef, + Enum['absent', 'file'] $nodocker = 'absent', + Hash $storage_options = {}, + Hash $containers_options = {}, + Array $rootless_users = [], + Boolean $enable_api_socket = false, + Boolean $manage_subuid = false, + Boolean $match_subuid_subgid = true, + String $file_header = '# FILE MANAGED BY PUPPET', + Hash $subid = {}, + Hash $pods = {}, + Hash $volumes = {}, + Hash $images = {}, + Hash $containers = {}, + Hash $networks = {}, + Hash $quadlets = {}, ) { include podman::install include podman::options diff --git a/manifests/install.pp b/manifests/install.pp index 45dac56..1c0e0ab 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -3,7 +3,7 @@ # class podman::install { ensure_resource('Package', $podman::podman_pkg, { 'ensure' => $podman::podman_pkg_ensure }) - ensure_resource('Package', $podman::skopeo_pkg, { 'ensure' => 'installed' }) + ensure_resource('Package', $podman::skopeo_pkg, { 'ensure' => $podman::skopeo_pkg_ensure }) unless $podman::buildah_pkg_ensure =~ Undef { ensure_resource('Package', $podman::buildah_pkg, { 'ensure' => $podman::buildah_pkg_ensure }) }