diff --git a/.circleci/config.yml b/.circleci/config.yml index 99c75ef2b4..4b691d54ce 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -201,44 +201,6 @@ jobs: command: .circleci/slack-notification.sh - wkorg_nightly: - docker: - - image: scalableminds/puppeteer:fix_wk_nightly - resource_class: large - steps: - - checkout - - run: - name: Install dependencies - command: | - yarn install --immutable - - - run: - name: Assert GZIP - command: | - # Test gzipped assets - curl -s -I -H "Accept-Encoding: gzip" https://webknossos.org/assets/bundle/main.js | grep -q "content-encoding: gzip" - curl -s -I -H "Accept-Encoding: gzip" https://webknossos.org/assets/bundle/main.css | grep -q "content-encoding: gzip" - # Test gzipped buckets - curl -s -i \ - -H 'accept: application/octet-stream' \ - -H 'Accept-Encoding: gzip' \ - -H 'content-type: application/json' \ - --data-raw '[{"position":[2752,4320,1728],"additionalCoordinates":[],"mag":[1,1,1],"cubeSize":32,"fourBit":false}]' \ - 'https://data-humerus.webknossos.org/data/datasets/scalable_minds/l4dense_motta_et_al_demo/layers/segmentation/data?token=' \ - | grep -q "content-encoding: gzip" - echo Success. - - - run: - name: Run screenshot-tests - command: | - # CircleCI cancels the job after 60 minutes. To ensure that screenshots are still - # uploaded as artifacts, we define a timeout of 50 minutes for the screenshot tests. - timeout 3000 \ - yarn test-wkorg-screenshot - - - store_artifacts: - path: frontend/javascripts/test/screenshots-wkorg - workflows: version: 2 circleci_build: diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index e6ea47545a..0bb5d08c45 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -7,7 +7,7 @@ on: - cron: '0 0 * * *' jobs: - nightly: + nightly-screenshot-tests: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/wkorg-nightly.yaml b/.github/workflows/wkorg-nightly.yaml index 8a4e8dbab7..532196e477 100644 --- a/.github/workflows/wkorg-nightly.yaml +++ b/.github/workflows/wkorg-nightly.yaml @@ -15,4 +15,45 @@ jobs: - name: Checkout code uses: actions/checkout@v3 - \ No newline at end of file + - uses: actions/setup-node@v4 + with: + node-version: 18 + + - name: Install dependencies + run: | + corepack enable && yarn install --immutable + + - name: Run screenshot tests + run: | + yarn test-wkorg-screenshot + env: + URL: https://webknossos.org/ + WK_AUTH_TOKEN: ${{ secrets.WK_AUTH_TOKEN }} + BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }} + BROWSERSTACK_ACCESS_KEY : ${{ secrets.BROWSERSTACK_ACCESS_KEY }} + + - name: Upload screenshots as artifact + uses: actions/upload-artifact@v3 + with: + name: screenshots + path: frontend/javascripts/test/screenshots-wkorg + + + nightly-gzip-test: + runs-on: ubuntu-latest + + steps: + - name: Assert GZIP is enabled + run: | + # Test gzipped assets + curl -s -I -H "Accept-Encoding: gzip" https://webknossos.org/assets/bundle/main.js | grep -q "content-encoding: gzip" + curl -s -I -H "Accept-Encoding: gzip" https://webknossos.org/assets/bundle/main.css | grep -q "content-encoding: gzip" + # Test gzipped buckets + curl -s -i \ + -H 'accept: application/octet-stream' \ + -H 'Accept-Encoding: gzip' \ + -H 'content-type: application/json' \ + --data-raw '[{"position":[2752,4320,1728],"additionalCoordinates":[],"mag":[1,1,1],"cubeSize":32,"fourBit":false}]' \ + 'https://data-humerus.webknossos.org/data/datasets/scalable_minds/l4dense_motta_et_al_demo/layers/segmentation/data?token=' \ + | grep -q "content-encoding: gzip" + echo Success. \ No newline at end of file diff --git a/CHANGELOG.unreleased.md b/CHANGELOG.unreleased.md index 002a53300e..da92fa4624 100644 --- a/CHANGELOG.unreleased.md +++ b/CHANGELOG.unreleased.md @@ -20,7 +20,8 @@ For upgrade instructions, please check the [migration guide](MIGRATIONS.released ### Changed - Some mesh-related actions were disabled in proofreading-mode when using meshfiles that were created for a mapping rather than an oversegmentation. [#8091](https://github.com/scalableminds/webknossos/pull/8091) - Admins can now see and cancel all jobs. The owner of the job is shown in the job list. [#8112](https://github.com/scalableminds/webknossos/pull/8112) -- Migrated nightlx screenshot tests from CircleCI to GitHub actions. [#8134](https://github.com/scalableminds/webknossos/pull/8134) +- Migrated nightly screenshot tests from CircleCI to GitHub actions. [#8134](https://github.com/scalableminds/webknossos/pull/8134) +- Migrated nightly screenshot tests for wk.org from CircleCI to GitHub actions. [#8135](https://github.com/scalableminds/webknossos/pull/8135) ### Fixed - Fixed a bug during dataset upload in case the configured `datastore.baseFolder` is an absolute path. [#8098](https://github.com/scalableminds/webknossos/pull/8098) [#8103](https://github.com/scalableminds/webknossos/pull/8103)