$ cat /var/log/cloud-init.log
...
2023-01-16 11:07:57,416 - util.py[DEBUG]: Running module puppet (<module 'cloudinit.config.cc_puppet' from
'/usr/lib/python3/dist-packages/cloudinit/config/cc_puppet.py'>) failed
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/cloudinit/config/modules.py", line 246, in _run_modules
ran, _r = cc.run(
File "/usr/lib/python3/dist-packages/cloudinit/cloud.py", line 67, in run
return self._runners.run(name, functor, args, freq, clear_on_fail)
File "/usr/lib/python3/dist-packages/cloudinit/helpers.py", line 185, in run
results = functor(*args)
File "/usr/lib/python3/dist-packages/cloudinit/config/cc_puppet.py", line 321, in handle
_autostart_puppet(log)
File "/usr/lib/python3/dist-packages/cloudinit/config/cc_puppet.py", line 135, in _autostart_puppet
subp.subp(["systemctl", "enable", "puppet.service"], capture=False)
File "/usr/lib/python3/dist-packages/cloudinit/subp.py", line 335, in subp
raise ProcessExecutionError(
cloudinit.subp.ProcessExecutionError: Unexpected error while running command.
Command: ['systemctl', 'enable', 'puppet.service']
Exit code: 1
Reason: -
Stdout: -
Stderr: -
...
The issue seems that puppet 7.20.0-1 is a transitional dummy package pointing to puppet-agent and puppet.service was renamed to puppet-agent.service but cloud-init is not aware of this and tries to enable the old puppet.service.
In puppet 7.16 puppet.service was an alias pointing to puppet-agent.service [1].
cc_puppet fails to start the puppet service on Ubuntu Lunar.
Cloud config to reproduce it:
```yaml
#cloud-config
puppet:
install: true
install_type: packages
start_service: true
```
$ cat /var/log/ cloud-init. log config. cc_puppet' from lib/python3/ dist-packages/ cloudinit/ config/ cc_puppet. py'>) failed python3/ dist-packages/ cloudinit/ config/ modules. py", line 246, in _run_modules python3/ dist-packages/ cloudinit/ cloud.py" , line 67, in run run(name, functor, args, freq, clear_on_fail) python3/ dist-packages/ cloudinit/ helpers. py", line 185, in run python3/ dist-packages/ cloudinit/ config/ cc_puppet. py", line 321, in handle puppet( log) python3/ dist-packages/ cloudinit/ config/ cc_puppet. py", line 135, in _autostart_puppet subp([" systemctl" , "enable", "puppet.service"], capture=False) python3/ dist-packages/ cloudinit/ subp.py" , line 335, in subp nError( subp.ProcessExe cutionError: Unexpected error while running command.
...
2023-01-16 11:07:57,416 - util.py[DEBUG]: Running module puppet (<module 'cloudinit.
'/usr/
Traceback (most recent call last):
File "/usr/lib/
ran, _r = cc.run(
File "/usr/lib/
return self._runners.
File "/usr/lib/
results = functor(*args)
File "/usr/lib/
_autostart_
File "/usr/lib/
subp.
File "/usr/lib/
raise ProcessExecutio
cloudinit.
Command: ['systemctl', 'enable', 'puppet.service']
Exit code: 1
Reason: -
Stdout: -
Stderr: -
...
The issue seems that puppet 7.20.0-1 is a transitional dummy package pointing to puppet-agent and puppet.service was renamed to puppet- agent.service but cloud-init is not aware of this and tries to enable the old puppet.service.
In puppet 7.16 puppet.service was an alias pointing to puppet- agent.service [1].
[1] https:/ /changelogs. ubuntu. com/changelogs/ pool/universe/ p/puppet- agent/puppet- agent_7. 20.0-1/ changelog