�
�Udac @` s d d l m Z m Z m Z e Z i d d 6d g d 6d d 6Z d Z d Z d
Z e
Z y d d l m
Z
m Z Wn e k
r� e Z n Xd d l m Z d d
l m Z m Z d Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z e d k r
e � n d S( i ( t absolute_importt divisiont print_functions 1.1t metadata_versiont previewt statust communityt supported_bysa
---
module: purefb_bucket
version_added: "2.8"
short_description: Manage Object Store Buckets on a Pure Storage FlashBlade.
description:
- This module managess object store (s3) buckets on Pure Storage FlashBlade.
author: Pure Storage Ansible Team (@sdodsley) <[email protected]>
options:
name:
description:
- Bucket Name.
required: true
type: str
account:
description:
- Object Store Account for Bucket.
required: true
type: str
state:
description:
- Create, delete or modifies a bucket.
required: false
default: present
type: str
choices: [ "present", "absent" ]
eradicate:
description:
- Define whether to eradicate the bucket on delete or leave in trash.
required: false
type: bool
default: false
extends_documentation_fragment:
- purestorage.fb
s
- name: Create new bucket named foo in account bar
purefb_bucket:
name: foo
account: bar
fb_url: 10.10.10.2
api_token: T-55a68eb5-c785-4720-a2ca-8b03903bf641
- name: Delete bucket named foo in account bar
purefb_bucket:
name: foo
account: bar
state: absent
fb_url: 10.10.10.2
api_token: T-55a68eb5-c785-4720-a2ca-8b03903bf641
- name: Recover deleted bucket named foo in account bar
purefb_bucket:
name: foo
account: bar
state: present
fb_url: 10.10.10.2
api_token: T-55a68eb5-c785-4720-a2ca-8b03903bf641
- name: Eradicate bucket named foo in account bar
purefb_bucket:
name: foo
account: bar
state: absent
eradicate: true
fb_url: 10.10.10.2
api_token: T-55a68eb5-c785-4720-a2ca-8b03903bf641
t
( t Buckett Reference( t
AnsibleModule( t get_bladet purefb_argument_specs 1.5c C` si d } | j j � } xM t d t | j � � D]3 } | j | j | j d k r. | j | } q. q. W| S( s# Return Object Store Account or Nonei t accountN( t Nonet object_store_accountst list_object_store_accountst ranget lent itemst namet params( t modulet bladet s3acct acctst acct( ( sU /usr/lib/python2.7/site-packages/ansible/modules/storage/purestorage/purefb_bucket.pyt get_s3accf s c C` si d } | j j � } xM t d t | j � � D]3 } | j | j | j d k r. | j | } q. q. W| S( s Return Bucket or Nonei R N( R t bucketst list_bucketsR R R R R ( R R t s3bucketR t bucket( ( sU /usr/lib/python2.7/site-packages/ansible/modules/storage/purestorage/purefb_bucket.pyt
get_bucketp s c C` s� t } yO t � } t d | j d � | _ | j j d | j d g d | � t } Wn1 t k
r� | j d d j
| j d � � n X| j d | � d S( s
Create bucketR R t namest msgs( Object Store Bucket {0}: Creation failedt changedN( t FalseR R
R R R t create_bucketst Truet Exceptiont fail_jsont formatt exit_json( R R R$ t attr( ( sU /usr/lib/python2.7/site-packages/ansible/modules/storage/purestorage/purefb_bucket.pyt
create_bucketz s #
$c C` s� t } y� | j j d | j d g d t d t � � t } | j d r� y'