Feature/filestorage securityservices create (#132)
* sfs: Add support for security services Create
* sfs: Add acceptance tests for security service Create
* sfs: Fix comments
diff --git a/acceptance/openstack/sharedfilesystems/v2/securityservices.go b/acceptance/openstack/sharedfilesystems/v2/securityservices.go
new file mode 100644
index 0000000..e9b5549
--- /dev/null
+++ b/acceptance/openstack/sharedfilesystems/v2/securityservices.go
@@ -0,0 +1,49 @@
+package v2
+
+import (
+ "testing"
+
+ "github.com/gophercloud/gophercloud"
+ "github.com/gophercloud/gophercloud/acceptance/tools"
+ "github.com/gophercloud/gophercloud/openstack/sharedfilesystems/v2/securityservices"
+)
+
+// CreateSecurityService will create a security service with a random name. An
+// error will be returned if the security service was unable to be created.
+func CreateSecurityService(t *testing.T, client *gophercloud.ServiceClient) (*securityservices.SecurityService, error) {
+ if testing.Short() {
+ t.Skip("Skipping test that requires share network creation in short mode.")
+ }
+
+ securityServiceName := tools.RandomString("ACPTTEST", 16)
+ t.Logf("Attempting to create security service: %s", securityServiceName)
+
+ createOpts := securityservices.CreateOpts{
+ Name: securityServiceName,
+ Type: "kerberos",
+ }
+
+ securityService, err := securityservices.Create(client, createOpts).Extract()
+ if err != nil {
+ return securityService, err
+ }
+
+ return securityService, nil
+}
+
+// PrintSecurityService will print a security service and all of its attributes.
+func PrintSecurityService(t *testing.T, securityService *securityservices.SecurityService) {
+ t.Logf("ID: %s", securityService.ID)
+ t.Logf("Project ID: %s", securityService.ProjectID)
+ t.Logf("Domain: %s", securityService.Domain)
+ t.Logf("Status: %s", securityService.Status)
+ t.Logf("Type: %s", securityService.Type)
+ t.Logf("Name: %s", securityService.Name)
+ t.Logf("Description: %s", securityService.Description)
+ t.Logf("DNS IP: %s", securityService.DNSIP)
+ t.Logf("User: %s", securityService.User)
+ t.Logf("Password: %s", securityService.Password)
+ t.Logf("Server: %s", securityService.Server)
+ t.Logf("Created at: %v", securityService.CreatedAt)
+ t.Logf("Updated at: %v", securityService.UpdatedAt)
+}