add build container for testing in ci (#89)

build fails if container exit code fails. 
One step closer to #71
This commit is contained in:
Victor Vrantchan
2016-08-19 20:05:24 -04:00
committed by GitHub
parent 7ec484633a
commit 578b81558c
4 changed files with 37 additions and 19 deletions
+14 -13
View File
@@ -1,16 +1,17 @@
machine:
environment:
IMPORT_PATH: "/home/ubuntu/.go_workspace/src/github.com/kolide"
APP_PATH: "$IMPORT_PATH/kolide-ose"
GO15VENDOREXPERIMENT: 1
dependencies:
override:
- make deps
- go generate
test:
pre:
- mkdir -p "$IMPORT_PATH"
- ln -sf "$(pwd)" "$APP_PATH"
- cd "$APP_PATH" && glide install
- sudo curl -L -o /usr/bin/docker 'https://s3-external-1.amazonaws.com/circle-downloads/docker-1.9.1-circleci'
- sudo chmod 0755 /usr/bin/docker
services:
- docker
dependencies:
pre:
- docker info
- docker login -e $DOCKER_HUB_EMAIL -u $DOCKER_HUB_USERNAME -p $DOCKER_HUB_PASSWORD
override:
- cd "$APP_PATH" && go test -cover $(glide nv)
- docker pull kolide/kolide-builder:1.6
test:
override:
- docker run -v $(pwd):/go/src/github.com/kolide/kolide-ose -v /home/ubuntu/.go_workspace/pkg:/go/pkg kolide/kolide-builder:1.6 -C
+2 -2
View File
@@ -78,7 +78,6 @@ func New(driver, conn string, opts ...DBOption) (Datastore, error) {
return opt.db, nil
}
var ds Datastore
switch driver {
case "gorm-mysql":
db, err := openGORM("mysql", conn, opt.maxAttempts)
@@ -110,6 +109,7 @@ func New(driver, conn string, opts ...DBOption) (Datastore, error) {
return nil, errors.DatabaseError(err)
}
return ds, nil
default:
return nil, errors.New("unsupported datastore driver %s", driver)
}
return ds, nil
}
+8 -3
View File
@@ -69,14 +69,19 @@ func TestSaveUserMySQLGORM(t *testing.T) {
}
func setupMySQLGORM(t *testing.T) Datastore {
// TODO use ENV vars from docker config
user := "kolide"
password := "kolide"
host := "127.0.0.1:3306"
dbName := "kolide"
// try container first
host := os.Getenv("MYSQL_PORT_3306_TCP_ADDR")
if host == "" {
host = "127.0.0.1"
}
host = fmt.Sprintf("%s:3306", host)
conn := fmt.Sprintf("%s:%s@(%s)/%s?charset=utf8&parseTime=True&loc=Local", user, password, host, dbName)
db, err := New("gorm", conn, LimitAttempts(1))
db, err := New("gorm-mysql", conn, LimitAttempts(1))
if err != nil {
t.Fatal(err)
}
+13 -1
View File
@@ -12,4 +12,16 @@ mailhog:
image: mailhog/mailhog:latest
ports:
- "8025:8025"
- "1025:1025"
- "1025:1025"
test:
image: kolide/kolide-builder:1.6
environment:
MYSQL_ADDR: 127.0.0.1
links:
- mysql
- mailhog
command:
- -C
volumes:
- ./:/go/src/github.com/kolide/kolide-ose