diff --git a/.codecov.yml b/.codecov.yml new file mode 100644 index 000000000..acb9a1406 --- /dev/null +++ b/.codecov.yml @@ -0,0 +1,163 @@ +codecov: + #token: uuid # Your private repository token + #url: "http" # for Codecov Enterprise customers + #slug: "owner/repo" # for Codecov Enterprise customers + #branch: master # override the default branch + #bot: username # set user whom will be the consumer of oauth requests + #ci: # Custom CI domains if Codecov does not identify them automatically + # - ci.domain.com + # - !provider # ignore these providers when checking if CI passed + # # ex. You may test on Travis, Circle, and AppVeyor, but only need + # # to check if Travis passes. Therefore add: !circle and !appveyor + notify: + #after_n_builds: null # number of expected builds to recieve before sending notifications + # # after: check ci status unless disabled via require_ci_to_pass + require_ci_to_pass: yes # yes: will delay sending notifications until all ci is finished + # no: will send notifications without checking ci status and wait till "after_n_builds" are uploaded + #countdown: null # number of seconds to wait before first ci build check + #delay: null # number of seconds to wait between ci build checks + +coverage: + precision: 2 # 2 = xx.xx%, 0 = xx% + round: nearest # down|up|nearest - default down + # range: 50...60 # default 70...90. red...green + + #notify: + # irc: + # default: + # server: "chat.freenode.net"|encrypted + # branches: null # all branches by default + # threshold: 1% + # message: "Coverage {{changed}} for {{owner}}/{{repo}}" # customize the message + # flags: null + # paths: null + # + # slack: + # default: + # url: "http"|encrypted + # threshold: 1% + # branches: null # all branches by default + # message: "Coverage {{changed}} for {{owner}}/{{repo}}" # customize the message + # attachments: "sunburst, diff" + # only_pulls: false + # flags: null + # paths: null + # + # email: + # default: + # to: + # - example@domain.com + # - &author + # threshold: 1% + # only_pulls: false + # layout: header, diff, trends + # flags: null + # paths: null + # + # hipchat: + # default: + # url: "http"|encrypted + # room: name|id + # threshold: 1% + # token: encrypted + # branches: null # all branches by default + # notify: false # if the hipchat message is silent or loud (default false) + # message: "Coverage {{changed}} for {{owner}}/{{repo}}" # customize the message + # flags: null + # paths: null + # + # gitter: + # url: "http"|encrypted + # threshold: 1% + # branches: null # all branches by default + # message: "Coverage {{changed}} for {{owner}}/{{repo}}" # customize the message + # + # webhooks: + # _name_: + # url: "http"|encrypted + # threshold: 1% + # branches: null # all branches by default + + status: + project: + default: false # disable the default status that measures entire project + backend: # declare a new status context "backend" + against: parent + target: auto + threshold: null + #threshold: 1% + base: auto + if_no_uploads: error + if_not_found: success + if_ci_failed: error + only_pulls: false + #branches: + # - master + #flags: + # - integration + paths: + - backend/ # only include coverage in "backend/" folder + webapp: # declare a new status context "frontend" + against: parent + target: auto + threshold: null + #threshold: 1% + base: auto + if_no_uploads: error + if_not_found: success + if_ci_failed: error + only_pulls: false + #branches: + # - master + #flags: + # - integration + paths: + - webapp/ # only include coverage in "webapp/" folder + + #patch: + # default: + # against: parent + # target: 80% + # branches: null + # if_no_uploads: success + # if_not_found: success + # if_ci_failed: error + # only_pulls: false + # flags: + # - integration + # paths: + # - folder + + #changes: + # default: + # against: parent + # branches: null + # if_no_uploads: error + # if_not_found: success + # if_ci_failed: error + # only_pulls: false + # flags: + # - integration + # paths: + # - folder + + #flags: + # integration: + # branches: + # - master + # ignore: + # - app/ui + + #ignore: # files and folders for processing + # - tests/* + + #fixes: + # - "old_path::new_path" + +comment: + layout: header, diff, trends, uncovered, reach, files, tree, changes, sunburst, flags + branches: * + behavior: new # default = posts once then update, posts new if delete + # once = post once then updates + # new = delete old, post new + # spammy = post new \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 632786285..4d9a4c733 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,8 @@ addons: before_install: - yarn global add wait-on + # Install Codecov + - yarn global add codecov - yarn install - cp cypress.env.template.json cypress.env.json @@ -18,6 +20,7 @@ install: - wait-on http://localhost:7474 && docker-compose exec neo4j migrate script: + # Backend - docker-compose exec backend yarn run lint - docker-compose exec backend yarn run test:jest --ci --verbose=false - docker-compose exec backend yarn run db:reset @@ -25,10 +28,14 @@ script: - docker-compose exec backend yarn run test:cucumber - docker-compose exec backend yarn run db:reset - docker-compose exec backend yarn run db:seed + # Frontend - docker-compose exec webapp yarn run lint - docker-compose exec webapp yarn run test --ci --verbose=false - docker-compose exec -d backend yarn run test:before:seeder + # Fullstack - CYPRESS_RETRIES=1 yarn run cypress:run + # Coverage + - codecov after_success: - wget https://raw.githubusercontent.com/DiscordHooks/travis-ci-discord-webhook/master/send.sh diff --git a/docker-compose.travis.yml b/docker-compose.travis.yml index 8af3226e7..bc627a67a 100644 --- a/docker-compose.travis.yml +++ b/docker-compose.travis.yml @@ -11,6 +11,9 @@ services: build: context: webapp target: build-and-test + volumes: + #/nitro-web + - ./webapp/coverage:/nitro-web/coverage environment: - GRAPHQL_URI=http://backend:4000 backend: @@ -18,6 +21,8 @@ services: build: context: backend target: builder + volumes: + - ./backend/coverage:/nitro-backend/coverage ports: - 4001:4001 - 4123:4123