Last active
April 19, 2016 15:03
-
-
Save nistude/6650973 to your computer and use it in GitHub Desktop.
Sample configuration files for a test-kitchen setup based on vagrant-lxc and chef-zero.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
driver_plugin: vagrant | |
provisioner: chef_zero | |
driver_config: | |
require_chef_omnibus: 11.6.0 | |
http_proxy: http://10.0.3.1:8123 | |
https_proxy: https://10.0.3.1:8123 | |
provider: lxc | |
platforms: | |
- name: ubuntu-12.04 | |
driver_config: | |
box: ubuntu-12.04 | |
box_url: file:///some/where/sensible/vagrant-lxc-precise.box | |
suites: | |
- name: default | |
run_list: | |
- recipe[minitest-handler] | |
- recipe[my_sample::default] | |
data_bags_path: ../../data_bags | |
attributes: {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
metadata | |
cookbook 'minitest-handler', github: 'btm/minitest-handler-cookbook' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# based on http://fabiorehm.com/blog/2013/07/18/crafting-your-own-vagrant-lxc-base-box/ | |
export RELEASE=precise | |
BASEDIR=`pwd` | |
TARGETDIR=$BASEDIR/base_boxes | |
mkdir -p /tmp/vagrant-lxc-${RELEASE} | |
cd /var/lib/lxc/${RELEASE}-base | |
sudo tar --numeric-owner -czf /tmp/vagrant-lxc-${RELEASE}/rootfs.tar.gz ./rootfs/* | |
cd /tmp/vagrant-lxc-${RELEASE} | |
sudo chown $USER:`id -gn` rootfs.tar.gz | |
wget https://raw.github.com/fgrehm/vagrant-lxc/master/boxes/common/lxc-template | |
wget https://raw.github.com/fgrehm/vagrant-lxc/master/boxes/common/lxc.conf | |
wget https://raw.github.com/fgrehm/vagrant-lxc/master/boxes/common/metadata.json | |
chmod +x lxc-template | |
tar -czf $TARGETDIR/vagrant-lxc-${RELEASE}.box * | |
cd $BASEDIR | |
sudo rm -fr /tmp/vagrant-lxc-${RELEASE} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# cookbooks/my_sample/files/default/test/foo_test.rb | |
require 'minitest/spec' | |
describe_recipe 'my_sample::foo' do | |
include ::Chef::DSL::DataQuery | |
describe 'application user setup' do | |
it 'adds the "foo" user' do | |
user('foo').must_exist | |
end | |
it 'allows any active developer to login as application user' do | |
file('/home/foo/.ssh/authorized_keys').must_exist | |
search(:users, 'groups:developer AND NOT action:remove').each do |user| | |
file('/home/foo/.ssh/authorized_keys').must_include user[:ssh_keys] | |
end | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment