1153.2.1
by Martin Packman
Sample script for generating image streams for rackspace |
1 |
#!/bin/bash
|
2 |
set -eu
|
|
3 |
export JUJU_HOME=~/cloud-city |
|
4 |
source $JUJU_HOME/rackspacerc |
|
5 |
set -x
|
|
6 |
||
7 |
BUCKET_NAME=${1:-juju-ci-image-streams} |
|
8 |
STREAMS_DIR=`mktemp -d -t juju-ci-image-metadata.XXXXXX` |
|
9 |
CDN_ENDPOINT=`keystone endpoint-get --service "rax:object-cdn"|grep publicURL|cut -d "|" -f 3` |
|
10 |
||
1402.1.1
by Martin Packman
Fix url printing and tweak order of operations |
11 |
IMAGE_ID=`nova image-list|grep "14\.04.*PVHVM"|cut -d "|" -f 2` |
12 |
||
1153.2.1
by Martin Packman
Sample script for generating image streams for rackspace |
13 |
# Create simplestreams for trusty image
|
14 |
juju metadata generate-image -d $STREAMS_DIR -i $IMAGE_ID -s trusty \ |
|
15 |
-r $OS_REGION_NAME -u $OS_AUTH_URL |
|
16 |
||
17 |
# Allow read access to bucket without token
|
|
18 |
swift post -r ".r:*" $BUCKET_NAME |
|
19 |
# Enable CDN replication for bucket via rax:object-cdn service
|
|
20 |
# <https://developer.rackspace.com/docs/cloud-files/getting-started/>
|
|
21 |
swift post --os-storage-url $CDN_ENDPOINT --header "X-CDN-Enabled: True" $BUCKET_NAME |
|
22 |
||
23 |
# Upload images directory to bucket
|
|
24 |
(cd $STREAMS_DIR && swift upload $BUCKET_NAME images) |
|
25 |
||
1402.1.1
by Martin Packman
Fix url printing and tweak order of operations |
26 |
CDN_HEADER=`swift stat --os-storage-url $CDN_ENDPOINT $BUCKET_NAME|grep -i X-Cdn-Uri` |
27 |
echo ${CDN_HEADER#*: }/images |