packages:chef-server
This is an old revision of the document!
Table of Contents
Installing Opscode Chef Server via omnibus packaging
As prepackaged chef-server is not available for PLD Linux, let's try to build the omnibus package ourself.
Suggestion is to run this in a Vagrant box, that you can discard later as the gems are installed outside rpm package manager.
Pre-requisites
You need more space to build and install:
# lvextend --size=3G /dev/sys/rootfs # xfs_growfs /
Install packages:
# poldek -u --noask ruby-bundler git-core ruby-devel glibc-devel libffi-devel libstdc++-devel patch bzip2 lsb-release rpm-build
Building
Checkout omnibus-chef-server:
$ git clone https://github.com/opscode/omnibus-chef-server.git $ cd omnibus-chef-server
Bugfixes
Make bugfixes:
- libiconv
sed -i -e 's,a1f25d7ab6930826822323b373b8298bff02fed1,4f2ee0a9d563acbeea14af3d8d84e2d2e0e53fb4,' Gemfile.lock
- makeself
$ wget -O package-scripts/chef-server/makeselfinst https://raw.github.com/opscode/omnibus-chef/master/package-scripts/chef/makeselfinst
- patch omnibus gem with omnibus-pld.patch
Install bundle binstubs:
$ bundle install --binstubs
Make cachedir so could run as non-root:
$ sudo install -o $USER -d /var/cache/omnibus /opt/chef-server
Create a platform-specific package using the build project command:
$ bin/omnibus build project chef-server
You may later preserve cache dirs to be shared with OS, add the mappings to your Vagrantfile
config.vm.synced_folder "cache/omnibus", "/var/cache/omnibus"
Install
Currently the fpm produced .rpm does not package directories, so you should install rpm skipping directory deps:
# (umask 2; rpm -Uhv --define '_check_dirname_deps 0' chef-server-11.0.8+20130618223354.git.14.1853585-1.pld.3.0.x86_64.rpm)
packages/chef-server.1371738559.txt.gz · Last modified: 2013-06-20 16:29 by glen