cookbook 'foreman', '~> 1.0.0'
foreman (16) Versions 1.0.0 Follow2
Provides custom resources for installing and configuring Foreman and Foreman Smart Proxy
cookbook 'foreman', '~> 1.0.0', :supermarket
knife supermarket install foreman
knife supermarket download foreman
Foreman cookbook
This cookbook now exposes custom resources for installing and configuring Foreman and Foreman Smart Proxy. The legacy recipes/ and attributes/ APIs were removed as part of the migration.
- Migration notes: [migration.md](migration.md)
- Platform and package constraints: [LIMITATIONS.md](LIMITATIONS.md)
Resources
-
foreman_appInstalls Foreman, renders application configuration, optionally prepares the database, and manages theforemanservice. -
foreman_proxyInstalls Smart Proxy, renderssettings.ymland module fragments, optionally configures DNS/DHCP/TFTP helpers, and manages theforeman-proxyservice. -
foreman_repoConfigures the official Foreman APT repositories. -
foreman_pluginsInstalls Foreman or Smart Proxy plugin packages. -
foreman_rakeRunsforeman-raketasks. -
foreman_smartproxyRegisters or removes a Smart Proxy through the Foreman API. -
foreman_proxy_settings_fileRenders a module file under/etc/foreman-proxy/settings.d/.
Supported platforms
- Debian 12
- Ubuntu 22.04
These limits are based on the current upstream package documentation summarized in [LIMITATIONS.md](LIMITATIONS.md).
Usage
Foreman server
foreman_app 'default' do server_name 'foreman.example' database( adapter: 'postgresql', host: '127.0.0.1', username: 'foreman', password: 'super-secret' ) end foreman_plugins 'server-plugins' do packages %w[foreman-libvirt ruby-foreman-chef] end
Foreman Smart Proxy
foreman_proxy 'default' do server_name 'foreman.example' register false dns( enabled: true, managed: true, interface: 'eth0' ) dhcp( enabled: true, managed: true, interface: 'eth0', range: '10.0.0.10 10.0.0.20' ) tftp( enabled: true ) end
Testing
cookstylechef exec rspec --format documentationyamllint .markdownlint-cli2 "**/*.md"KITCHEN_LOCAL_YAML=kitchen.dokken.yml chef exec kitchen test default-ubuntu-2204 --destroy=alwaysKITCHEN_LOCAL_YAML=kitchen.dokken.yml chef exec kitchen test proxy-debian-12 --destroy=always
Dependent cookbooks
| apache2 >= 0.0.0 |
| bind >= 0.0.0 |
| database >= 0.0.0 |
| dhcp >= 0.0.0 |
| hostname >= 0.0.0 |
| hostsfile >= 0.0.0 |
| mysql >= 0.0.0 |
| mysql2_chef_gem >= 0.0.0 |
| postgresql >= 0.0.0 |
| tftp >= 0.0.0 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
Changelog
1.0.0 (2026-05-06)
⚠ BREAKING CHANGES
- migrate Foreman cookbook to custom resources (#61)
Features
Bug Fixes
0.1.12 (2025-10-15)
Bug Fixes
0.1.2 - 2023-03-02
- Standardise files with files in sous-chefs/repo-management
0.1.1 - 2023-02-14
- Remove delivery folder
0.1.0 - 2022-01-18
- resolved cookstyle error: providers/smartproxy.rb:52:3 convention:
Style/RedundantCondition
0.0.3 - 2021-08-31
- Standardise files with files in sous-chefs/repo-management
0.0.2 - 2021-06-01
- Adopted by Sous-Chefs
Collaborator Number Metric
1.0.0 passed this metric
Contributing File Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Cookstyle Metric
1.0.0 passed this metric
No Binaries Metric
1.0.0 passed this metric
Testing File Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
1.0.0 passed this metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Cookstyle Metric
1.0.0 passed this metric
No Binaries Metric
1.0.0 passed this metric
Testing File Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
1.0.0 passed this metric
1.0.0 passed this metric
Testing File Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
1.0.0 failed this metric
1.0.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number