forked from IBM-Cloud/bluemix-go
/
main.go
106 lines (75 loc) · 1.81 KB
/
main.go
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package main
import (
"flag"
"log"
"os"
bluemix "github.com/IBM-Cloud/bluemix-go"
"github.com/IBM-Cloud/bluemix-go/api/resource/resourcev2/managementv2"
"github.com/IBM-Cloud/bluemix-go/models"
"github.com/IBM-Cloud/bluemix-go/session"
"github.com/IBM-Cloud/bluemix-go/trace"
)
func main() {
var resourcegrp string
flag.StringVar(&resourcegrp, "name", "mynewgroup", "Name of the group")
flag.Parse()
c := new(bluemix.Config)
if resourcegrp == "" {
flag.Usage()
os.Exit(1)
}
// resourcegrp = "mynewgroup"
trace.Logger = trace.NewLogger("true")
sess, err := session.New(c)
if err != nil {
log.Fatal(err)
}
client, err := managementv2.New(sess)
if err != nil {
log.Fatal(err)
}
resGrpAPI := client.ResourceGroup()
resourceGroupQuery := managementv2.ResourceGroupQuery{
Default: true,
}
grpList, err := resGrpAPI.List(&resourceGroupQuery)
if err != nil {
log.Fatal(err)
}
log.Println("\nResource group default Details :", grpList)
// var name = models.ResourceGroup{
// Name: resourcegrp,
// }
var grpInfo = models.ResourceGroupv2{
ResourceGroup: models.ResourceGroup{
Name: resourcegrp,
},
}
grp, err := resGrpAPI.Create(grpInfo)
if err != nil {
log.Fatal(err)
}
log.Println("\nResource group create :", grp)
grps, err := resGrpAPI.FindByName(nil, resourcegrp)
if err != nil {
log.Fatal(err)
}
log.Println("\nResource group Details :", grps[0])
grp, err = resGrpAPI.Get(grp.ID)
if err != nil {
log.Fatal(err)
}
log.Println("\nResource group Details by ID:", grp)
var updateGrpInfo = managementv2.ResourceGroupUpdateRequest{
Name: "default",
}
grp, err = resGrpAPI.Update(grp.ID, &updateGrpInfo)
if err != nil {
log.Fatal(err)
}
log.Println("\nResource group update :", grp)
err = resGrpAPI.Delete(grp.ID)
if err != nil {
log.Fatal(err)
}
}