Skip to content

Commit

Permalink
Merge pull request #84 from tomvachon/development
Browse files Browse the repository at this point in the history
Add ElasticSearchService Domain and SQS Queue
  • Loading branch information
svenwltr committed Mar 6, 2018
2 parents 15fefb1 + fbda85d commit b101066
Show file tree
Hide file tree
Showing 2 changed files with 96 additions and 0 deletions.
48 changes: 48 additions & 0 deletions resources/elasticsearchservice-domain.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
package resources

import (
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/elasticsearchservice"
)

type ESDomain struct {
svc *elasticsearchservice.ElasticsearchService
domainName *string
}

func init() {
register("ESDomain", ListESDomains)
}

func ListESDomains(sess *session.Session) ([]Resource, error) {
svc := elasticsearchservice.New(sess)

params := &elasticsearchservice.ListDomainNamesInput{}
resp, err := svc.ListDomainNames(params)
if err != nil {
return nil, err
}

resources := make([]Resource, 0)
for _, domain := range resp.DomainNames {
resources = append(resources, &ESDomain{
svc: svc,
domainName: domain.DomainName,
})
}

return resources, nil
}

func (f *ESDomain) Remove() error {

_, err := f.svc.DeleteElasticsearchDomain(&elasticsearchservice.DeleteElasticsearchDomainInput{
DomainName: f.domainName,
})

return err
}

func (f *ESDomain) String() string {
return *f.domainName
}
48 changes: 48 additions & 0 deletions resources/sqs-queues.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
package resources

import (
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/sqs"
)

type SQSQueue struct {
svc *sqs.SQS
queueURL *string
}

func init() {
register("SQSQueue", ListSQSQueues)
}

func ListSQSQueues(sess *session.Session) ([]Resource, error) {
svc := sqs.New(sess)

params := &sqs.ListQueuesInput{}
resp, err := svc.ListQueues(params)
if err != nil {
return nil, err
}

resources := make([]Resource, 0)
for _, queue := range resp.QueueUrls {
resources = append(resources, &SQSQueue{
svc: svc,
queueURL: queue,
})
}

return resources, nil
}

func (f *SQSQueue) Remove() error {

_, err := f.svc.DeleteQueue(&sqs.DeleteQueueInput{
QueueUrl: f.queueURL,
})

return err
}

func (f *SQSQueue) String() string {
return *f.queueURL
}

0 comments on commit b101066

Please sign in to comment.