summaryrefslogtreecommitdiff
path: root/extensions/swift-build-rings.yml
diff options
context:
space:
mode:
authorAdam Coldrick <adam.coldrick@codethink.co.uk>2015-06-02 14:01:55 +0000
committerAdam Coldrick <adam.coldrick@codethink.co.uk>2015-06-02 14:01:55 +0000
commitc6abc426b5857f9b1edd9c72e3094c1e2df8a7bf (patch)
treeeff61e6fe9bb3adcf254c4e86eebca7190c65cce /extensions/swift-build-rings.yml
parent4f43fdd08770c113f7443fecbda43d4316091d4b (diff)
parent02faf51e91a8c55adfbb6d953bca354ab99bf261 (diff)
downloaddefinitions-c6abc426b5857f9b1edd9c72e3094c1e2df8a7bf.tar.gz
Merge branch 'baserock/adamcoldrick/all-exts-in-definitions-v2'
Reviewed-by: Richard Maw <richard.maw@codethink.co.uk>
Diffstat (limited to 'extensions/swift-build-rings.yml')
-rw-r--r--extensions/swift-build-rings.yml34
1 files changed, 34 insertions, 0 deletions
diff --git a/extensions/swift-build-rings.yml b/extensions/swift-build-rings.yml
new file mode 100644
index 00000000..1ffe9c37
--- /dev/null
+++ b/extensions/swift-build-rings.yml
@@ -0,0 +1,34 @@
+---
+- hosts: localhost
+ vars:
+ - rings:
+ - { name: account, port: 6002 }
+ - { name: container, port: 6001 }
+ - { name: object, port: 6000 }
+ remote_user: root
+ tasks:
+ - file: path={{ ansible_env.ROOT }}/etc/swift owner=root group=root state=directory
+
+ - name: Create ring
+ shell: swift-ring-builder {{ item.name }}.builder create {{ ansible_env.SWIFT_PART_POWER }}
+ {{ ansible_env.SWIFT_REPLICAS }} {{ ansible_env.SWIFT_MIN_PART_HOURS }}
+ with_items: rings
+
+ - name: Add each storage node to the ring
+ shell: swift-ring-builder {{ item[0].name }}.builder
+ add r1z1-{{ item[1].ip }}:{{ item[0].port }}/{{ item[1].device }} {{ item[1].weight }}
+ with_nested:
+ - rings
+ - ansible_env.SWIFT_STORAGE_DEVICES
+
+ - name: Rebalance the ring
+ shell: swift-ring-builder {{ item.name }}.builder rebalance {{ ansible_env.SWIFT_REBALANCE_SEED }}
+ with_items: rings
+
+ - name: Copy ring configuration files into place
+ copy: src={{ item.name }}.ring.gz dest={{ ansible_env.ROOT }}/etc/swift
+ with_items: rings
+
+ - name: Copy ring builder files into place
+ copy: src={{ item.name }}.builder dest={{ ansible_env.ROOT }}/etc/swift
+ with_items: rings