.drone.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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. - EMAIL_PASSWORD=$$EMAIL_PASSWORD
  14. commands:
  15. - echo ${EMAIL_PASSWORD}
  16. - echo $EMAIL_PASSWORD
  17. - go get github.com/axw/gocov/gocov
  18. - go get -d ./go/src/...
  19. - go get -d -t ./go/src/...
  20. - go/deps/bin/gocov test -v -race ./go/src/... | go/deps/bin/gocov report
  21. - CGO_ENABLED=0 go build -o DIST/flowserver flowserver/cmd/flowserver
  22. frontend:
  23. image: node:6
  24. commands:
  25. - cd browser/vue-flow
  26. - yarn
  27. - yarn build
  28. deploy:
  29. image: docker
  30. when:
  31. event: deployment
  32. environment: staging
  33. commands:
  34. - echo $HOME
  35. - mkdir -p DIST
  36. - cp -r browser/vue-flow/dist DIST/web
  37. - docker build --rm -t hexasoftware.com:5000/flow-proto -f ./docker/Dockerfile .
  38. - docker push hexasoftware.com:5000/flow-proto
  39. volumes:
  40. - /var/run/docker.sock:/var/run/docker.sock
  41. - /home/stdio/.docker/config.json:/root/.docker/config.json
  42. notify:
  43. image: drillster/drone-email
  44. host: mail.hexasoftware.com
  45. skip_verify: true
  46. username: drone@hexasoftware.com
  47. password: $$EMAIL_PASSWORD
  48. from: drone@hexasoftware.com
  49. when:
  50. status: [ changed, failure, success ]