summaryrefslogtreecommitdiff
path: root/omnibus/.kitchen.yml
blob: 56b11de3c34c6cf881e6c0f4768fa19ff0220f86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#
# NOTE: this runs the omnibus cookbook, but does not actually run Omnibus. Use
# 'kichen converge' to setup the virtual machine and then `kitchen login` to
# SSH into the machine and run Omnibus.
#

driver:
  name: vagrant
  forward_agent: yes
  customize:
    cpus: 4
    memory: 4096
  synced_folders:
    - ['../..', '/vagrant/code']
    - ['../../omnibus', '/home/vagrant/omnibus']
    - ['../../omnibus-software', '/home/vagrant/omnibus-software']

provisioner:
  name: chef_zero
  # Always install the latest version of Chef.
  # This is not the version of chef that we're building - this is the version
  # of chef that omnibus needs to build chef/chef.
  require_chef_omnibus: true
  attributes:
    vagrant:
      this_key_exists_so_we_have_a_vagrant_key: true
    omnibus:
      build_user: vagrant
      build_user_group: vagrant
      build_user_password: vagrant
  product_name: angrychef
  product_version: latest
  chef_omnibus_root: /opt/angrychef

platforms:
  - name: centos-5.11
    run_list: yum-epel::default
  - name: centos-6.7
    run_list: yum-epel::default
  - name: centos-7.2
    run_list: yum-epel::default
  - name: debian-8.2
    run_list: apt::default
  - name: freebsd-9.3
    run_list:
      - freebsd::portsnap
      - freebsd::pkgng
  - name: freebsd-10.2
    run_list: freebsd::portsnap
  - name: ubuntu-10.04
    run_list: apt::default
  - name: ubuntu-12.04
    run_list: apt::default
  - name: ubuntu-14.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.
  #
  # Chef-internal users, you will need to:
  # 1.  Create an Atlas account:  https://atlas.hashicorp.com/
  # 2.  Ping #eng-services-support with your Atlas account name
  #     to be added to the relevant team in Atlas,
  # 3.  Do `vagrant login` with your Atlas creds so that you can download
  #     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`
  # environment variable:
  #
  #   KITCHEN_LOCAL_YAML=.kitchen.vmware.yml kitchen converge chefdk-macosx-109
  #

  # OSX
  <% %w(
    10.9
    10.10
    10.11
  ).each do |mac_version| %>
  - name: macosx-<%= mac_version %>
    driver:
      box: chef/macosx-<%= mac_version %> # private
      synced_folders:
      - ['..', '/Users/vagrant/chef']
      - ['../../omnibus', '/Users/vagrant/omnibus']
      - ['../../omnibus-software', '/Users/vagrant/omnibus-software']
  <% end %>

  <% %w(
    10-enterprise
    server-2012r2-standard
  ).each do |win_version| %>
  # Windows 64-bit
  - name: windows-<%= win_version %>
    driver:
      box: chef/windows-<%= win_version %> # private
      synced_folders:
      # We have to mount this repos enclosing folder as the Omnibus build
      # gets cranky if the mounted Chef source folder is a symlink. This
      # mounts at `C:\vagrant\code` and the Chef source folder is available
      # at `C:\vagrant\code\chef`
      - ['../..', '/vagrant/code']
    provisioner:
      attributes:
        omnibus:
          build_user:          vagrant
          build_user_group:    Administrators
          build_user_password: vagrant
      chef_omnibus_root: /opscode/angrychef

  # Windows 32-bit
  # By adding an `i386` to the name the Omnibus cookbook's `load-omnibus-toolchain.bat`
  # will load the 32-bit version of the MinGW toolchain.
  - name: windows-<%= win_version %>-i386
    driver:
      box: chef/windows-<%= win_version %> # private
      synced_folders:
      - ['../..', '/vagrant/code']
    provisioner:
      attributes:
        omnibus:
          build_user:          vagrant
          build_user_group:    Administrators
          build_user_password: vagrant
      chef_omnibus_root: /opscode/angrychef
  <% end %>

suites:
  # - name: angrychef
  #   attributes:
  #     omnibus:
  #       <<: *attribute_defaults
  #       install_dir: /opt/angrychef
  #   run_list:
  #     - omnibus::default
  - name: chef
    attributes:
      omnibus:
        install_dir: /opt/chef
    run_list:
      - omnibus::default