sudo: true language: go go: - 1.6.2 go_import_path: github.com/vmware/harbor services: - docker - mysql dist: trusty addons: apt: packages: - mysql-server-5.6 - mysql-client-core-5.6 - mysql-client-5.6 env: DB_HOST: 127.0.0.1 DB_PORT: 3306 DB_USR: root DB_PWD: DOCKER_COMPOSE_VERSION: 1.7.1 HARBOR_ADMIN: admin HARBOR_ADMIN_PASSWD: Harbor12345 before_install: - sudo ./tests/hostcfg.sh - cd Deploy - sudo ./prepare - cd .. install: - sudo apt-get update && sudo apt-get install -y libldap2-dev # - sudo apt-get remove -y mysql-common mysql-server-5.5 mysql-server-core-5.5 mysql-client-5.5 mysql-client-core-5.5 # - sudo apt-get autoremove -y # - sudo apt-get install -y libaio1 # - wget -O mysql-5.6.14.deb http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.14-debian6.0-x86_64.deb/from/http://cdn.mysql.com/ # - sudo dpkg -i mysql-5.6.14.deb # - sudo cp /opt/mysql/server-5.6/support-files/mysql.server /etc/init.d/mysql.server # - sudo ln -s /opt/mysql/server-5.6/bin/* /usr/bin/ # - sudo sed -i'' 's/table_cache/table_open_cache/' /etc/mysql/my.cnf # - sudo sed -i'' 's/log_slow_queries/slow_query_log/' /etc/mysql/my.cnf # - sudo sed -i'' 's/basedir[^=]\+=.*$/basedir = \/opt\/mysql\/server-5.6/' /etc/mysql/my.cnf # - sudo /etc/init.d/mysql.server start # - mysql --version - go get -d github.com/docker/distribution - go get -d github.com/docker/libtrust - go get -d github.com/go-sql-driver/mysql - go get github.com/golang/lint/golint - go get github.com/GeertJohan/fgt # - sudo apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" docker-engine=1.11.1-0~trusty # - sudo rm /usr/local/bin/docker-compose - curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > docker-compose - chmod +x docker-compose - sudo mv docker-compose /usr/local/bin - sudo sed -i '$a DOCKER_OPTS=\"$DOCKER_OPTS --insecure-registry 127.0.0.1\"' /etc/default/docker - sudo service docker restart - go get github.com/dghubble/sling - go get github.com/stretchr/testify before_script: # create tables and load data - mysql < ./Deploy/db/registry.sql -uroot --verbose script: - go list ./... | grep -v 'tests' | grep -v /vendor/ | xargs -L1 fgt golint - go list ./... | grep -v 'tests' | grep -v 'vendor' | xargs -L1 go vet - go list ./... | grep -v 'tests' | grep -v 'vendor' | xargs -L1 go test -v - docker-compose -f Deploy/docker-compose.yml up -d - docker ps - go run tests/startuptest.go http://localhost/ - go run tests/userlogintest.go -name ${HARBOR_ADMIN} -passwd ${HARBOR_ADMIN_PASSWD} # test for API - sudo ./tests/testprepare.sh - go test -v ./tests/apitests