File: doc.go

package info (click to toggle)
golang-github-gophercloud-gophercloud 1.4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 11,416 kB
  • sloc: sh: 99; makefile: 21
file content (86 lines) | stat: -rw-r--r-- 1,846 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/*
Package trusts enables management of OpenStack Identity Trusts.

Example to Create a Token with Username, Password, and Trust ID

	var trustToken struct {
		tokens.Token
		trusts.TokenExt
	}

	authOptions := tokens.AuthOptions{
		UserID:   "username",
		Password: "password",
	}

	createOpts := trusts.AuthOptsExt{
		AuthOptionsBuilder: authOptions,
		TrustID:            "de0945a",
	}

	err := tokens.Create(identityClient, createOpts).ExtractInto(&trustToken)
	if err != nil {
		panic(err)
	}

Example to Create a Trust

	expiresAt := time.Date(2019, 12, 1, 14, 0, 0, 999999999, time.UTC)
	createOpts := trusts.CreateOpts{
	    ExpiresAt:         &expiresAt,
	    Impersonation:     true,
	    AllowRedelegation: true,
	    ProjectID:         "9b71012f5a4a4aef9193f1995fe159b2",
	    Roles: []trusts.Role{
	        {
	            Name: "member",
	        },
	    },
	    TrusteeUserID: "ecb37e88cc86431c99d0332208cb6fbf",
	    TrustorUserID: "959ed913a32c4ec88c041c98e61cbbc3",
	}

	trust, err := trusts.Create(identityClient, createOpts).Extract()
	if err != nil {
	    panic(err)
	}

	fmt.Printf("Trust: %+v\n", trust)

Example to Delete a Trust

	trustID := "3422b7c113894f5d90665e1a79655e23"
	err := trusts.Delete(identityClient, trustID).ExtractErr()
	if err != nil {
	    panic(err)
	}

Example to Get a Trust

	trustID := "3422b7c113894f5d90665e1a79655e23"
	err := trusts.Get(identityClient, trustID).ExtractErr()
	if err != nil {
	    panic(err)
	}

Example to List a Trust

	listOpts := trusts.ListOpts{
		TrustorUserId: "3422b7c113894f5d90665e1a79655e23",
	}

	allPages, err := trusts.List(identityClient, listOpts).AllPages()
	if err != nil {
		panic(err)
	}

	allTrusts, err := trusts.ExtractTrusts(allPages)
	if err != nil {
		panic(err)
	}

	for _, trust := range allTrusts {
		fmt.Printf("%+v\n", region)
	}
*/
package trusts