cookbook 'omnibus_updater', '= 2.0.0'
The omnibus_updater cookbook has been deprecated
Author provided reason for deprecation:
The omnibus_updater cookbook has been deprecated and is no longer being maintained by its authors. Use of the omnibus_updater cookbook is no longer recommended.
You may find that the chef_client_updater cookbook is a suitable alternative.
omnibus_updater
(23) Versions
2.0.0
-
Follow63
Chef omnibus package updater and installer
cookbook 'omnibus_updater', '= 2.0.0', :supermarket
knife supermarket install omnibus_updater
knife supermarket download omnibus_updater
omnibus_updater cookbook
This cookbook allows you to upgrade the omnibus based Chef install package via Chef. You can run either latest or pin to specific version.
Requirements
Platforms
- Debian / Ubuntu
- Mac OS X
- RHEL (redhat, centos, amazon, scientific, oracle)
- Solaris
- SLES / openSUSE
- Windows
Chef
- Chef 11+
Cookbooks
- none
Usage
Add the recipe to your run list and specify what version should be installed on the node:
knife node run_list add recipe[omnibus_updater]
In your role you'll likely want to set the version. It defaults to nothing, and will install the latest..
override_attributes( :omnibus_updater => { :version => '11.4.0' } )
It can also uninstall Chef from the system Ruby installation if you tell it to:
override_attributes( :omnibus_updater => { :remove_chef_system_gem => true } )
Features
Latest Version
Force installation of the latest version regardless of value stored in version attribute by setting the force_latest
attribute.
Chef Killing
By default the omnibus updater will kill the chef instance by raising an exception. You can turn this off using the kill_chef_on_upgrade
attribute. It is not recommended to turn this off. Internal chef libraries may change, move, or no longer exist. The currently running instance can encounter unexpected states because of this. To prevent this, the updater will attempt to kill the Chef instance so that it can be restarted in a normal state.
Restart chef-client Service
Use the restart_chef_service
attribute to restart chef-client if you have it running as a service.
Prerelease
Prereleases can be installed via the auto-installation using prerelease
attribute.
Disable
If you want to disable the updater you can set the disabled
attribute to true. This might be useful if the cookbook is added to a role but should then be skipped for example on a Chef server.
Prevent Downgrade
If you want to prevent the updater from downgrading chef on a node, you can set the prevent_downgrade
attribute to true. This can be useful for testing new versions manually. Note that the always_download
attribute takes precedence if set.
Warnings
Windows Support
Windows support is available in versions 1.0.8 and higher; however, we only support Chef Client versions 12.5.1 and below, due to a known bug in 12.6.0. This is reflected in the Windows test suite.
If you would like to wrap this cookbook in order to prevent OmnibusUpdater with version 12.6.0 on Windows, you may do something like the following:
if (node[:chef_packages][:chef][:version] == '12.6.0') && node[:os].downcase.include?('windows') Chef::Log.warn 'Omnibus updater cannot upgrade or downgrade a Windows 12.6.0 installation, skipping' else include_recipe 'omnibus_updater' end
License & Authors
- Author: Chris Roberts (chrisroberts.code@gmail.com)
Copyright:: 2010-2016, 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
This cookbook has no specified dependencies.
Contingent cookbooks
omnibus_updater Cookbook CHANGELOG
This file is used to list changes made in each version of the omnibus_updater cookbook.
2.0.0 (2016-08-19)
- Hard fail on unsupported platforms now
- Add suse support
- Add additional chefspec tests
1.2.1 (2016-08-19)
- Use the improved rakefile
- Fix github URLs in the metadata
- Add testing on additional platforms to kitchen config
- fix 1.2.0 no implicit conversion of nil to string. fixes #123
1.2.0 (2016-08-18)
- Add OS X DMG Support and fix Mac OS X Version Determination
- Add a potential Restart Fix
- Add chef_version metadata to the metadata.rb file
- Change maintainership to Chef and add standard Chef contributing, test, and maintainer docs
- Renamed the test recipe for consistency and removed the use of minitest
- Swapped Librarian for Berkshelf
- Added testing in Travis CI using ChefDK
- Resolved Foodcritic FC001/FC043 warnings
- Resolved all Cookstyle warnings
- Identify Fedora to be EL7 not EL6
- Avoid a node.set deprecation warning
- No need to warn on Debian 5. No one should be on this now.
- Add a test for the standard flows
v1.1.0
- Add Windows support (only Chef client versions 12.5.1 and below).
- Improve upgrade behavior on Amazon Linux
- Explicitly require windows testing gems in order to support test-kitchen 1.6.x.
v1.0.6
- Get rid of warnings about defined constant
- update Chef download url
- Updates supported versions
- require chef/rest
- use Chef::Mash explicitly
- Define the Chef::Mash constant if not provided by chef
- add test suites for ubuntu 14.04 and centos 7
v1.0.4
- file_cache_path path to store chef-client
- Avoid deleting chef-server packages if using the same cache dir
- Only backup the last old chef client file
- make sure directory exists before trying to write to it
v1.0.2
- Maintenance updates
- Support for Fedora
- omnitrucker solaris update
- bug fixes
v1.0.0
- Breaking change:
:always_download
is now defaulted to false - Add solaris package install support (#37 thanks @jtimberman)
- Update notifies/subscribes usage to support older Chefs (#38 thanks @spheromak)
v0.2.8
- Always download the package (thanks @miketheman for swiftly pointing out the issue!)
v0.2.6
- Work with amazon linux (thanks @thommay)
- Disable updates on debian 5 (thanks @ianand0204)
- Only use major version on debian systems (thanks @kvs)
- Allow prevention of downgrades (thanks @buysse)
- Add support for restarting chef service after upgrade (thanks @andrewfraley)
v0.2.4
- Only download omnibus package if version difference detected (#20 #22 #23)
- Provide attribute for always downloading package even if version matches
v0.2.3
- Use chef internals for interactions with omnitruck to provide proper proxy support (#19)
v0.2.0
- Use omnitruck client for url generation for package fetching
- Use
prerelease
in favor ofallow_release_clients
v0.1.2
- Fix regression on debian package path construction (thanks ashmere)
v0.1.1
- Search for proper version suffix if not provided (removes default '-1')
- Do not allow release clients by default when version search is enabled
- Push omnibus package installation to the end of run (reduces issue described in #10)
- Allow updater to be disabled via attribute (thanks Teemu Matilainen)
v0.1.0
- Fix redhat related versioning issues
- Remove requirement for '-1' suffix on versions
- Initial support for automatic latest version install
v0.0.5
- Add support for Ubuntu 12.10
- Path fixes for non-64 bit packages (thanks ashmere)
v0.0.4
- Use new aws bucket by default
- Update file key building
v0.0.3
- Path fix for debian omnibus packages (thanks ashmere)
v0.0.2
- Add robust check when uninstalling chef gem to prevent removal from omnibus
v0.0.1
- Initial release
Collaborator Number Metric
2.0.0 passed this metric
Foodcritic Metric
2.0.0 passed this metric
2.0.0 passed this metric
2.0.0 passed this metric