.travis.yml 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. sudo: false
  2. language: go
  3. go:
  4. - 1.7
  5. - 1.8
  6. - 1.9
  7. - tip
  8. before_install:
  9. - go get golang.org/x/tools/cmd/cover
  10. - go get github.com/mattn/goveralls
  11. before_script:
  12. - echo -e "[server]\ninnodb_log_file_size=256MB\ninnodb_buffer_pool_size=512MB\nmax_allowed_packet=16MB" | sudo tee -a /etc/mysql/my.cnf
  13. - sudo service mysql restart
  14. - .travis/wait_mysql.sh
  15. - mysql -e 'create database gotest;'
  16. matrix:
  17. include:
  18. - env: DB=MYSQL57
  19. sudo: required
  20. dist: trusty
  21. go: 1.9
  22. services:
  23. - docker
  24. before_install:
  25. - go get golang.org/x/tools/cmd/cover
  26. - go get github.com/mattn/goveralls
  27. - docker pull mysql:5.7
  28. - docker run -d -p 127.0.0.1:3307:3306 --name mysqld -e MYSQL_DATABASE=gotest -e MYSQL_USER=gotest -e MYSQL_PASSWORD=secret -e MYSQL_ROOT_PASSWORD=verysecret
  29. mysql:5.7 --innodb_log_file_size=256MB --innodb_buffer_pool_size=512MB --max_allowed_packet=16MB
  30. - sleep 30
  31. - cp .travis/docker.cnf ~/.my.cnf
  32. - mysql --print-defaults
  33. - .travis/wait_mysql.sh
  34. before_script:
  35. - export MYSQL_TEST_USER=gotest
  36. - export MYSQL_TEST_PASS=secret
  37. - export MYSQL_TEST_ADDR=127.0.0.1:3307
  38. - export MYSQL_TEST_CONCURRENT=1
  39. - env: DB=MARIA55
  40. sudo: required
  41. dist: trusty
  42. go: 1.9
  43. services:
  44. - docker
  45. before_install:
  46. - go get golang.org/x/tools/cmd/cover
  47. - go get github.com/mattn/goveralls
  48. - docker pull mariadb:5.5
  49. - docker run -d -p 127.0.0.1:3307:3306 --name mysqld -e MYSQL_DATABASE=gotest -e MYSQL_USER=gotest -e MYSQL_PASSWORD=secret -e MYSQL_ROOT_PASSWORD=verysecret
  50. mariadb:5.5 --innodb_log_file_size=256MB --innodb_buffer_pool_size=512MB --max_allowed_packet=16MB
  51. - sleep 30
  52. - cp .travis/docker.cnf ~/.my.cnf
  53. - mysql --print-defaults
  54. - .travis/wait_mysql.sh
  55. before_script:
  56. - export MYSQL_TEST_USER=gotest
  57. - export MYSQL_TEST_PASS=secret
  58. - export MYSQL_TEST_ADDR=127.0.0.1:3307
  59. - export MYSQL_TEST_CONCURRENT=1
  60. - env: DB=MARIA10_1
  61. sudo: required
  62. dist: trusty
  63. go: 1.9
  64. services:
  65. - docker
  66. before_install:
  67. - go get golang.org/x/tools/cmd/cover
  68. - go get github.com/mattn/goveralls
  69. - docker pull mariadb:10.1
  70. - docker run -d -p 127.0.0.1:3307:3306 --name mysqld -e MYSQL_DATABASE=gotest -e MYSQL_USER=gotest -e MYSQL_PASSWORD=secret -e MYSQL_ROOT_PASSWORD=verysecret
  71. mariadb:10.1 --innodb_log_file_size=256MB --innodb_buffer_pool_size=512MB --max_allowed_packet=16MB
  72. - sleep 30
  73. - cp .travis/docker.cnf ~/.my.cnf
  74. - mysql --print-defaults
  75. - .travis/wait_mysql.sh
  76. before_script:
  77. - export MYSQL_TEST_USER=gotest
  78. - export MYSQL_TEST_PASS=secret
  79. - export MYSQL_TEST_ADDR=127.0.0.1:3307
  80. - export MYSQL_TEST_CONCURRENT=1
  81. script:
  82. - go test -v -covermode=count -coverprofile=coverage.out
  83. - go vet ./...
  84. - test -z "$(gofmt -d -s . | tee /dev/stderr)"
  85. after_script:
  86. - $HOME/gopath/bin/goveralls -coverprofile=coverage.out -service=travis-ci