harbor/.travis.yml

122 lines
4.5 KiB
YAML
Raw Normal View History

2016-06-07 06:19:48 +02:00
sudo: true
2016-02-29 04:24:52 +01:00
language: go
go:
- 1.9.2
2016-02-29 04:24:52 +01:00
go_import_path: github.com/vmware/harbor
2016-06-07 06:19:48 +02:00
services:
- docker
dist: trusty
2016-02-29 04:24:52 +01:00
2016-06-07 06:19:48 +02:00
env:
POSTGRESQL_HOST: localhost
POSTGRESQL_PORT: 5432
POSTGRESQL_USR: postgres
POSTGRESQL_PWD: root123
POSTGRESQL_DATABASE: registry
2017-01-12 11:29:02 +01:00
SQLITE_FILE: /tmp/registry.db
ADMINSERVER_URL: http://127.0.0.1:8888
2016-06-07 06:19:48 +02:00
DOCKER_COMPOSE_VERSION: 1.7.1
HARBOR_ADMIN: admin
HARBOR_ADMIN_PASSWD: Harbor12345
UI_SECRET: tempString
2016-08-03 11:25:24 +02:00
MAX_JOB_WORKERS: 3
2016-09-19 04:30:22 +02:00
AUTH_MODE: db_auth
2017-02-08 10:17:33 +01:00
SELF_REGISTRATION: on
2017-02-15 08:25:59 +01:00
KEY_PATH: /data/secretkey
REDIS_HOST: localhost
2016-06-07 06:19:48 +02:00
before_install:
- sudo ./tests/hostcfg.sh
- sudo ./tests/generateCerts.sh
2016-10-19 08:32:00 +02:00
- sudo ./make/prepare
- sudo mkdir -p "/data/redis"
2016-02-29 04:24:52 +01:00
install:
2016-06-01 06:57:10 +02:00
- sudo apt-get update && sudo apt-get install -y libldap2-dev
2016-09-13 11:41:32 +02:00
- sudo apt-get install -y sqlite3
2016-06-14 07:04:31 +02:00
# - 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
2016-02-29 04:24:52 +01:00
- go get -d github.com/docker/distribution
- go get -d github.com/docker/libtrust
- go get -d github.com/lib/pq
2016-02-29 04:24:52 +01:00
- go get github.com/golang/lint/golint
- go get github.com/GeertJohan/fgt
2016-08-08 10:40:14 +02:00
# - sudo rm /usr/local/bin/docker-compose
2016-06-07 06:19:48 +02:00
- 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
- IP=`ip addr s eth0 |grep "inet "|awk '{print $2}' |awk -F "/" '{print $1}'`
- sudo sed -i '$a DOCKER_OPTS=\"--insecure-registry '$IP':5000\"' /etc/default/docker
- sudo service docker restart
2016-06-07 06:19:48 +02:00
- go get github.com/dghubble/sling
- go get github.com/stretchr/testify
2016-08-04 06:09:40 +02:00
- go get golang.org/x/tools/cmd/cover
- go get github.com/mattn/goveralls
2016-06-07 06:19:48 +02:00
2016-02-29 04:24:52 +01:00
before_script:
# create tables and load data
2016-10-19 08:32:00 +02:00
# - mysql < ./make/db/registry.sql -uroot --verbose
2017-12-09 19:53:12 +01:00
- sudo sqlite3 /tmp/registry.db < make/photon/db/registry_sqlite.sql
2017-02-09 06:58:48 +01:00
- sudo chmod 777 /tmp/registry.db
2016-02-29 04:24:52 +01:00
2016-08-08 10:40:14 +02:00
script:
2017-03-30 05:04:09 +02:00
- sudo mkdir -p /etc/ui/ca/
- sudo mv ./tests/ca.crt /etc/ui/ca/
2017-03-21 12:56:59 +01:00
- sudo mkdir -p /harbor
2018-03-21 06:03:49 +01:00
- sudo mv ./VERSION /harbor/UIVERSION
- sudo service postgresql stop
- sudo make run_clarity_ut CLARITYIMAGE=vmware/harbor-clarity-ui-builder:1.4.0
- cat ./src/ui_ng/lib/npm-ut-test-results
2016-08-08 10:40:14 +02:00
- sudo ./tests/testprepare.sh
- sudo make -f make/photon/Makefile _build_postgresql _build_db _build_registry -e VERSIONTAG=dev -e CLAIRDBVERSION=dev -e REGISTRYVERSION=v2.6.2
2017-12-09 19:53:12 +01:00
- sudo sed -i 's/__reg_version__/v2.6.2-dev/g' ./make/docker-compose.test.yml
- sudo sed -i 's/__version__/dev/g' ./make/docker-compose.test.yml
- sudo mkdir -p ./make/common/config/registry/
- sudo mv ./tests/reg_config.yml ./make/common/config/registry/config.yml
2017-04-09 14:16:52 +02:00
- sudo docker-compose -f ./make/docker-compose.test.yml up -d
- go list ./... | grep -v -E 'vendor|tests|test' | xargs -L1 fgt golint
- go list ./... | grep -v -E 'vendor|tests|test' | xargs -L1 go vet
- export POSTGRESQL_HOST=$IP
- export REGISTRY_URL=$IP:5000
2016-08-08 10:40:14 +02:00
- echo $REGISTRY_URL
- ./tests/pushimage.sh
- cd tests
- sudo ./ldapprepare.sh
2017-06-06 11:51:40 +02:00
- sudo ./admiral.sh
- cd ..
2017-09-04 11:26:28 +02:00
- go test -race -i ./src/ui ./src/adminserver ./src/jobservice
2017-04-09 14:16:52 +02:00
- sudo -E env "PATH=$PATH" ./tests/coverage4gotest.sh
2016-08-04 06:09:40 +02:00
- goveralls -coverprofile=profile.cov -service=travis-ci
2016-10-19 08:32:00 +02:00
- docker-compose -f make/docker-compose.test.yml down
- sudo rm -rf /data/config/*
- sudo rm -rf /data/database/*
- ls /data/cert
- sudo make install GOBUILDIMAGE=golang:1.9.2 COMPILETAG=compile_golangimage CLARITYIMAGE=vmware/harbor-clarity-ui-builder:1.4.0 NOTARYFLAG=true CLAIRFLAG=true
2017-09-05 07:10:39 +02:00
- sleep 10
2017-08-31 16:55:39 +02:00
- docker ps
- ./tests/validatecontainers.sh
2017-03-22 12:30:20 +01:00
- ./tests/notarytest.sh
- ./tests/swaggerchecker.sh
2017-03-24 03:12:04 +01:00
- ./tests/startuptest.sh
2017-03-24 11:50:11 +01:00
- ./tests/userlogintest.sh ${HARBOR_ADMIN} ${HARBOR_ADMIN_PASSWD}
- export REDIS_HOST=$IP
2016-06-07 06:19:48 +02:00
2016-08-08 10:40:14 +02:00
# - sudo ./tests/testprepare.sh
# - go test -v ./tests/apitests