Skip to content

gmmurugan/devstack-cookbook

 
 

Repository files navigation

devstack cookbook

A cookbook to install devstack

Requirements

Cookbooks

Operating Systems

  • Centos 7
  • Ubuntu 14.04

Attributes

devstack::default

Key Type Description Default
['devstack']['host-ip'] String The host/ip to bind the stack to 198.101.10.10
['devstack']['database-password'] String The password for the DevStack database ostackdemo
['devstack']['rabbit-password'] String The password for tde rabbit service ostackdemo
['devstack']['service-token'] String The token for the DevStack service user token
['devstack']['service-password'] String The password for the DevStack service user ostackdemo
['devstack']['admin-password'] String The password for the DevStack admin user ostackdemo
['devstack']['dest'] String The directory to install DevStack /opt/stack
['devstack']['pip-timeout'] Integer The default time out for pip 1000

Usage

Generic

Just include devstack in your node's run_list:

  {
    "name":"my_node",
    "run_list": [
      "recipe[devstack]"
    ]
  }

Local Testing

There is also test-kitchen support for this cookbook. You can run:

$ chef exec kitchen verify

And it'll build it via vagrant on your local machine. There are serverspec tests also attached to verify devstack is built correctly. You'll notice that it stops outputting at Recipe: devstack::stack, it's running the stack.sh behind the scenes, it averages 30ish mins on my MacBook Pro.

You can login to the devstack instance via:

$ chef exec kitchen login <version you converged>
vagrant@<machine_you_converged> $ cd /opt/stack/devstack/
vagrant@<machine_you_converged>:/opt/stack/devstack/ $ source openrc
vagrant@<machine_you_converged>:/opt/stack/devstack/ $ nova list
vagrant@<machine_you_converged>:/opt/stack/devstack/ $ nova boot test --image cirros-0.3.4-x86_64-uec --flavor 1

If you haven't changed any variables and usernames/passwords, you can go to http://localhost:8080 and use demo/devstack and see the dashboard.

TODO

NOTE: Not in order of priority.

  • travis testing
  • Rakefile and rake commands
  • chefspec for the different resources
  • more serverspec tests
  • neutron support
  • multi-node lab support

Contributing

  1. Fork the repository on Github
  2. Create a named feature branch (like add_component_x)
  3. Write your change
  4. Write tests for your change (if applicable)
  5. Run the tests, ensuring they all pass
  6. Submit a Pull Request using Github

License and Authors

Apache 2

Author: Cameron Lopez Author: JJ Asghar ([email protected])

Packages

No packages published

Languages

  • Ruby 89.1%
  • HTML 10.9%