- name: Set S3 endpoint ini_file: path: /etc/swift/test.conf section: func_test option: s3_storage_url value: http://localhost:8080 become: true - name: Create primary S3 user shell: > openstack --os-auth-url http://localhost/identity --os-project-domain-id default --os-project-name admin --os-user-domain-id default --os-username admin --os-password secretadmin credential create --type ec2 --project swiftprojecttest1 swiftusertest1 '{"access": "s3-user1", "secret": "s3-secret1"}' - name: Add primary S3 user to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: s3_access_key value: s3-user1 become: true - name: Add primary S3 user secret to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: s3_secret_key value: s3-secret1 become: true - name: Clear secondary S3 user from test.conf ini_file: path: /etc/swift/test.conf section: func_test option: s3_access_key2 value: "" become: true - name: Create restricted S3 user shell: > openstack --os-auth-url http://localhost/identity --os-project-domain-id default --os-project-name admin --os-user-domain-id default --os-username admin --os-password secretadmin credential create --type ec2 --project swiftprojecttest1 swiftusertest3 '{"access": "s3-user3", "secret": "s3-secret3"}' - name: Add restricted S3 user to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: s3_access_key3 value: s3-user3 become: true - name: Add restricted S3 user secret to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: s3_secret_key3 value: s3-secret3 become: true - name: Create service role shell: > openstack --os-auth-url http://localhost/identity --os-project-domain-id default --os-project-name admin --os-user-domain-id default --os-username admin --os-password secretadmin role create swift_service - name: Create service project shell: > openstack --os-auth-url http://localhost/identity --os-project-domain-id default --os-project-name admin --os-user-domain-id default --os-username admin --os-password secretadmin project create swiftprojecttest5 - name: Create service user shell: > openstack --os-auth-url http://localhost/identity --os-project-domain-id default --os-project-name admin --os-user-domain-id default --os-username admin --os-password secretadmin user create --project swiftprojecttest5 swiftusertest5 --password testing5 - name: Assign service role shell: > openstack --os-auth-url http://localhost/identity --os-project-domain-id default --os-project-name admin --os-user-domain-id default --os-username admin --os-password secretadmin role add --project swiftprojecttest5 --user swiftusertest5 swift_service - name: Add service_roles to proxy-server.conf ini_file: path: /etc/swift/proxy-server.conf section: filter:keystoneauth option: SERVICE_KEY_service_roles value: swift_service become: true - name: Update reseller prefixes in proxy-server.conf ini_file: path: /etc/swift/proxy-server.conf section: filter:keystoneauth option: reseller_prefix value: AUTH, SERVICE_KEY become: true - name: Add service account to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: account5 value: swiftprojecttest5 become: true - name: Add service user to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: username5 value: swiftusertest5 become: true - name: Add service password to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: password5 value: testing5 become: true - name: Add service prefix to test.conf ini_file: path: /etc/swift/test.conf section: func_test option: service_prefix value: SERVICE_KEY become: true