Skip to content

Commit d4c978e

Browse files
authored
Merge pull request #407 from davidferguson-cr/add-worklink-support
Add WorkLink support
2 parents 0ede1fb + 63a8565 commit d4c978e

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed

resources/worklink-fleets.go

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
package resources
2+
3+
import (
4+
"github.com/aws/aws-sdk-go/aws"
5+
"github.com/aws/aws-sdk-go/aws/session"
6+
"github.com/aws/aws-sdk-go/service/worklink"
7+
"github.com/rebuy-de/aws-nuke/pkg/types"
8+
)
9+
10+
type WorkLinkFleet struct {
11+
svc *worklink.WorkLink
12+
fleetARN *string
13+
fleetName *string
14+
fleetCompanyCode *string
15+
fleetDisplayName *string
16+
}
17+
18+
func init() {
19+
register("WorkLinkFleet", ListWorkLinkFleets)
20+
}
21+
22+
func ListWorkLinkFleets(sess *session.Session) ([]Resource, error) {
23+
svc := worklink.New(sess)
24+
resources := []Resource{}
25+
26+
params := &worklink.ListFleetsInput{
27+
MaxResults: aws.Int64(100),
28+
}
29+
30+
for {
31+
output, err := svc.ListFleets(params)
32+
if err != nil {
33+
return nil, err
34+
}
35+
36+
for _, fleet := range output.FleetSummaryList {
37+
resources = append(resources, &WorkLinkFleet{
38+
svc: svc,
39+
fleetARN: fleet.FleetArn,
40+
fleetName: fleet.FleetName,
41+
fleetCompanyCode: fleet.CompanyCode,
42+
fleetDisplayName: fleet.DisplayName,
43+
})
44+
}
45+
46+
if output.NextToken == nil {
47+
break
48+
}
49+
50+
params.NextToken = output.NextToken
51+
}
52+
53+
return resources, nil
54+
}
55+
56+
func (f *WorkLinkFleet) Properties() types.Properties {
57+
properties := types.NewProperties()
58+
properties.Set("CompanyCode", f.fleetCompanyCode)
59+
properties.Set("DisplayName", f.fleetDisplayName)
60+
61+
return properties
62+
}
63+
64+
func (f *WorkLinkFleet) Remove() error {
65+
_, err := f.svc.DeleteFleet(&worklink.DeleteFleetInput{
66+
FleetArn: f.fleetARN,
67+
})
68+
69+
return err
70+
}
71+
72+
func (f *WorkLinkFleet) String() string {
73+
return *f.fleetName
74+
}

0 commit comments

Comments
 (0)