Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2021-07-22 14:27:15 +0300
committerJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2021-07-22 14:30:56 +0300
commit00105dca82d9fa61e287ba2ff73b1d8b1f01fafb (patch)
tree96c155218001a53da71d261b213f3db80eb6bf69 /.github
parent7ca81f360f42341b2941798374160d362507ba26 (diff)
Add proper node testing
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/node-tests.yml91
1 files changed, 91 insertions, 0 deletions
diff --git a/.github/workflows/node-tests.yml b/.github/workflows/node-tests.yml
new file mode 100644
index 00000000000..fbb280873d8
--- /dev/null
+++ b/.github/workflows/node-tests.yml
@@ -0,0 +1,91 @@
+name: Node
+
+on:
+ pull_request:
+ push:
+ branches:
+ - master
+ - stable*
+
+jobs:
+ versions:
+ runs-on: ubuntu-latest
+ outputs:
+ nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
+ npmVersion: ${{ steps.versions.outputs.npmVersion }}
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Read package.json node and npm engines version
+ uses: skjnldsv/read-package-engines-version-actions@v1.1
+ id: versions
+ with:
+ fallbackNode: '^12'
+ fallbackNpm: '^6'
+
+ test:
+ runs-on: ubuntu-latest
+ needs: versions
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Set up node ${{ needs.versions.outputs.nodeVersion }}
+ uses: actions/setup-node@v2
+ with:
+ node-version: ${{ needs.versions.outputs.nodeVersion }}
+
+ - name: Set up npm ${{ needs.versions.outputs.npmVersion }}
+ run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
+
+ - name: Install dependencies
+ run: npm ci
+
+ - name: Test
+ run: npm run test
+
+ jsunit:
+ runs-on: ubuntu-latest
+ needs: versions
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Set up node ${{ needs.versions.outputs.nodeVersion }}
+ uses: actions/setup-node@v2
+ with:
+ node-version: ${{ needs.versions.outputs.nodeVersion }}
+
+ # This test requires npm6 for some reason
+ # TODO: fix this and/or move away from jsunit
+ - name: Set up npm 6
+ run: npm i -g npm@^6
+
+ - name: Test
+ run: ./autotest-js.sh
+
+ handlebars:
+ runs-on: ubuntu-latest
+ needs: versions
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Set up node ${{ needs.versions.outputs.nodeVersion }}
+ uses: actions/setup-node@v2
+ with:
+ node-version: ${{ needs.versions.outputs.nodeVersion }}
+
+ - name: Set up npm ${{ needs.versions.outputs.npmVersion }}
+ run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
+
+ - name: Install dependencies
+ run: npm ci
+
+ - name: Run compile
+ run: ./build/compile-handlebars-templates.sh