Compare commits

..

7 Commits

Author SHA1 Message Date
unkin-agent 452acfacd9 Migrate cobbler to puppet-on-k8s (#568)
Agents move from the VM puppetmasters to puppet-on-k8s one role at a time. The cobbler server has no exported-resource or PuppetDB query coupling to roles still on the VM masters, so it can move on its own.

- enable profiles::puppet::migrate for roles::infra::cobbler::server

Reviewed-on: #568
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-09 23:12:27 +11:00
unkin-agent a5ed2c278e Migrate glauth nodes to puppet-on-k8s (#566)
Glauth nodes have no exported-resource or PuppetDB query coupling to roles still on the VM puppetmasters, so they can move to puppet-on-k8s on their own.

- enable profiles::puppet::migrate for roles::infra::auth::glauth

Reviewed-on: #566
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-09 23:04:40 +11:00
unkin-agent aa125b5e83 Migrate ceph rgw nodes to puppet-on-k8s (#571)
Ceph RGW nodes still run against the VM puppetmasters. The role has no exported-resource or PuppetDB query coupling to roles left on the VM masters, so it moves to puppet-on-k8s on its own.

- enable profiles::puppet::migrate for roles::infra::ceph::rgw

Reviewed-on: #571
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-09 23:01:51 +11:00
unkin-agent a250d30d7d Remove legacy /etc/encapic config (#572)
encapic v0.5.0 drops the RPM-owned /etc/encapic/encapic.conf and the binary fallback to it; config lives in /etc/encapi. Upgraded masters can be left with an empty /etc/encapic or a .rpmsave.

- profiles::puppet::encapic removes /etc/encapic recursively after Package[encapic]
- puppet masters pin encapic 0.5.0

Requires encapic v0.5.0 released.

Reviewed-on: #572
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-09 22:31:39 +11:00
unkin-agent e90884507b Migrate jumphosts to puppet-on-k8s (#565)
Jumphosts still compile against the VM puppetmasters. The role has no exported-resource or PuppetDB query coupling to roles left on the VM masters, so it moves on its own.

- enable profiles::puppet::migrate for roles::infra::proxy::jumphost

Reviewed-on: #565
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-08 22:17:13 +11:00
unkin-agent 49c14e7bda Migrate dhcp servers to puppet-on-k8s (#567)
The dhcp server role has no exported-resource or PuppetDB query coupling to roles still on the VM puppetmasters, so it can move to puppet-on-k8s on its own.

- enable profiles::puppet::migrate for roles::infra::dhcp::server

Reviewed-on: #567
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-08 22:16:52 +11:00
unkin-agent 3726210d38 Move encapic config to /etc/encapi (#569)
encapic 0.4.0 reads /etc/encapi/encapic.conf ahead of the legacy RPM-owned /etc/encapic/encapic.conf, so puppet-managed config no longer collides with the packaged %config(noreplace) file.

- default profiles::puppet::encapic config_dir to /etc/encapi
- bump the encapic pin on puppet masters to 0.4.0

Reviewed-on: #569
Co-authored-by: unkin-agent <unkin-agent@unkin.net>
Co-committed-by: unkin-agent <unkin-agent@unkin.net>
2026-11-08 22:16:31 +11:00
8 changed files with 20 additions and 6 deletions
+2
View File
@@ -2,6 +2,8 @@
hiera_include:
- glauth
profiles::puppet::migrate::enabled: true
# additional altnames
profiles::pki::vault::alt_names:
- ldap.main.unkin.net
+2
View File
@@ -3,6 +3,8 @@ hiera_include:
- profiles::ceph::rgw
- profiles::nginx::simpleproxy
profiles::puppet::migrate::enabled: true
profiles::ceph::rgw::enable: true
# FIXME: puppet-python wants to try manage python-dev, which is required by the ceph package
@@ -4,6 +4,8 @@ hiera_include:
- frrouting
- exporters::frr_exporter
profiles::puppet::migrate::enabled: true
profiles::packages::include:
cobbler: {}
cobbler3.2-web: {}
+2
View File
@@ -4,6 +4,8 @@ hiera_include:
- profiles::dhcp::server
- exporters::frr_exporter
profiles::puppet::migrate::enabled: true
# networking
anycast_ip: 198.18.19.18
systemd::manage_networkd: true
-2
View File
@@ -6,8 +6,6 @@ hiera_include:
- profiles::gitea::haproxy
- gitea
profiles::puppet::migrate::enabled: true
# additional altnames
profiles::pki::vault::alt_names:
- git.unkin.net
@@ -1,3 +1,5 @@
profiles::puppet::migrate::enabled: true
profiles::pki::vault::alt_names:
- jumphost.service.consul
- jumphost.query.consul
+1 -1
View File
@@ -31,7 +31,7 @@ profiles::puppet::enc::repo: https://git.service.au-syd1.consul/unkinben/puppet-
# Deep-merged with the entries in roles/infra/puppet.yaml.
profiles::packages::include:
encapic:
ensure: '0.2.0'
ensure: '0.5.0'
certmanager:
ensure: '0.2.0'
sshsignhost:
+9 -3
View File
@@ -5,14 +5,13 @@
# config so the encapi endpoint can change without repackaging.
class profiles::puppet::encapic (
Stdlib::HTTPUrl $encapi_url,
Stdlib::AbsolutePath $config_dir = '/etc/encapic',
Stdlib::AbsolutePath $config_dir = '/etc/encapi',
String $config_name = 'encapic.conf',
String $owner = 'root',
String $group = 'root',
) {
# The RPM ships this file as %config(noreplace), so puppet must write it only
# once the package is present or the install overwrites it.
# order after the package so the shim exists before the config does.
file { $config_dir:
ensure => directory,
mode => '0755',
@@ -29,4 +28,11 @@ class profiles::puppet::encapic (
content => "ENCAPI_URL=${encapi_url}\n",
require => File[$config_dir],
}
# legacy pre-0.5.0 config dir; also clears any rpm .rpmsave left behind
file { '/etc/encapic':
ensure => absent,
force => true,
require => Package['encapic'],
}
}