Introduce deno workspace. #758
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Browser CI | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
permissions: | |
contents: read | |
jobs: | |
pages: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.x | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: v18.x | |
- name: Install dependencies | |
run: | | |
npm install -g typescript | |
npm install -g typedoc | |
npm install -g esbuild | |
- name: Build docs for @hpke/hpke-js | |
working-directory: ./x/hpke-js | |
run: | | |
npx typedoc --name "@hpke/hpke-js $(git describe --tags --abbrev=0)" --out test/runtimes/browsers/pages/docs mod.ts | |
deno task dnt | |
deno task minify > test/runtimes/browsers/pages/src/hpke.js | |
mkdir test/runtimes/browsers/pages/core | |
cp -rf ../core/test/runtimes/browsers/pages/* test/runtimes/browsers/pages/core | |
mkdir test/runtimes/browsers/pages/chacha20poly1305 | |
cp -rf ../chacha20poly1305/test/runtimes/browsers/pages/* test/runtimes/browsers/pages/chacha20poly1305 | |
mkdir test/runtimes/browsers/pages/dhkem-x25519 | |
cp -rf ../dhkem-x25519/test/runtimes/browsers/pages/* test/runtimes/browsers/pages/dhkem-x25519 | |
mkdir test/runtimes/browsers/pages/dhkem-x448 | |
cp -rf ../dhkem-x448/test/runtimes/browsers/pages/* test/runtimes/browsers/pages/dhkem-x448 | |
mkdir test/runtimes/browsers/pages/hybridkem-x25519-kyber768 | |
cp -rf ../hybridkem-x25519-kyber768/test/runtimes/browsers/pages/* test/runtimes/browsers/pages/hybridkem-x25519-kyber768 | |
mkdir test/runtimes/browsers/pages/dhkem-secp256k1 | |
cp -rf ../dhkem-secp256k1/test/runtimes/browsers/pages/* test/runtimes/browsers/pages/dhkem-secp256k1 | |
- name: Build docs for @hpke/core | |
working-directory: ./x/core | |
run: | | |
npx typedoc --name "@hpke/core $(git describe --tags --abbrev=0)" --out ../hpke-js/test/runtimes/browsers/pages/core/docs mod.ts | |
deno task dnt | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/core/src/hpke-core.js | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/dhkem-x25519/src/hpke-core.js | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/dhkem-x448/src/hpke-core.js | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/chacha20poly1305/src/hpke-core.js | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/hybridkem-x25519-kyber768/src/hpke-core.js | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/dhkem-secp256k1/src/hpke-core.js | |
- name: Build docs for @hpke/chacha20poly1305 | |
working-directory: ./x/chacha20poly1305 | |
run: | | |
npx typedoc --name "@hpke/chacha20poly1305 $(git describe --tags --abbrev=0)" --out ../hpke-js/test/runtimes/browsers/pages/chacha20poly1305/docs mod.ts | |
deno task dnt | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/chacha20poly1305/src/hpke-chacha20poly1305.js | |
- name: Build docs for @hpke/dhkem-x25519 | |
working-directory: ./x/dhkem-x25519 | |
run: | | |
npx typedoc --name "@hpke/dhkem-x25519 $(git describe --tags --abbrev=0)" --out ../hpke-js/test/runtimes/browsers/pages/dhkem-x25519/docs mod.ts | |
deno task dnt | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/dhkem-x25519/src/hpke-dhkem-x25519.js | |
- name: Build docs for @hpke/dhkem-x448 | |
working-directory: ./x/dhkem-x448 | |
run: | | |
npx typedoc --name "@hpke/dhkem-x448 $(git describe --tags --abbrev=0)" --out ../hpke-js/test/runtimes/browsers/pages/dhkem-x448/docs mod.ts | |
deno task dnt | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/dhkem-x448/src/hpke-dhkem-x448.js | |
- name: Build docs for @hpke/hybridkem-x25519-kyber768 | |
working-directory: ./x/hybridkem-x25519-kyber768 | |
run: | | |
npx typedoc --name "@hpke/hybridkem-x25519-kyber768 $(git describe --tags --abbrev=0)" --out ../hpke-js/test/runtimes/browsers/pages/hybridkem-x25519-kyber768/docs mod.ts | |
deno task dnt | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/hybridkem-x25519-kyber768/src/hpke-hybridkem-x25519-kyber768.js | |
- name: Build docs for @hpke/dhkem-secp256k1 | |
working-directory: ./x/dhkem-secp256k1 | |
run: | | |
npx typedoc --name "@hpke/dhkem-secp256k1 $(git describe --tags --abbrev=0)" --out ../hpke-js/test/runtimes/browsers/pages/dhkem-secp256k1/docs mod.ts | |
deno task dnt | |
deno task minify > ../hpke-js/test/runtimes/browsers/pages/dhkem-secp256k1/src/hpke-dhkem-secp256k1.js | |
- uses: peaceiris/actions-gh-pages@v3 | |
with: | |
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
publish_dir: ./test/runtimes/browsers/pages | |
playwright-test: | |
needs: pages | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
- uses: microsoft/playwright-github-action@v1 | |
- working-directory: ./x/core/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test | |
- working-directory: ./x/dhkem-x25519/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test | |
- working-directory: ./x/dhkem-x448/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test | |
- working-directory: ./x/chacha20poly1305/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test | |
- working-directory: ./x/hybridkem-x25519-kyber768/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test | |
- working-directory: ./x/dhkem-secp256k1/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test | |
- working-directory: ./x/hpke-js/test/runtimes/browsers | |
run: npm install && npx playwright install && npx playwright test |