Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jjasghar/devstack-cookbook
A chef wrapper to install devstack
https://github.com/jjasghar/devstack-cookbook
Last synced: 26 days ago
JSON representation
A chef wrapper to install devstack
- Host: GitHub
- URL: https://github.com/jjasghar/devstack-cookbook
- Owner: jjasghar
- Created: 2015-02-03T00:30:27.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2016-03-28T23:41:13.000Z (over 8 years ago)
- Last Synced: 2024-04-14T15:07:59.028Z (7 months ago)
- Language: Ruby
- Homepage: https://supermarket.chef.io/cookbooks/devstack
- Size: 33.2 KB
- Stars: 2
- Watchers: 4
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# devstack cookbook
A cookbook to install [devstack](http://docs.openstack.org/developer/devstack/)
## Requirements
### Cookbooks
- [apt](https://supermarket.chef.io/cookbooks/apt)
- [git](https://supermarket.chef.io/cookbooks/git)
- [sudo](https://supermarket.chef.io/cookbooks/sudo)### 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`:
```json
{
"name":"my_node",
"run_list": [
"recipe[devstack]"
]
}
```### Local Testing
There is also [test-kitchen](https://github.com/test-kitchen/test-kitchen) support for this cookbook. You can run:
```bash
$ chef exec kitchen verify
```And it'll build it via vagrant on your local machine. There are [serverspec](http://serverspec.org) 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:
```bash
$ chef exec kitchen login
vagrant@ $ cd /opt/stack/devstack/
vagrant@:/opt/stack/devstack/ $ source openrc
vagrant@:/opt/stack/devstack/ $ nova list
vagrant@:/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](http://docs.openstack.org/developer/devstack/guides/neutron.html) support
- [multi-node lab](http://docs.openstack.org/developer/devstack/guides/multinode-lab.html) 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])