summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Smith <tsmith@chef.io>2018-06-16 13:11:28 -0700
committerTim Smith <tsmith@chef.io>2018-06-16 13:59:52 -0700
commit5d05a0fd0b589fefd5324255a3818415a2b63281 (patch)
treebf6627d298fe281d799514a43065a165e9d9aef5
parentaa4f3285f3e49919e29f40337183fd0510baaee5 (diff)
downloadchef-5d05a0fd0b589fefd5324255a3818415a2b63281.tar.gz
Remove awesome customers testing and update kitchen configs
Awesome customers cookbook testing isn't even correct from learn chef anymore and it's not coming back in this form. There's no reason to keep carrying it around. This change also deps on kitchen 1.21 and uses the new name for the configs. Much easier to find if you're browsing the source in Finder/Explorer. Signed-off-by: Tim Smith <tsmith@chef.io>
-rw-r--r--.travis.yml57
-rw-r--r--acceptance/data-collector/.acceptance/data-collector-test/.gitignore2
-rw-r--r--kitchen-tests/Berksfile6
-rw-r--r--kitchen-tests/Gemfile3
-rw-r--r--kitchen-tests/README.md98
-rw-r--r--kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/metadata.rb9
-rw-r--r--kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/recipes/default.rb8
-rw-r--r--kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/metadata.rb9
-rw-r--r--kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/recipes/default.rb8
-rw-r--r--kitchen-tests/data_bags/passwords/mysql.json5
-rw-r--r--kitchen-tests/kitchen.travis.yml (renamed from kitchen-tests/.kitchen.travis.yml)8
-rw-r--r--kitchen-tests/kitchen.yml (renamed from kitchen-tests/.kitchen.yml)9
-rw-r--r--omnibus/.gitignore2
-rw-r--r--omnibus/Gemfile2
-rw-r--r--omnibus/Gemfile.lock17
-rw-r--r--omnibus/README.md81
-rw-r--r--omnibus/kitchen.vmware.yml (renamed from omnibus/.kitchen.vmware.yml)0
-rw-r--r--omnibus/kitchen.yml (renamed from omnibus/.kitchen.yml)26
18 files changed, 105 insertions, 245 deletions
diff --git a/.travis.yml b/.travis.yml
index 36fd343809..84d8c71543 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -132,7 +132,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- AMAZON=2
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -149,7 +149,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- AMAZON=201X
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -166,7 +166,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- UBUNTU=14.04
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -183,7 +183,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- UBUNTU=16.04
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -200,7 +200,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- UBUNTU=18.04
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -217,7 +217,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- DEBIAN=8
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -234,7 +234,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- DEBIAN=9
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -251,7 +251,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- CENTOS=6
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -268,7 +268,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- CENTOS=7
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -285,7 +285,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- FEDORA=latest
- - KITCHEN_YAML=.kitchen.travis.yml
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.4.4
services: docker
sudo: required
@@ -302,42 +302,7 @@ matrix:
- cat .kitchen/logs/kitchen.log
env:
- OPENSUSELEAP=42
- - KITCHEN_YAML=.kitchen.travis.yml
-# - rvm: 2.4.4
-# services: docker
-# sudo: required
-# gemfile: kitchen-tests/Gemfile
-# before_install:
-# - gem update --system $(grep rubygems omnibus_overrides.rb | cut -d'"' -f2)
-# - gem install bundler -v $(grep :bundler omnibus_overrides.rb | cut -d'"' -f2)
-# before_script:
-# - sudo iptables -L DOCKER || ( echo "DOCKER iptables chain missing" ; sudo iptables -N DOCKER )
-# - cd kitchen-tests
-# script:
-# - bundle exec kitchen test awesome-customers-ubuntu-ubuntu-1404
-# after_failure:
-# - cat .kitchen/logs/kitchen.log
-# env:
-# - AWESOME_CUSTOMERS_UBUNTU=1
-# - KITCHEN_YAML=.kitchen.travis.yml
-# - rvm: 2.4.4
-# services: docker
-# sudo: required
-# gemfile: kitchen-tests/Gemfile
-# before_install:
-# - gem update --system $(grep rubygems omnibus_overrides.rb | cut -d'"' -f2)
-# - gem install bundler -v $(grep :bundler omnibus_overrides.rb | cut -d'"' -f2)
-# before_script:
-# - sudo iptables -L DOCKER || ( echo "DOCKER iptables chain missing" ; sudo iptables -N DOCKER )
-# - cd kitchen-tests
-# script:
-# - bundle exec kitchen test awesome-customers-rhel-centos-7
-# after_failure:
-# - cat .kitchen/logs/kitchen.log
-# env:
-# - AWESOME_CUSTOMERS_RHEL=1
-# - KITCHEN_YAML=.kitchen.travis.yml
-# ### END TEST KITCHEN ONLY ###
+ - KITCHEN_YAML=kitchen.travis.yml
- rvm: 2.5.1
sudo: required
before_install:
diff --git a/acceptance/data-collector/.acceptance/data-collector-test/.gitignore b/acceptance/data-collector/.acceptance/data-collector-test/.gitignore
index ec2a890bd3..f0c21602ee 100644
--- a/acceptance/data-collector/.acceptance/data-collector-test/.gitignore
+++ b/acceptance/data-collector/.acceptance/data-collector-test/.gitignore
@@ -13,4 +13,4 @@ bin/*
.bundle/*
.kitchen/
-.kitchen.local.yml
+kitchen.local.yml
diff --git a/kitchen-tests/Berksfile b/kitchen-tests/Berksfile
index 22f838d83e..ea45042a2e 100644
--- a/kitchen-tests/Berksfile
+++ b/kitchen-tests/Berksfile
@@ -1,9 +1,3 @@
source "https://supermarket.chef.io"
cookbook "base", path: "cookbooks/base"
-
-# Disabled pending updating these test cases for Chef 13.
-# cookbook "awesome_customers_ubuntu_wrapper", path: "cookbooks/awesome_customers_ubuntu_wrapper"
-# cookbook "awesome_customers_ubuntu", github: "lamont-granquist/awesome_customers_ubuntu", branch: "lcg/bump-mysql-version"
-# cookbook "awesome_customers_rhel_wrapper", path: "cookbooks/awesome_customers_rhel_wrapper"
-# cookbook "awesome_customers_rhel", github: "lamont-granquist/awesome_customers_rhel", branch: "lcg/bump-mysql-version"
diff --git a/kitchen-tests/Gemfile b/kitchen-tests/Gemfile
index 9cc63fb7d6..3505c5f32e 100644
--- a/kitchen-tests/Gemfile
+++ b/kitchen-tests/Gemfile
@@ -2,8 +2,7 @@ source "https://rubygems.org"
gem "rake" # required to build some native extensions
gem "chef", path: ".."
-# remove this ohai pin once we ship the 14 gem
-gem "ohai", git: "https://github.com/chef/ohai.git", branch: "master"
+gem "ohai", git: "https://github.com/chef/ohai.git", branch: "master" # avoids failures when we bump chef major
gem "berkshelf", git: "https://github.com/berkshelf/berkshelf.git", branch: "master"
gem "kitchen-appbundle-updater", git: "https://github.com/chef/kitchen-appbundle-updater", branch: "master"
gem "kitchen-dokken", "< 2.0" # 2.x fails atm: https://travis-ci.org/chef/chef/jobs/199125787
diff --git a/kitchen-tests/README.md b/kitchen-tests/README.md
index 2d03b19b62..8dcf9702a5 100644
--- a/kitchen-tests/README.md
+++ b/kitchen-tests/README.md
@@ -1,18 +1,16 @@
# End-To-End Testing for Chef Client
-Here we seek to provide end-to-end testing of Chef Client through cookbooks which
-exercise many of the available resources, providers, and common patterns. The cookbooks
-here are designed to ensure certain capabilities remain functional with updates
-to the client code base.
+
+Here we seek to provide end-to-end testing of Chef Client through cookbooks which exercise many of the available resources, providers, and common patterns. The cookbooks here are designed to ensure certain capabilities remain functional with updates to the client code base.
## Getting started
+
All the gems needed to run these tests can be installed with Bundler.
```shell
chef/kitchen-tests$ bundle install
```
-To ensure everything is working properly, and to see which platforms can have tests
-executed on them, run
+To ensure everything is working properly, and to see which platforms can have tests executed on them, run
```shell
chef/kitchen-tests$ bundle exec kitchen list
@@ -21,69 +19,55 @@ chef/kitchen-tests$ bundle exec kitchen list
You should see output similar to
```shell
-Instance Driver Provisioner Last Action
-webapp-ubuntu-1204 Vagrant ChefSolo <Not Created>
+Instance Driver Provisioner Verifier Transport Last Action Last Error
+base-amazonlinux Vagrant ChefGithub Inspec Ssh <Not Created> <None>
```
## Testing
-We use Test Kitchen to build instances, test client code, and destroy instances. If
-you are unfamiliar with Test Kitchen we recommend checking out the [tutorial](http://kitchen.ci/)
-along with the `kitchen-vagrant` [driver documentation](https://github.com/test-kitchen/kitchen-vagrant).
-Test Kitchen is configured to manipulate instances using [Vagrant](http://www.vagrantup.com/)
-when testing locally, and [Amazon EC2](http://aws.amazon.com/ec2/) when testing
-pull requests on [Travis CI](https://travis-ci.com).
+
+We use Test Kitchen to build instances, test client code, and destroy instances. If you are unfamiliar with Test Kitchen we recommend checking out the [tutorial](http://kitchen.ci/) along with the `kitchen-vagrant` [driver documentation](https://github.com/test-kitchen/kitchen-vagrant). Test Kitchen is configured to manipulate instances using [Vagrant](https://www.vagrantup.com/) when testing locally, and Docker via [kitchen-dokken](https://github.com/someara/kitchen-dokken/) when testing pull requests on [Travis CI](https://travis-ci.com/).
### Commands
-Kitchen instances are led through a series of states. The instance states, and the actions
-taken to transition into each state, are in order:
-* `destroy`: Delete all information for and terminate one or more instances.
- * This is equivalent to running `vagrant destroy` to stop and delete a Vagrant machine.
-* `create`: Start one or more instances.
- * This is equivalent to running `vagrant up --no-provision` to start a Vagrant instance.
-* `converge`: Use a provisioner to configure one or more instances.
- * By default, Test Kitchen is configured to use the `ChefSolo` provisioner which:
- * Prepares local files for transfer,
- * Installs the latest release of Chef Omnibus,
- * Downloads Chef Client source code from the prescribed GitHub repository and reference,
- * Builds and installs a `chef` gem from the downloaded source,
- * Runs `chef-client`.
-* `setup`: Prepare to run automated tests. Installs `busser` and related gems on one or more instances.
-* `verify`: Run automated tests on one or more instances.
-
-When transitioning between states, actions for any and all intermediate states will performed.
-Executing the `create` then the `verify` commands is equivalent to executing `create`, `converge`,
-`setup`, and `verify` one-by-one and in order. The only exception is `destroy`, which will
-immediately transfer that machine's state to destroyed.
-
-The `test` command takes one or more instances through all the states, in order: `destroy`, `create`,
-`converge`, `setup`, `verify`, `destroy`.
-
-To see a list of available commands, type `bundle exec kitchen help`. To see more information
-about a particular command, type `bundle exec kitchen help <command>`.
+
+Kitchen instances are led through a series of states. The instance states, and the actions taken to transition into each state, are in order:
+
+- `destroy`: Delete all information for and terminate one or more instances.
+ - This is equivalent to running `vagrant destroy` to stop and delete a Vagrant machine.
+- `create`: Start one or more instances.
+ - This is equivalent to running `vagrant up --no-provision` to start a Vagrant instance.
+- `converge`: Use a provisioner to configure one or more instances.
+ - By default, Test Kitchen is configured to use the `ChefSolo` provisioner which:
+ - Prepares local files for transfer,
+ - Installs the latest release of Chef Omnibus,
+ - Downloads Chef Client source code from the prescribed GitHub repository and reference,
+ - Builds and installs a `chef` gem from the downloaded source,
+ - Runs `chef-client`.
+- `setup`: Prepare the instance to run automated tests.
+- `verify`: Run automated tests on one or more instances.
+
+When transitioning between states, actions for any and all intermediate states will performed. Executing the `create` then the `verify` commands is equivalent to executing `create`, `converge`, `setup`, and `verify` one-by-one and in order. The only exception is `destroy`, which will immediately transfer that machine's state to destroyed.
+
+The `test` command takes one or more instances through all the states, in order: `destroy`, `create`, `converge`, `setup`, `verify`, `destroy`.
+
+To see a list of available commands, type `bundle exec kitchen help`. To see more information about a particular command, type `bundle exec kitchen help <command>`.
### Configuring your tests
-Test Kitchen is configured for local testing in the `.kitchen.yml` file which resides in this directory.
-You will need to configure the provisioner before running the tests.
-The provisioner can be configured to pull client source code from a GitHub repository using any
-valid Git reference. You are encouraged to modify any of these settings, but please return them
-to their original values before submitting a pull request for review (unless, of course, your
-changes are enhancements to the default provisioner settings).
+Test Kitchen is configured for local testing in the `kitchen.yml` file which resides in this directory. You will need to configure the provisioner before running the tests.
+
+The provisioner can be configured to pull client source code from a GitHub repository using any valid Git reference. You are encouraged to modify any of these settings, but please return them to their original values before submitting a pull request for review (unless, of course, your changes are enhancements to the default provisioner settings).
-By default, the provisioner is configured to pull your most recent commit to `opscode/chef`. You
-can change this by modifying the `github` and `branch` provisioner options:
-* `github`: Set this to `"<your_username>/<your_chef_repo>"`. The default is `"opscode/chef"`.
-* `branch`: This can be any valid git reference (e.g., branch name, tag, or commit SHA). If omitted, it defaults to `master`.
+By default, the provisioner is configured to pull your most recent commit to `chef/chef`. You can change this by modifying the `github` and `branch` provisioner options:
+
+- `github`: Set this to `"<your_username>/<your_chef_repo>"`. The default is `"chef/chef"`.
+- `branch`: This can be any valid git reference (e.g., branch name, tag, or commit SHA). If omitted, it defaults to `master`.
The branch you choose must be accessible on GitHub. You cannot use a local commit at this time.
### Testing pull requests
-These end-to-end tests are also configured to run with Travis on EC2 instances when you submit a pull request
-to `opscode/chef`. Kitchen is configured to pull chef client source code from the branch it is testing. There
-is no need to modify `.kitchen.travis.yml` unless you are contributing tests.
+
+These end-to-end tests are also configured to run on Travis-CI with docker containers when you submit a pull request to `chef/chef`. Kitchen is configured to pull chef client source code from the branch it is testing. There is no need to modify `kitchen.travis.yml` unless you are contributing tests.
## Contributing
-We would love to fill out our end-to-end testing coverage! If you have cookbooks and tests that you would
-like to see become a part of client testing, we encourage you to submit a pull request with your additions.
-We request that you do not add platforms to `.kitchen.travis.yml`. Please file a request to add a
-platform under [Issues](https://github.com/opscode/chef/issues).
+
+We would love to fill out our end-to-end testing coverage! If you have cookbooks and tests that you would like to see become a part of client testing, we encourage you to submit a pull request with your additions. We request that you do not add platforms to `kitchen.travis.yml`. Please file a request to add a platform under [Issues](https://github.com/chef/chef/issues).
diff --git a/kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/metadata.rb b/kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/metadata.rb
deleted file mode 100644
index 49dbb50869..0000000000
--- a/kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/metadata.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-name "awesome_customers_rhel_wrapper"
-maintainer "The Authors"
-maintainer_email "you@example.com"
-license "Apache-2.0"
-description "Installs/Configures awesome_customers_rhel"
-long_description "Installs/Configures awesome_customers_rhel"
-version "0.1.0"
-
-depends "awesome_customers_rhel"
diff --git a/kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/recipes/default.rb b/kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/recipes/default.rb
deleted file mode 100644
index c58db5fe29..0000000000
--- a/kitchen-tests/cookbooks/awesome_customers_rhel_wrapper/recipes/default.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# Cookbook:: awesome_customers_rhel
-# Recipe:: default
-#
-# Copyright:: 2014-2017, Chef Software, Inc.
-#
-
-include_recipe "awesome_customers_rhel::default"
diff --git a/kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/metadata.rb b/kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/metadata.rb
deleted file mode 100644
index d07a2c2c13..0000000000
--- a/kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/metadata.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-name "awesome_customers_ubuntu_wrapper"
-maintainer "The Authors"
-maintainer_email "you@example.com"
-license "Apache-2.0"
-description "Installs/Configures awesome_customers_ubuntu"
-long_description "Installs/Configures awesome_customers_ubuntu"
-version "0.1.0"
-
-depends "awesome_customers_ubuntu"
diff --git a/kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/recipes/default.rb b/kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/recipes/default.rb
deleted file mode 100644
index f6fd388f16..0000000000
--- a/kitchen-tests/cookbooks/awesome_customers_ubuntu_wrapper/recipes/default.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# Cookbook:: awesome_customers_ubuntu
-# Recipe:: default
-#
-# Copyright:: 2016-2017, Chef Software, Inc.
-#
-
-include_recipe "awesome_customers_ubuntu::default"
diff --git a/kitchen-tests/data_bags/passwords/mysql.json b/kitchen-tests/data_bags/passwords/mysql.json
deleted file mode 100644
index af02a6a858..0000000000
--- a/kitchen-tests/data_bags/passwords/mysql.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "id": "mysql",
- "server_root_password": "ilikerandompasswordstoo",
- "server_repl_password": "itoolikerandompasswords"
-}
diff --git a/kitchen-tests/.kitchen.travis.yml b/kitchen-tests/kitchen.travis.yml
index 7f1cc94667..7daf95195f 100644
--- a/kitchen-tests/.kitchen.travis.yml
+++ b/kitchen-tests/kitchen.travis.yml
@@ -121,11 +121,3 @@ suites:
- name: base
run_list:
- recipe[base::default]
- - name: awesome_customers_ubuntu
- includes: [ubuntu-14.04, ubuntu-16.04, ubuntu-18.04]
- run_list:
- - recipe[awesome_customers_ubuntu_wrapper::default]
- - name: awesome_customers_rhel
- includes: [centos-6, centos-7]
- run_list:
- - recipe[awesome_customers_rhel_wrapper::default]
diff --git a/kitchen-tests/.kitchen.yml b/kitchen-tests/kitchen.yml
index b449265ce7..9133401c7c 100644
--- a/kitchen-tests/.kitchen.yml
+++ b/kitchen-tests/kitchen.yml
@@ -31,16 +31,9 @@ platforms:
- name: opensuse-leap-42
- name: ubuntu-14.04
- name: ubuntu-16.04
+ - name: ubuntu-18.04
suites:
- name: base
run_list:
- recipe[base::default]
- - name: awesome_customers_ubuntu
- includes: [ubuntu-14.04, ubuntu-16.04]
- run_list:
- - recipe[awesome_customers_ubuntu_wrapper::default]
- - name: awesome_customers_rhel
- includes: [centos-6, centos-7]
- run_list:
- - recipe[awesome_customers_rhel_wrapper::default]
diff --git a/omnibus/.gitignore b/omnibus/.gitignore
index 1a2c556f8d..a959250f6e 100644
--- a/omnibus/.gitignore
+++ b/omnibus/.gitignore
@@ -1,6 +1,6 @@
vendor/bundle
pkg/*
-.kitchen.local.yml
+kitchen.local.yml
bin/*
files/chef-server-cookbooks/cache/
files/msi/ChefClient-Config.wxi
diff --git a/omnibus/Gemfile b/omnibus/Gemfile
index 5457f0f40b..1876755d84 100644
--- a/omnibus/Gemfile
+++ b/omnibus/Gemfile
@@ -17,7 +17,7 @@ group :development do
gem "ohai", "~> 13.0"
# Use Test Kitchen with Vagrant for converging the build environment
- gem "test-kitchen", "~> 1.13"
+ gem "test-kitchen", "~> 1.21"
gem "kitchen-vagrant", "~> 1.3.1"
gem "winrm-fs", "~> 1.0"
gem "pry"
diff --git a/omnibus/Gemfile.lock b/omnibus/Gemfile.lock
index a4354503c0..fd190ca04a 100644
--- a/omnibus/Gemfile.lock
+++ b/omnibus/Gemfile.lock
@@ -31,13 +31,13 @@ GEM
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
awesome_print (1.8.0)
- aws-sdk (2.11.67)
- aws-sdk-resources (= 2.11.67)
- aws-sdk-core (2.11.67)
+ aws-sdk (2.11.70)
+ aws-sdk-resources (= 2.11.70)
+ aws-sdk-core (2.11.70)
aws-sigv4 (~> 1.0)
jmespath (~> 1.0)
- aws-sdk-resources (2.11.67)
- aws-sdk-core (= 2.11.67)
+ aws-sdk-resources (2.11.70)
+ aws-sdk-core (= 2.11.70)
aws-sigv4 (1.0.2)
berkshelf (4.3.5)
addressable (~> 2.3, >= 2.3.4)
@@ -103,8 +103,9 @@ GEM
gyoku (1.3.1)
builder (>= 2.1.2)
hashie (3.5.7)
- hitimes (1.2.6)
- hitimes (1.2.6-x86-mingw32)
+ hitimes (1.3.0)
+ hitimes (1.3.0-x64-mingw32)
+ hitimes (1.3.0-x86-mingw32)
httpclient (2.7.2)
iostruct (0.0.4)
ipaddress (0.8.3)
@@ -267,7 +268,7 @@ DEPENDENCIES
pry
pry-byebug
pry-stack_explorer
- test-kitchen (~> 1.13)
+ test-kitchen (~> 1.21)
winrm-fs (~> 1.0)
BUNDLED WITH
diff --git a/omnibus/README.md b/omnibus/README.md
index 5f325aa164..50c28779be 100644
--- a/omnibus/README.md
+++ b/omnibus/README.md
@@ -1,22 +1,21 @@
-Client Tools Omnibus project
-============================
+# Client Tools Omnibus project
+
This project creates full-stack platform-specific packages for the following projects:
-* AngryChef
-* Chef
-* Chef with FIPS enabled
+- AngryChef
+- Chef
+- Chef with FIPS enabled
+
+## Installation
-Installation
-------------
-You must have a sane Ruby 1.9+ environment with Bundler installed. Ensure all
-the required gems are installed:
+You must have a sane Ruby environment with Bundler installed. Ensure all the required gems are installed:
```shell
$ bundle install --without development
```
-Usage
------
+## Usage
+
### Build
You create a platform-specific package using the `build project` command:
@@ -25,23 +24,17 @@ You create a platform-specific package using the `build project` command:
$ bundle exec omnibus build <PROJECT>
```
-The platform/architecture type of the package created will match the platform
-where the `build project` command is invoked. For example, running this command
-on a MacBook Pro will generate a Mac OS X package. After the build completes
-packages will be available in the `pkg/` folder.
+The platform/architecture type of the package created will match the platform where the `build project` command is invoked. For example, running this command on a MacBook Pro will generate a Mac OS X package. After the build completes packages will be available in the `pkg/` folder.
### Clean
-You can clean up all temporary files generated during the build process with
-the `clean` command:
+You can clean up all temporary files generated during the build process with the `clean` command:
```shell
$ bundle exec omnibus clean <PROJECT>
```
-Adding the `--purge` purge option removes __ALL__ files generated during the
-build including the project install directory (`/opt/chef`) and
-the package cache directory (`/var/cache/omnibus/pkg`):
+Adding the `--purge` purge option removes **ALL** files generated during the build including the project install directory (`/opt/chef`) and the package cache directory (`/var/cache/omnibus/pkg`):
```shell
$ bundle exec omnibus clean <PROJECT> --purge
@@ -49,9 +42,7 @@ $ bundle exec omnibus clean <PROJECT> --purge
### Publish
-Omnibus has a built-in mechanism for releasing to a variety of "backends", such
-as Amazon S3 and Artifactory. You must set the proper credentials in your `omnibus.rb`
-config file or specify them via the command line.
+Omnibus has a built-in mechanism for releasing to a variety of "backends", such as Amazon S3 and Artifactory. You must set the proper credentials in your `omnibus.rb` config file or specify them via the command line.
```shell
$ bundle exec omnibus publish path/to/*.deb --backend s3
@@ -59,40 +50,27 @@ $ bundle exec omnibus publish path/to/*.deb --backend s3
### Help
-Full help for the Omnibus command line interface can be accessed with the
-`help` command:
+Full help for the Omnibus command line interface can be accessed with the `help` command:
```shell
$ bundle exec omnibus help
```
-Kitchen-based Build Environment
--------------------------------
-Every Omnibus project ships will a project-specific
-[Berksfile](http://berkshelf.com/) that will allow you to build your omnibus projects on all of the projects listed
-in the `.kitchen.yml`. You can add/remove additional platforms as needed by
-changing the list found in the `.kitchen.yml` `platforms` YAML stanza.
+## Kitchen-based Build Environment
-This build environment is designed to get you up-and-running quickly. However,
-there is nothing that restricts you to building on other platforms. Simply use
-the [omnibus cookbook](https://github.com/chef-cookbooks/omnibus) to setup
-your desired platform and execute the build steps listed above.
+Every Omnibus project ships will a project-specific [Berksfile](https://docs.chef.io/berkshelf.html/) that will allow you to build your omnibus projects on all of the projects listed in the `kitchen.yml`. You can add/remove additional platforms as needed by changing the list found in the `kitchen.yml` `platforms` YAML stanza.
-The default build environment requires Test Kitchen and VirtualBox for local
-development. Test Kitchen also exposes the ability to provision instances using
-various cloud providers like AWS, DigitalOcean, or OpenStack. For more
-information, please see the [Test Kitchen documentation](http://kitchen.ci).
+This build environment is designed to get you up-and-running quickly. However, there is nothing that restricts you to building on other platforms. Simply use the [omnibus cookbook](https://github.com/chef-cookbooks/omnibus) to setup your desired platform and execute the build steps listed above.
-Once you have tweaked your `.kitchen.yml` (or `.kitchen.local.yml`) to your
-liking, you can bring up an individual build environment using the `kitchen`
-command.
+The default build environment requires Test Kitchen and VirtualBox for local development. Test Kitchen also exposes the ability to provision instances using various cloud providers like AWS, DigitalOcean, or OpenStack. For more information, please see the [Test Kitchen documentation](http://kitchen.ci).
+
+Once you have tweaked your `kitchen.yml` (or `kitchen.local.yml`) to your liking, you can bring up an individual build environment using the `kitchen` command.
```shell
$ bundle exec kitchen converge chef-ubuntu-1404
```
-Then login to the instance and build the project as described in the Usage
-section:
+Then login to the instance and build the project as described in the Usage section:
```shell
$ bundle exec kitchen login <PROJECT>-ubuntu-1204
@@ -101,6 +79,7 @@ $ bundle exec kitchen login <PROJECT>-ubuntu-1204
[vagrant@ubuntu...] $ ...
[vagrant@ubuntu...] $ bundle exec omnibus build <PROJECT> -l internal
```
+
```shell
$ kitchen login chef-ubuntu-1404
[vagrant@ubuntu...] $ source load-omnibus-toolchain.sh
@@ -110,10 +89,7 @@ $ kitchen login chef-ubuntu-1404
[vagrant@ubuntu...] $ bundle exec omnibus build chef -l internal
```
-You can also login to Windows instances but will have to manually call the
-`load-omnibus-toolchain.bat` script which initializes the build environment.
-Please note the mounted code directory is also at `C:\home\vagrant\chef\omnibus`
-as opposed to `C:\Users\vagrant\chef\omnibus`.
+You can also login to Windows instances but will have to manually call the `load-omnibus-toolchain.bat` script which initializes the build environment. Please note the mounted code directory is also at `C:\home\vagrant\chef\omnibus` as opposed to `C:\Users\vagrant\chef\omnibus`.
```shell
$ bundle exec kitchen login <PROJECT>-windows-81-professional
@@ -130,13 +106,12 @@ C:\vagrant\code\chef\omnibus>bundle install --without development
C:\vagrant\code\chef\omnibus>bundle exec omnibus build chef -l internal
```
-For a complete list of all commands and platforms, run `kitchen list` or
-`kitchen help`.
+For a complete list of all commands and platforms, run `kitchen list` or `kitchen help`.
+
+## License
-License
--------
```text
-Copyright 2012-2016, Chef Software, Inc.
+Copyright 2012-2018, 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.
diff --git a/omnibus/.kitchen.vmware.yml b/omnibus/kitchen.vmware.yml
index 69f001ef97..69f001ef97 100644
--- a/omnibus/.kitchen.vmware.yml
+++ b/omnibus/kitchen.vmware.yml
diff --git a/omnibus/.kitchen.yml b/omnibus/kitchen.yml
index 56b11de3c3..2e889a789a 100644
--- a/omnibus/.kitchen.yml
+++ b/omnibus/kitchen.yml
@@ -33,25 +33,21 @@ provisioner:
chef_omnibus_root: /opt/angrychef
platforms:
- - name: centos-5.11
+ - name: centos-6
run_list: yum-epel::default
- - name: centos-6.7
+ - name: centos-7
run_list: yum-epel::default
- - name: centos-7.2
- run_list: yum-epel::default
- - name: debian-8.2
+ - name: debian-8
run_list: apt::default
- - name: freebsd-9.3
- run_list:
- - freebsd::portsnap
- - freebsd::pkgng
- - name: freebsd-10.2
+ - name: freebsd-10
+ run_list: freebsd::portsnap
+ - name: freebsd-11
run_list: freebsd::portsnap
- - name: ubuntu-10.04
+ - name: ubuntu-14.04
run_list: apt::default
- - name: ubuntu-12.04
+ - name: ubuntu-16.04
run_list: apt::default
- - name: ubuntu-14.04
+ - name: ubuntu-18.04
run_list: apt::default
# The following (private) boxes are shared via Atlas and are only
# available to users working for Chef. Sorry, it's about software licensing.
@@ -64,10 +60,10 @@ platforms:
# the private boxes.
#
# The Mac OS X boxes are VMware only also. You can enable VMware Fusion
- # by activating the `.kitchen.vmware.yml` file with the `KITCHEN_LOCAL_YAML`
+ # by activating the `kitchen.vmware.yml` file with the `KITCHEN_LOCAL_YAML`
# environment variable:
#
- # KITCHEN_LOCAL_YAML=.kitchen.vmware.yml kitchen converge chefdk-macosx-109
+ # KITCHEN_LOCAL_YAML=kitchen.vmware.yml kitchen converge chefdk-macosx-109
#
# OSX