Skip to content

Commit

Permalink
Merge pull request #66 from stormcat24/v0.2.0
Browse files Browse the repository at this point in the history
v0.2.0
  • Loading branch information
Akinori Yamada committed Dec 20, 2015
2 parents 000e9dd + 3dec2ac commit b0ead53
Show file tree
Hide file tree
Showing 18 changed files with 659 additions and 315 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Expand Up @@ -27,7 +27,7 @@ _testmain.go
.idea/
*.iml

Godeps/_workspace/
vendor/
bin/*
coverage.out
coverage.html
Expand Down
114 changes: 0 additions & 114 deletions Godeps/Godeps.json

This file was deleted.

5 changes: 0 additions & 5 deletions Godeps/Readme

This file was deleted.

32 changes: 21 additions & 11 deletions Makefile
Expand Up @@ -9,29 +9,39 @@ PACKAGES=util \

TEST_TARGETS=$(addprefix test-,$(PACKAGES))


deps:
go get github.com/tools/godep
godep restore

deps-save:
godep save $(BASE_PACKAGE)/...
go get github.com/Masterminds/glide
GO15VENDOREXPERIMENT=1 glide update --cache

deps-test:
go get github.com/tools/godep
godep restore
go get github.com/Masterminds/glide
GO15VENDOREXPERIMENT=1 glide update --cache
go get github.com/golang/lint/golint
go get github.com/jstemmer/go-junit-report

build:
godep go build -o bin/ecs-formation main.go
GO15VENDOREXPERIMENT=1 go build -o bin/ecs-formation main.go

vet:
GO15VENDOREXPERIMENT=1 go vet $(shell GO15VENDOREXPERIMENT=1 go list github.com/stormcat24/ecs-formation/... | grep -v vendor)

test: $(TEST_TARGETS)

$(TEST_TARGETS): test-%:
@echo "**********************************************************"
@echo " testing package: $*"
@echo "**********************************************************"
godep go test -v -covermode=atomic -coverprofile=coverage.out $(GOTEST_FLAGS) $(BASE_PACKAGE)/$(*)
godep go test -v -run=nonthing -benchmem -bench=".*" $(GOTEST_FLAGS) $(BASE_PACKAGE)/$(*)
GO15VENDOREXPERIMENT=1 go test -v -covermode=atomic -coverprofile=coverage.out $(GOTEST_FLAGS) $(BASE_PACKAGE)/$(*)
GO15VENDOREXPERIMENT=1 go test -v -run=nonthing -benchmem -bench=".*" $(GOTEST_FLAGS) $(BASE_PACKAGE)/$(*)

ci-test: $(CI_TEST_TARGETS)

$(CI_TEST_TARGETS): ci-test-%:
@echo "**********************************************************"
@echo " testing package: $*"
@echo "**********************************************************"
GO15VENDOREXPERIMENT=1 go test -covermode=atomic -coverprofile=coverage.out $(GOTEST_FLAGS) $(BASE_PACKAGE)/$(*)
mkdir -p $(CIRCLE_ARTIFACTS)/$@/
GO15VENDOREXPERIMENT=1 go tool cover -html=coverage.out -o $(CIRCLE_ARTIFACTS)/$@/cover.html
mkdir -p $(CIRCLE_TEST_REPORTS)/junit
cat coverage.out | go-junit-report > $(CIRCLE_TEST_REPORTS)/junit/$(notdir $@).xml
7 changes: 3 additions & 4 deletions aws/autoscaling.go
Expand Up @@ -3,7 +3,6 @@ package aws
import (
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/service/autoscaling"
"github.com/stormcat24/ecs-formation/util"
)

type AutoscalingApi struct {
Expand All @@ -13,7 +12,7 @@ type AutoscalingApi struct {
func (self *AutoscalingApi) DescribeAutoScalingGroups(groups []string) (map[string]*autoscaling.Group, error) {

params := &autoscaling.DescribeAutoScalingGroupsInput{
AutoScalingGroupNames: util.ConvertPointerString(groups),
AutoScalingGroupNames: aws.StringSlice(groups),
}

asgmap := map[string]*autoscaling.Group{}
Expand Down Expand Up @@ -60,7 +59,7 @@ func (self *AutoscalingApi) AttachLoadBalancers(group string, lb []string) (*aut

params := &autoscaling.AttachLoadBalancersInput{
AutoScalingGroupName: aws.String(group),
LoadBalancerNames: util.ConvertPointerString(lb),
LoadBalancerNames: aws.StringSlice(lb),
}

result, err := self.service.AttachLoadBalancers(params)
Expand All @@ -74,7 +73,7 @@ func (self *AutoscalingApi) DetachLoadBalancers(group string, lb []string) (*aut

params := &autoscaling.DetachLoadBalancersInput{
AutoScalingGroupName: aws.String(group),
LoadBalancerNames: util.ConvertPointerString(lb),
LoadBalancerNames: aws.StringSlice(lb),
}

result, err := self.service.DetachLoadBalancers(params)
Expand Down
3 changes: 1 addition & 2 deletions aws/elb_api.go
Expand Up @@ -3,7 +3,6 @@ package aws
import (
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/service/elb"
"github.com/stormcat24/ecs-formation/util"
)

type ElbApi struct {
Expand All @@ -13,7 +12,7 @@ type ElbApi struct {
func (self *ElbApi) DescribeLoadBalancers(names []string) (*elb.DescribeLoadBalancersOutput, error) {

params := &elb.DescribeLoadBalancersInput{
LoadBalancerNames: util.ConvertPointerString(names),
LoadBalancerNames: aws.StringSlice(names),
}

result, err := self.service.DescribeLoadBalancers(params)
Expand Down
46 changes: 23 additions & 23 deletions bluegreen/bluegreen.go
Expand Up @@ -10,6 +10,8 @@ import (
"github.com/str1ngs/ansi/color"
"gopkg.in/yaml.v2"
"io/ioutil"
"os"
"path/filepath"
"regexp"
"strings"
"time"
Expand Down Expand Up @@ -49,36 +51,34 @@ func NewBlueGreenController(manager *aws.AwsManager, projectDir string, targetRe
func (self *BlueGreenController) searchBlueGreen(projectDir string) (map[string]*BlueGreen, error) {

clusterDir := projectDir + "/bluegreen"
files, err := ioutil.ReadDir(clusterDir)
bgmap := map[string]*BlueGreen{}

merged := map[string]*BlueGreen{}
filePattern := regexp.MustCompile(`^.+\/(.+)\.yml$`)

if err != nil {
return merged, err
}

filePattern := regexp.MustCompile("^(.+)\\.yml$")
filepath.Walk(clusterDir, func(path string, info os.FileInfo, err error) error {
if info.IsDir() || !strings.HasSuffix(path, ".yml") {
return nil
}

for _, file := range files {
if !file.IsDir() && strings.HasSuffix(file.Name(), ".yml") {
content, err := ioutil.ReadFile(clusterDir + "/" + file.Name())
if err != nil {
return nil, err
}
content, err := ioutil.ReadFile(path)
if err != nil {
return err
}

mergedYaml := util.MergeYamlWithParameters(content, self.params)
tokens := filePattern.FindStringSubmatch(file.Name())
name := tokens[1]
merged := util.MergeYamlWithParameters(content, self.params)
tokens := filePattern.FindStringSubmatch(path)
name := tokens[1]

bg, err := CreateBlueGreen(mergedYaml)
if err != nil {
return merged, err
}
merged[name] = bg
bg, err := CreateBlueGreen(merged)
if err != nil {
return err
}
}
bgmap[name] = bg

return nil
})

return merged, nil
return bgmap, nil
}

func CreateBlueGreen(data string) (*BlueGreen, error) {
Expand Down
19 changes: 15 additions & 4 deletions circle.yml
@@ -1,9 +1,21 @@
general:
build_dir: ../.go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME

machine:
environment:
GO_VERSION: 1.5.2

post:
- rm -rf ".go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME"
- mkdir -p ".go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME"
- mv $CIRCLE_PROJECT_REPONAME ".go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME/"
- mkdir -p $CIRCLE_PROJECT_REPONAME

dependencies:
pre:
cache_directories:
- "~/.glide"

override:
# go1.5
- curl -L -O https://storage.googleapis.com/golang/go$GO_VERSION.linux-amd64.tar.gz > /dev/null
- tar xzf go$GO_VERSION.linux-amd64.tar.gz
Expand All @@ -14,11 +26,10 @@ dependencies:
# deps
- make deps-test


test:
override:
- mkdir -p ./Godeps/stormcat24/ecs-formation
- rsync -avz --exclude=.git/ --exclude=Godeps/ . ./Godeps/stormcat24/ecs-formation
- make test
- make ci-test

deployment:
build:
Expand Down

0 comments on commit b0ead53

Please sign in to comment.