108 lines
3.7 KiB
Markdown
108 lines
3.7 KiB
Markdown
# yum-rsyslog Cookbook
|
|
|
|
The yum-rsyslog cookbook takes over management of the default repositoryids that ship with CentOS systems. It allows attribute manipulation of `rsyslog`, `rsyslog-devel`
|
|
|
|
## Requirements
|
|
### Platforms
|
|
- RHEL/CentOS and derivatives
|
|
|
|
### Chef
|
|
- Chef 11+
|
|
|
|
### Cookbooks
|
|
- yum version 3.2.0 or higher
|
|
- yum-epel
|
|
|
|
## Attributes
|
|
The following attributes are set by default
|
|
|
|
```ruby
|
|
default['yum']['rsyslog']['repositoryid'] = 'rsyslog'
|
|
default['yum']['rsyslog']['enabled'] = true
|
|
default['yum']['rsyslog']['managed'] = true
|
|
default['yum']['rsyslog']['gpgkey'] = 'http://rpms.adiscon.com/RPM-GPG-KEY-Adiscon'
|
|
default['yum']['rsyslog']['gpgcheck'] = true
|
|
default['yum']['rsyslog']['release_repo'] = 8
|
|
default['yum']['rsyslog']['description'] = 'Adiscon Rsyslog v8-stable for CentOS-$releasever-$basearch'
|
|
default['yum']['rsyslog']['baseurl'] = 'http://rpms.adiscon.com/v8-stable/epel-$releasever/$basearch'
|
|
```
|
|
|
|
```ruby
|
|
default['yum']['rsyslog-devel']['repositoryid'] = 'rsyslog-devel'
|
|
default['yum']['rsyslog-devel']['enabled'] = false
|
|
default['yum']['rsyslog-devel']['managed'] = false
|
|
default['yum']['rsyslog-devel']['gpgkey'] = 'http://rpms.adiscon.com/RPM-GPG-KEY-Adiscon'
|
|
default['yum']['rsyslog-devel']['gpgcheck'] = true
|
|
default['yum']['rsyslog-devel']['release_repo'] = 8
|
|
default['yum']['rsyslog-devel']['description'] = 'Adiscon Rsyslog v8-stable for CentOS-$releasever-$basearch'
|
|
default['yum']['rsyslog-devel']['baseurl'] = 'http://rpms.adiscon.com/v8-stable/epel-$releasever/$basearch'
|
|
```
|
|
|
|
## Recipes
|
|
- default - Walks through node attributes and feeds a yum_resource
|
|
- parameters. The following is an example a resource generated by the
|
|
- recipe during compilation.
|
|
|
|
```ruby
|
|
yum_repository 'rsyslog' do
|
|
baseurl 'http://rpms.adiscon.com/v8-stable/epel-$releasever/$basearch'
|
|
description 'Adiscon Rsyslog v8-stable for CentOS-$releasever-$basearch'
|
|
enabled true
|
|
gpgcheck true
|
|
gpgkey 'http://rpms.adiscon.com/RPM-GPG-KEY-Adiscon'
|
|
end
|
|
```
|
|
|
|
## Usage Example
|
|
To disable the `rsyslog` repository through a Role or Environment definition
|
|
|
|
```
|
|
default_attributes(
|
|
'yum' => {
|
|
'rsyslog' => {
|
|
'enabled' => false
|
|
}
|
|
}
|
|
)
|
|
```
|
|
|
|
Uncommonly used repositoryids are not managed by default. This is speeds up integration testing pipelines by avoiding yum-cache builds that nobody cares about. To enable the `rsyslog-devel` repository with a wrapper cookbook, place the following in a recipe:
|
|
|
|
```
|
|
node.default['yum']['rsyslog-devel']['managed'] = true
|
|
node.default['yum']['rsyslog-devel']['enabled'] = true
|
|
include_recipe 'yum-rsyslog'
|
|
```
|
|
|
|
## More Examples
|
|
Point the base and debuginfo repositories at an internally hosted server.
|
|
|
|
```
|
|
node.default['yum']['rsyslog']['enabled'] = true
|
|
node.default['yum']['rsyslog']['baseurl'] = 'https://internal.example.com/centos/6/os/x86_64'
|
|
node.default['yum']['rsyslog']['sslverify'] = false
|
|
node.default['yum']['rsyslog-devel']['enabled'] = true
|
|
node.default['yum']['rsyslog-devel']['baseurl'] = 'https://internal.example.com/centos/6/updates/x86_64'
|
|
node.default['yum']['rsyslog-devel']['sslverify'] = false
|
|
|
|
include_recipe 'yum-rsyslog'
|
|
```
|
|
|
|
## License & Authors
|
|
**Author:** Eric Renfro (<psi-jack@linux-help.org>)
|
|
|
|
**Copyright:** 2016, Linux-Help.org.
|
|
|
|
```
|
|
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.
|
|
```
|