Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 1 | #!/usr/bin/env bash |
| 2 | |
| 3 | # Sample ``local.sh`` for user-configurable tasks to run automatically |
Joe Gordon | 4640026 | 2013-06-30 04:32:27 -0700 | [diff] [blame] | 4 | # at the successful conclusion of ``stack.sh``. |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 5 | |
| 6 | # NOTE: Copy this file to the root ``devstack`` directory for it to |
| 7 | # work properly. |
| 8 | |
| 9 | # This is a collection of some of the things we have found to be useful to run |
Dean Troyer | 5547baa | 2012-08-31 10:55:36 -0500 | [diff] [blame] | 10 | # after ``stack.sh`` to tweak the OpenStack configuration that DevStack produces. |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 11 | # These should be considered as samples and are unsupported DevStack code. |
| 12 | |
Dean Troyer | 5547baa | 2012-08-31 10:55:36 -0500 | [diff] [blame] | 13 | |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 14 | # Keep track of the devstack directory |
| 15 | TOP_DIR=$(cd $(dirname "$0") && pwd) |
| 16 | |
Dean Troyer | 05530ca | 2012-07-06 15:09:10 -0500 | [diff] [blame] | 17 | # Import common functions |
| 18 | source $TOP_DIR/functions |
| 19 | |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 20 | # Use openrc + stackrc + localrc for settings |
| 21 | source $TOP_DIR/stackrc |
| 22 | |
| 23 | # Destination path for installation ``DEST`` |
| 24 | DEST=${DEST:-/opt/stack} |
| 25 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 26 | if is_service_enabled nova; then |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 27 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 28 | # Import ssh keys |
| 29 | # --------------- |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 30 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 31 | # Import keys from the current user into the default OpenStack user (usually |
| 32 | # ``demo``) |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 33 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 34 | # Get OpenStack user auth |
| 35 | source $TOP_DIR/openrc |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 36 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 37 | # Add first keypair found in localhost:$HOME/.ssh |
| 38 | for i in $HOME/.ssh/id_rsa.pub $HOME/.ssh/id_dsa.pub; do |
| 39 | if [[ -r $i ]]; then |
| 40 | nova keypair-add --pub_key=$i `hostname` |
| 41 | break |
| 42 | fi |
| 43 | done |
| 44 | |
| 45 | |
| 46 | # Create A Flavor |
| 47 | # --------------- |
| 48 | |
| 49 | # Get OpenStack admin auth |
| 50 | source $TOP_DIR/openrc admin admin |
| 51 | |
| 52 | # Name of new flavor |
| 53 | # set in ``localrc`` with ``DEFAULT_INSTANCE_TYPE=m1.micro`` |
| 54 | MI_NAME=m1.micro |
| 55 | |
| 56 | # Create micro flavor if not present |
| 57 | if [[ -z $(nova flavor-list | grep $MI_NAME) ]]; then |
| 58 | nova flavor-create $MI_NAME 6 128 0 1 |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 59 | fi |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 60 | |
| 61 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 62 | # Other Uses |
| 63 | # ---------- |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 64 | |
Dean Troyer | 38e38fb | 2014-01-10 12:05:51 -0600 | [diff] [blame] | 65 | # Add tcp/22 and icmp to default security group |
| 66 | nova secgroup-add-rule default tcp 22 22 0.0.0.0/0 |
| 67 | nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0 |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 68 | |
Dean Troyer | f5633dd | 2012-03-28 11:21:40 -0500 | [diff] [blame] | 69 | fi |