Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

RSS

ucs-pxe (1) Versions 0.0.1

Installs/Configures a PXE Appliance used for bare metal provisioning for Cisco UCS

Policyfile
Berkshelf
Knife
cookbook 'ucs-pxe', '~> 0.0.1', :supermarket
cookbook 'ucs-pxe', '~> 0.0.1'
knife supermarket install ucs-pxe
knife supermarket download ucs-pxe
README
Dependencies
Quality 17%

Description

A Chef cookbook (beta) that builds a PXE appliance for Cisco UCS bare-metal deployment. This cookbook acts as the stage 2 phase for DC Automation.
As of now, the recipes are tied specifically towards the workflow defined by ucs or ucs-solo cookbooks.

Requirements

The PXE appliance is currently tested on Ubuntu 12.04.1 LTS. Other platform OSs as well as target OS's will be supported in the future.

Supported Targest OS Environments:

Ubuntu 12.04.1 LTS

Attributes

#UCS
default[:pxe][:ucs][:ip] = '192.168.73.131'
default[:pxe][:ucs][:username] = 'admin'
default[:pxe][:ucs][:password] = 'admin'


#DHCP
default[:pxe][:dhcpd][:dns_server] = "192.168.73.250"
default[:pxe][:dhcpd][:next_server] = "192.168.73.136"
default[:pxe][:dhcpd][:subnet] = "192.168.73.0"
default[:pxe][:dhcpd][:subnet_mask] = "255.255.255.0"
default[:pxe][:dhcpd][:broadcast] = "192.168.73.255"
default[:pxe][:dhcpd][:gateway] = "192.168.73.1"
default[:pxe][:dhcpd][:host_range] = "192.168.73.150 192.168.73.200"
default[:pxe][:dhcpd][:interfaces] = ['eth0']
default[:pxe][:dhcpd][:filename] = "pxelinux.0"
default[:pxe][:dhcpd][:databag] = "dhcpd"


#OS 
default[:pxe][:preseed][:username] = "chef"
default[:pxe][:preseed][:password] = "chef101"


#Ubuntu
default[:pxe][:os][:release] = "ubuntu-12.04.1"
default[:pxe][:linux][:release][:dist] = "ubuntu-12.04.1"
default[:pxe][:linux][:release][:path] = "http://mirror.anl.gov/pub/ubuntu-iso/CDs/12.04/ubuntu-12.04.1-server-amd64.iso"

Usage

Follows a convention. include_recipe considered harmful and therefore we do not use it as part of our philosophy.
We prefer more explicit ways to do things forcing us to declare all dependencies when orchestrating.

The run_list order using knife:

1. Install packages

knife node run_list add  recipe[ucs-pxe::default]
knife ssh name: -x  -P  "sudo chef-client"

2. Setup the databags needed for generating the custom dhcpd.conf

knife node run_list remove  recipe[ucs-pxe::default]
knife node run_list add  recipe[ucs-pxe::databag]
knife ssh name: -x  -P  "sudo chef-client"

3. Setup dhcpd.conf based on mac addresses of all assigned service profiles

knife node run_list remove  recipe[ucs-pxe::databag]
knife node run_list add  recipe[ucs-pxe::dhcpd]
knife ssh name: -x  -P  "sudo chef-client"

4. Build target OS environment to be deployed.

knife node run_list remove  recipe[ucs-pxe::dhcpd]
knife node run_list add  recipe[ucs-pxe::ubuntu]
knife ssh name: -x  -P  "sudo chef-client"

5. Reboot Service Profile(s). The install should begin.

6. The system halts after installation is complete.

ToDo

  1. Reciple for toggling boot policy to boot from disk to move towards Stage 3 - service provisioning.

License

Author:: Velankani Engineering Team eng@velankani.net

Copyright:: Copyright (c) 2011 Murali Raju, murali.raju@appliv.com
Copyright:: Copyright (c) 2012 Velankani Information Systems, Inc.
License:: Apache License, Version 2.0

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

There are no cookbooks that are contingent upon this one.

Collaborator Number Metric
            

0.0.1 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

0.0.1 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

0.0.1 failed this metric

FC034: Unused template variables: ucs-pxe/templates/default/pxelinux.debian.erb:1
FC034: Unused template variables: ucs-pxe/templates/default/pxelinux.ubuntu.erb:1
FC043: Prefer new notification syntax: ucs-pxe/recipes/debian.rb:75
FC043: Prefer new notification syntax: ucs-pxe/recipes/dhcpd.rb:25
FC043: Prefer new notification syntax: ucs-pxe/recipes/dhcpd.rb:33
FC043: Prefer new notification syntax: ucs-pxe/recipes/ubuntu.rb:95
FC064: Ensure issues_url is set in metadata: ucs-pxe/metadata.rb:1
FC065: Ensure source_url is set in metadata: ucs-pxe/metadata.rb:1
FC066: Ensure chef_version is set in metadata: ucs-pxe/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: ucs-pxe/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

No Binaries Metric
            

0.0.1 passed this metric

Testing File Metric
            

0.0.1 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

0.0.1 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number