.drone.yml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. workspace:
  2. base: /app
  3. path: .
  4. cache:
  5. - ".git"
  6. - "browser/vue-flow/node_modules"
  7. - "go/deps"
  8. pipeline:
  9. backend:
  10. image: golang
  11. environment:
  12. - GOPATH=/app/go/deps:/app/go
  13. commands:
  14. - echo $$EMAIL_PASSWORD
  15. - go get github.com/axw/gocov/gocov
  16. - go get -d ./go/src/...
  17. - go get -d -t ./go/src/...
  18. - go/deps/bin/gocov test -v -race ./go/src/... | go/deps/bin/gocov report
  19. - CGO_ENABLED=0 go build -o DIST/flowserver flowserver/cmd/flowserver
  20. frontend:
  21. image: node:6
  22. commands:
  23. - cd browser/vue-flow
  24. - yarn
  25. - yarn build
  26. deploy:
  27. image: docker
  28. when:
  29. event: deployment
  30. environment: staging
  31. commands:
  32. - echo $HOME
  33. - mkdir -p DIST
  34. - cp -r browser/vue-flow/dist DIST/web
  35. - docker build --rm -t hexasoftware.com:5000/flow-proto -f ./docker/Dockerfile .
  36. - docker push hexasoftware.com:5000/flow-proto
  37. volumes:
  38. - /var/run/docker.sock:/var/run/docker.sock
  39. - /home/stdio/.docker/config.json:/root/.docker/config.json
  40. notify:
  41. image: drillster/drone-email
  42. host: mail.hexasoftware.com
  43. skip_verify: true
  44. username: drone@hexasoftware.com
  45. password: $$EMAIL_PASSWORD
  46. from: drone@hexasoftware.com
  47. when:
  48. status: [ changed, failure, success ]