tests: Switch from Travis to Github Actions

Travis placed an unnecessary breaking restriction on our tests and failed to respond within 72 hours to our complaint.  This has forced us to introduce Github Actions to manage our testing.  This is hopefully a temporary measure while Travis either gets itself together or we find a non-Github requirement.
This commit is contained in:
webzwo0i 2020-11-24 19:12:41 +01:00 committed by GitHub
parent 6665c4693f
commit b71b606774
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 291 additions and 1 deletions

53
.github/workflows/load-test.yml vendored Normal file
View file

@ -0,0 +1,53 @@
name: "Loadtest"
# any branch is useful for testing before a PR is submitted
on: [push, pull_request]
jobs:
withoutplugins:
# run on pushes to any branch
# run on PRs from external forks
if: |
(github.event_name != 'pull_request')
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
name: without plugins
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Install all dependencies and symlink for ep_etherpad-lite
run: bin/installDeps.sh
- name: Install etherpad-load-test
run: sudo npm install -g etherpad-load-test
- name: Run load test
run: tests/frontend/travis/runnerLoadTest.sh
withplugins:
# run on pushes to any branch
# run on PRs from external forks
if: |
(github.event_name != 'pull_request')
|| (github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id)
name: with Plugins
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Install all dependencies and symlink for ep_etherpad-lite
run: bin/installDeps.sh
- name: Install etherpad-load-test
run: sudo npm install -g etherpad-load-test
- name: Install etherpad plugins
run: npm install ep_align ep_author_hover ep_cursortrace ep_font_size ep_hash_auth ep_headings2 ep_markdown ep_readonly_guest ep_spellcheck ep_subscript_and_superscript ep_table_of_contents
# configures some settings and runs npm run test
- name: Run load test
run: tests/frontend/travis/runnerLoadTest.sh