circle.yml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. machine:
  2. node:
  3. version: 6.11.4
  4. python:
  5. version: 2.7.3
  6. services:
  7. - docker
  8. environment:
  9. GOPATH: "/home/ubuntu/.go_workspace"
  10. ORG_PATH: "github.com/grafana"
  11. REPO_PATH: "${ORG_PATH}/grafana"
  12. GODIST: "go1.9.2.linux-amd64.tar.gz"
  13. post:
  14. - mkdir -p ~/download
  15. - mkdir -p ~/docker
  16. - test -e download/$GODIST || curl -o download/$GODIST https://storage.googleapis.com/golang/$GODIST
  17. - sudo rm -rf /usr/local/go
  18. - sudo tar -C /usr/local -xzf download/$GODIST
  19. dependencies:
  20. cache_directories:
  21. - "~/docker"
  22. - "~/download"
  23. override:
  24. - rm -rf ${GOPATH}/src/${REPO_PATH}
  25. - mkdir -p ${GOPATH}/src/${ORG_PATH}
  26. - cp -r ~/grafana ${GOPATH}/src/${ORG_PATH}
  27. pre:
  28. - pip install awscli
  29. - sudo apt-get update; sudo apt-get install rpm; sudo apt-get install expect
  30. - ./scripts/build/build_container.sh
  31. test:
  32. override:
  33. - bash scripts/circle-test-frontend.sh
  34. - bash scripts/circle-test-backend.sh
  35. deployment:
  36. gh_branch:
  37. branch: master
  38. commands:
  39. - ./scripts/build/deploy.sh
  40. - ./scripts/build/sign_packages.sh
  41. - go run build.go sha-dist
  42. - aws s3 sync ./dist s3://$BUCKET_NAME/master
  43. - ./scripts/trigger_windows_build.sh ${APPVEYOR_TOKEN} ${CIRCLE_SHA1} master
  44. - ./scripts/trigger_docker_build.sh ${TRIGGER_GRAFANA_PACKER_CIRCLECI_TOKEN}
  45. - go run ./scripts/build/publish.go -apiKey ${GRAFANA_COM_API_KEY}
  46. gh_tag:
  47. tag: /^v[0-9]+(\.[0-9]+){2}(-.+|[^-.]*)$/
  48. commands:
  49. - ./scripts/build/deploy.sh
  50. - ./scripts/build/sign_packages.sh
  51. - go run build.go sha-dist
  52. - aws s3 sync ./dist s3://$BUCKET_NAME/release
  53. - ./scripts/trigger_windows_build.sh ${APPVEYOR_TOKEN} ${CIRCLE_SHA1} release
  54. - ./scripts/trigger_docker_build.sh ${TRIGGER_GRAFANA_PACKER_CIRCLECI_TOKEN} ${CIRCLE_TAG}