Skip to content

Support and default to OpenVox 9 - #178

Merged
silug merged 4 commits into
puppet-bootstrap:productionfrom
silug:openvox9-server
Oct 24, 2026
Merged

silug merged 4 commits into
puppet-bootstrap:productionfrom
silug:openvox9-server

Conversation

@silug

@silug silug commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

This makes the Vagrant environment work with OpenVox 9 and makes OpenVox 9 the default.

Changes

  • Agent server setting. OpenVox 9 no longer falls back to puppet when server is unset (9.0.0 release notes). The role plan now runs puppet config set server <server> --section main on every target right after apply_prep, before any agent run. A new optional openvox_server plan parameter defaults to the FQDN of server_target (puppet.vagrant). REFERENCE.md is updated to match.
  • Choria ssldir. Choria before 0.30.3 runs puppet apply --configprint ssldir, and OpenVox 9 removed --configprint (Error: Could not parse application options: invalid option: --configprint). As a result, choria-server and choria-broker exit at startup and keep restarting. data/common.yaml now sets plugin.choria.ssldir (via choria::server_config, which is deep-merged) and choria::broker::ssldir to /etc/puppetlabs/puppet/ssl, so Choria never asks Puppet. The upstream fix (openvox: replace deprecated puppet apply to get config values choria-io/go-choria#2362) is in v0.30.3, but the newest package in the Choria yum repo is still 0.30.2. The workaround can be removed once 0.30.3 is packaged.
  • Default to OpenVox 9. OPENVOX_RELEASE now defaults to 9 in the Vagrantfile and spec/puppet/sample_spec.rb, and the README table is updated.
  • CI. The "OpenVox 9 Preview (OpenVox 8 + Ruby 4.0)" spec matrix entry is now a real OpenVox 9 entry (openvox ~> 9, Ruby 4.0). Both modules' specs pass locally with openvox 9.2.1.

Notes

  • choria enroll uses Choria's own puppetserver_host setting, which still resolves via the puppet host alias, so the server change doesn't affect it.
  • OpenVox 9 also changes the default of reports from store to none. Nothing here depends on stored YAML reports, so I left that alone.
  • Separately, I found that the server's firewall doesn't allow the Choria broker port (4222/tcp), so agents' choria-server can't connect. That isn't specific to OpenVox 9 (OpenVox 8 has it too) and is fixed separately in Open the Choria broker port on the server #184.

Testing

vagrant up (libvirt, generic/centos9s) with OPENVOX_RELEASE=9, from production with this branch merged:

  • The plan completed successfully. openvox-agent 9.2.1, openvox-server 9.1.0 and openvoxdb 9.1.0 were installed, and puppet config print server returns puppet.vagrant on both nodes.
  • After the Choria change, choria-broker and choria-server are active on both nodes. Second agent runs on both nodes exit 0, and PuppetDB lists both nodes.
  • With 4222/tcp opened by hand (see above), choria ping and choria req rpcutil ping reach both nodes.
  • bundle exec rake spec (serverspec): 28 examples, 0 failures.

Regression run with OPENVOX_RELEASE=8 from the same branch:

  • The plan completed successfully. openvox-agent 8.31.1, openvox-server 8.17.0 and openvoxdb 8.17.0 were installed, and server is puppet.vagrant on both nodes.
  • All services are active (including both Choria services, so the ssldir setting is harmless on OpenVox 8). Second agent runs on both nodes exit 0.
  • bundle exec rake spec (serverspec): 28 examples, 0 failures.

🤖 Generated with Claude Code

silug and others added 2 commits October 23, 2026 16:55
OpenVox 9 no longer falls back to `puppet` when `server` is unset, so
the `role` plan now sets `server` in the `main` section of `puppet.conf`
on every target right after the agent is installed.  It defaults to the
FQDN of `server_target` and can be overridden with the new
`openvox_server` plan parameter.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Now that the openvox 9 gem is released, replace the "OpenVox 8 +
Ruby 4.0" preview entry in the spec matrix with OpenVox 9 on Ruby 4.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
silug and others added 2 commits October 23, 2026 17:49
Choria before 0.30.3 finds Puppet's ssldir by running `puppet apply
--configprint ssldir`.  OpenVox 9 removed `--configprint`, so
choria-server and choria-broker exit at startup.  Setting
`plugin.choria.ssldir` stops Choria from asking Puppet.

The fix (choria-io/go-choria#2362) is in v0.30.3, but the newest
package in the Choria yum repo is still 0.30.2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Change the default OPENVOX_RELEASE from 8 to 9 in the Vagrantfile and
the serverspec tests, and update the README.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@silug silug changed the title Explicitly set the agent server setting for OpenVox 9 Support and default to OpenVox 9 Oct 23, 2026
@silug
silug marked this pull request as ready for review October 23, 2026 17:57
@silug
silug merged commit 382842b into puppet-bootstrap:production Oct 24, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant