You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
2.5 KiB

  1. # Runs randomly generated E2E testnets nightly on master
  2. # !! If you change something in this file, you probably want
  3. # to update the e2e-nightly-34x workflow as well!
  4. name: e2e-nightly-master
  5. on:
  6. workflow_dispatch: # allow running workflow manually
  7. schedule:
  8. - cron: '0 2 * * *'
  9. jobs:
  10. e2e-nightly-test-2:
  11. # Run parallel jobs for the listed testnet groups (must match the
  12. # ./build/generator -g flag)
  13. strategy:
  14. fail-fast: false
  15. matrix:
  16. p2p: ['legacy', 'new', 'hybrid']
  17. group: ['00', '01', '02', '03']
  18. runs-on: ubuntu-latest
  19. timeout-minutes: 60
  20. steps:
  21. - uses: actions/setup-go@v2
  22. with:
  23. go-version: '1.16'
  24. - uses: actions/checkout@v2
  25. - name: Build
  26. working-directory: test/e2e
  27. # Run make jobs in parallel, since we can't run steps in parallel.
  28. run: make -j2 docker generator runner
  29. - name: Generate testnets
  30. working-directory: test/e2e
  31. # When changing -g, also change the matrix groups above
  32. run: ./build/generator -g 4 -d networks/nightly/${{ matrix.p2p }} -p ${{ matrix.p2p }}
  33. - name: Run ${{ matrix.p2p }} p2p testnets in group ${{ matrix.group }}
  34. working-directory: test/e2e
  35. run: ./run-multiple.sh networks/nightly/${{ matrix.p2p }}/*-group${{ matrix.group }}-*.toml
  36. e2e-nightly-fail-2:
  37. needs: e2e-nightly-test-2
  38. if: ${{ failure() }}
  39. runs-on: ubuntu-latest
  40. steps:
  41. - name: Notify Slack on failure
  42. uses: rtCamp/action-slack-notify@f565a63638bd3615e76249bffab00fcb9dab90f7
  43. env:
  44. SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
  45. SLACK_CHANNEL: tendermint-internal
  46. SLACK_USERNAME: Nightly E2E Tests
  47. SLACK_ICON_EMOJI: ':skull:'
  48. SLACK_COLOR: danger
  49. SLACK_MESSAGE: Nightly E2E tests failed on master
  50. SLACK_FOOTER: ''
  51. e2e-nightly-success: # may turn this off once they seem to pass consistently
  52. needs: e2e-nightly-test-2
  53. if: ${{ success() }}
  54. runs-on: ubuntu-latest
  55. steps:
  56. - name: Notify Slack on success
  57. uses: rtCamp/action-slack-notify@f565a63638bd3615e76249bffab00fcb9dab90f7
  58. env:
  59. SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
  60. SLACK_CHANNEL: tendermint-internal
  61. SLACK_USERNAME: Nightly E2E Tests
  62. SLACK_ICON_EMOJI: ':white_check_mark:'
  63. SLACK_COLOR: good
  64. SLACK_MESSAGE: Nightly E2E tests passed on master
  65. SLACK_FOOTER: ''