cookbook 'enterprise', '~> 1.2.0'
enterprise (9) Versions 1.2.0 Follow0
Installs common libraries and resources for Chef server and add-ons
cookbook 'enterprise', '~> 1.2.0', :supermarket
knife supermarket install enterprise
knife supermarket download enterprise
enterprise cookbook
This cookbook provides common functionality needed for Chef Server, Push Jobs, Reporting, and other enterprise-grade Omnibus projects.
Your omnibus project attributes should define the following attributes:
node['enterprise']['name']
This defaults to private_chef
for back compat. If you are building top-level (non add-on) project, set it to your project name.
In addition, you need to have:
-
node[project_name]['install_path']
the install location for your omnibus project (e.g./opt/chef-server
).
Optional attributes are:
-
node[project_name]['sysvinit_id']
an identifier used in/etc/inittab
(default is'SV'
). Needs to be a unique (for the file) sequence of 1-4 characters. -
node[project_name]['topology']
one ofstandalone
,tier
, orha
. -
node[project_name]['role']
eitherbackend
orfrontend
. -
node[project_name]['servers'][node_name]['bootstrap']
is used to determine if the node is installation bootstrap server. Value is treated as boolean.
Recipes
runit
Sets the proper attributes to use runit and creates a runit supervisor to be used by component runit services.
Resources
component_runit_service
Defines a runit service.
component_runit_supervisor
Creates a runit runsvdir process to monitor component runit processes.
Properties
-
name
- The name of the project -
ctl_name
- Name of the command used to manage the services. Defaults to#{name}-ctl
. -
sysvinit_id
- Two-letter prefix used to identify the service on sysvinit-style systems. Defaults to"SV"
. -
install_path
- Path where the project is installed.
Actions
-
:create
- Create the necessary files and start the runsvdir service. -
:delete
- Stop the services and the runsvdir service and remove the files.
Providers
-
Chef::Provider::ComponentRunitSupervisor::Systemd
- For systems using systemd.
Testing
ChefSpec
Run chef exec rspec
to run ChefSpec examples.
Test Kitchen
Integration tests can be run with Test Kitchen.
Maintainers
This cookbook is maintained by Chef's Community Cookbook Engineering team. Our goal is to improve cookbook quality and to aid the community in contributing to cookbooks. To learn more about our team, process, and design goals see our team documentation. To learn more about contributing to cookbooks like this see our contributing documentation, or if you have general questions about this cookbook come chat with us in #cookbok-engineering on the Chef Community Slack
License
Copyright: 2013-2019, Chef Software, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Dependent cookbooks
runit >= 5.1.1 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
Enterprise Cookbook Change Log
This file is used to list changes made in each version of the enterprise cookbook.
1.2.0 (2021-10-13)
- Update resources to set
unified_mode true
for compatibility with future Chef Infra Client releases
1.1.0 (2021-07-01)
- Work with Chef Infra Client 16 - @tas50
1.0.0 (2021-04-19)
- Cleanup and modernize the specs a bit - @tas50
- Cookstyle Bot Auto Corrections with Cookstyle 6.15.9 - @cookstyle
- Cookstyle Bot Auto Corrections with Cookstyle 6.19.5 - @cookstyle
- Remove support for sysv and upstart / Require systemd - @tas50
0.15.2 (2020-06-02)
- Update file headers to match our standard - @tas50
- Cookstyle fixes including Chef Infra Client 16 compatibility - @xorimabot
- resolved cookstyle error: libraries/component_runin_supervisor_resource_mixin.rb:4:7 warning:
ChefDeprecations/ResourceUsesOnlyResourceName
- resolved cookstyle error: resources/component_runit_service.rb:21:1 warning:
ChefDeprecations/ResourceUsesOnlyResourceName
- resolved cookstyle error: recipes/runit.rb:18:53 convention:
Layout/TrailingWhitespace
- resolved cookstyle error: recipes/runit.rb:18:54 refactor:
ChefModernize/FoodcriticComments
- resolved cookstyle error: libraries/dsl.rb:28:14 warning:
Lint/SendWithMixinArgument
- resolved cookstyle error: libraries/dsl.rb:29:16 warning:
Lint/SendWithMixinArgument
- resolved cookstyle error: libraries/dsl.rb:30:16 warning:
Lint/SendWithMixinArgument
- resolved cookstyle error: libraries/dsl.rb:35:26 warning:
Lint/SendWithMixinArgument
- resolved cookstyle error: metadata.rb:6:1 refactor:
ChefRedundantCode/LongDescriptionMetadata
- resolved cookstyle error: resources/component_runit_service.rb:36:1 refactor:
ChefStyle/TrueClassFalseClassResourceProperties
- resolved cookstyle error: resources/pg_user.rb:3:1 refactor:
ChefStyle/TrueClassFalseClassResourceProperties
- resolved cookstyle error: libraries/component_runin_supervisor_resource_mixin.rb:4:7 warning:
0.15.1 (2019-06-02)
- Minor testing updates and metadata fixes - @tas50
0.15.0 (2019-06-03)
- Update for and require the new runit cookbook v5.0.1
- Remove support for keepalived in Chef HA
- Remove the ChefSpec matchers that are no longer necessary with modern ChefSpec
- Remove fedora from the metadata since we don't actually support it
- Refactor component_runit_service to use the new :reload_log action in runit cookbook 5.X's runit_service resource
- Require Chef 13 or later
- Remove support for Debian < 8 and RHEL < 6
- Update the specs for modern platforms
0.14.2 (2018-11-28)
- turn component_runit_service into a custom resource [#67]
0.14.1 (2018-08-15)
- Pin runit cookbook to v4.1.1.
0.14.0 (2018-05-18)
- Make specs Chef 14 friendly
- Add Ubuntu 18 support
- Rework specs to use InSpec to detect init system
- Set systemd TasksMax to infinity where supported This fixes an issue where the JVM ran out of processes.
0.13.0 (2018-03-27)
- Resolve Chef 14 deprecation warnings
0.12.0 (2018-01-17)
- Reload the systemd unit files anytime we make changes
- Convert pg LWRPs to custom resources
- Increase the minimum supported chef-client to 12.7
- Move templates out of the default directory since only Chef 11 requires that
- Minor cleanup to the test recipe and configs
- Convert broken ServerSpec tests to InSpec
0.11.0 (2017-07-12)
- Convert the library LWRPs to custom resources
- [CLOUD-429] Fix runsvdir reboot issues with Upstart
- Update enterprise_pg_database and specs to be chef 13.x compatible
- Avoid deprecation warnings in chefspec
0.10.2 (2016-08-10)
- Add directive to systemd file to wait for network to be up to avoid process (elasticsearch) coming up thinking there is no network configured.
0.10.1 (2016-06-07)
- Put systemd unit files in /etc/systemd/system; clean up files previously placed in /usr/lib/systemd/system.
0.10.0 (2016-02-11)
- SUSE support.
0.9.0 (2015-10-08)
- Relax RuboCop rules
- Ensure
component_runit_supervisor
:delete
action does not attempt to run a command that does not exist - Add basic ChefSpec convergence coverage
- Update Travis configuration to run using ChefDK
0.8.0 (2015-06-09)
- Add Gemfile
- Fix for empty resource definitions overwriting environment variables
- Update Postgres credentials to utilize environment variables
0.7.1 (2015-06-05)
- Fix bug with undefined variable in pg_user and pg_database resources
0.7.0 (2015-06-03)
- Add delete action for component runit supervisor resource
0.6.0 (2015-06-03)
- Add support for external Postgres databases
0.5.2 (2015-02-05)
- Add svlogd bin attribute for runit
0.5.1 (2015-01-15)
- Make it possible to pass arbitrary attrs to runit resources
- Add systemd support
0.4.7 (2014-11-19)
- Reload logging service on config changes
0.4.6 (2014-11-06)
- Apply Apache 2.0 license
- Allow project to override the name of the ctl script
0.4.5 (2014-09-03)
- Unbreak private-chef package upgrades, since package_name of private_chef causes major issues
- Don't mess with
install_path
and also don't mess withnode['enterprise']['name']
downstream by cloning it
0.4.4 (2014-07-18)
- [OC-11575] Don't start services by default in HA topology
0.4.3 (2014-05-27)
- Unbreak runit setup on sysv style init (RHEL5)
0.4.2 (2014-05-13)
- Enable a cluster's default encoding to be specified
Collaborator Number Metric
1.2.0 passed this metric
Contributing File Metric
1.2.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.2.0 failed this metric
Chef/RedundantCode/NamePropertyIsRequired: Resource properties marked as name properties should not also be required properties (https://docs.chef.io/workstation/cookstyle/chef_redundantcode_namepropertyisrequired): enterprise/libraries/component_runin_supervisor_resource_mixin.rb: 8
Run with Cookstyle Version 7.32.1 with cops Chef/Deprecations,Chef/Correctness,Chef/Sharing,Chef/RedundantCode,Chef/Modernize,Chef/Security,InSpec/Deprecations
No Binaries Metric
1.2.0 passed this metric
Testing File Metric
1.2.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.2.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.2.0 passed this metric
1.2.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.2.0 failed this metric
Chef/RedundantCode/NamePropertyIsRequired: Resource properties marked as name properties should not also be required properties (https://docs.chef.io/workstation/cookstyle/chef_redundantcode_namepropertyisrequired): enterprise/libraries/component_runin_supervisor_resource_mixin.rb: 8
Run with Cookstyle Version 7.32.1 with cops Chef/Deprecations,Chef/Correctness,Chef/Sharing,Chef/RedundantCode,Chef/Modernize,Chef/Security,InSpec/Deprecations
No Binaries Metric
1.2.0 passed this metric
Testing File Metric
1.2.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.2.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.2.0 failed this metric
Run with Cookstyle Version 7.32.1 with cops Chef/Deprecations,Chef/Correctness,Chef/Sharing,Chef/RedundantCode,Chef/Modernize,Chef/Security,InSpec/Deprecations
1.2.0 passed this metric
Testing File Metric
1.2.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.2.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.2.0 failed this metric
1.2.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