Skip to content

Commit 4f627c9

Browse files
authored
Initial commit
0 parents  commit 4f627c9

File tree

24 files changed

+1186
-0
lines changed

24 files changed

+1186
-0
lines changed

.github/workflows/deployment.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Deploy GitHub Pages
2+
3+
on:
4+
push:
5+
branches: ["main"]
6+
7+
workflow_dispatch:
8+
inputs:
9+
page-root-directory:
10+
description: Page root directory
11+
default: './dist/'
12+
type: string
13+
14+
permissions:
15+
contents: read
16+
pages: write
17+
id-token: write
18+
19+
concurrency:
20+
group: "pages"
21+
cancel-in-progress: false
22+
23+
jobs:
24+
deploy:
25+
name: Deploy Pages
26+
# Deploy only to Github Pages if repository name ends with .github.io
27+
if: ${{ github.event.repository.name == format('{0}.github.io', github.repository_owner) }}
28+
env:
29+
deno-version: v2.x
30+
page-root-directory: './dist/'
31+
32+
runs-on: ubuntu-latest
33+
steps:
34+
- name: Setup Repository (${{github.event.repository.name}})
35+
uses: actions/checkout@v4
36+
37+
- name: Setup Deno (${{env.deno-version}})
38+
uses: denoland/setup-deno@v2
39+
with:
40+
deno-version: ${{env.deno-version}}
41+
42+
- name: Build page
43+
run: deno task build
44+
45+
- name: Upload build artifact (Automatic)
46+
if: (!github.event.inputs.page-root-directory)
47+
uses: actions/upload-artifact@v4
48+
with:
49+
path: ${{env.page-root-directory}}
50+
51+
- name: Upload build artifact (Workflow Dispatch)
52+
if: (github.event.inputs.page-root-directory)
53+
uses: actions/upload-artifact@v4
54+
with:
55+
path: ${{github.event.inputs.page-root-directory}}
56+
57+
- name: Setup pages
58+
uses: actions/configure-pages@v4
59+
60+
- name: Upload page artifact (Automatic)
61+
if: (!github.event.inputs.page-root-directory)
62+
uses: actions/upload-pages-artifact@v2
63+
with:
64+
path: ${{env.page-root-directory}}
65+
66+
- name: Upload page artifact (Workflow Dispatch)
67+
if: (github.event.inputs.page-root-directory)
68+
uses: actions/upload-pages-artifact@v2
69+
with:
70+
path: ${{github.event.inputs.page-root-directory}}
71+
72+
- name: Deploy to GitHub Pages
73+
id: deployment
74+
uses: actions/deploy-pages@v3
75+

.github/workflows/lint.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: Run Linter
2+
3+
on:
4+
push:
5+
branches: ["main"]
6+
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
checks: write
13+
14+
jobs:
15+
lint:
16+
name: Lint
17+
runs-on: ubuntu-latest
18+
env:
19+
deno-version: v2.x
20+
21+
steps:
22+
- name: Setup Repository (${{github.event.repository.name}})
23+
uses: actions/checkout@v4
24+
25+
- name: Setup Deno (${{env.deno-version}})
26+
uses: denoland/setup-deno@v2
27+
with:
28+
deno-version: ${{env.deno-version}}
29+
30+
- name: Run Linter
31+
run: deno task lint
32+

.github/workflows/test.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Run Unit Tests
2+
3+
on:
4+
push:
5+
branches: ["main"]
6+
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
checks: write
13+
14+
jobs:
15+
test:
16+
name: Unit Test
17+
runs-on: ubuntu-latest
18+
env:
19+
deno-version: v2.x
20+
21+
steps:
22+
- name: Setup Repository (${{github.event.repository.name}})
23+
uses: actions/checkout@v4
24+
25+
- name: Setup Deno (${{env.deno-version}})
26+
uses: denoland/setup-deno@v2
27+
with:
28+
deno-version: ${{env.deno-version}}
29+
30+
- name: Run Tests
31+
run: deno task test
32+
33+
- name: Generate jUnit Report
34+
uses: mikepenz/action-junit-report@v4
35+
with:
36+
report_paths: 'reports/report.xml'
37+

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
.vscode/
2+
dist/
3+
reports/

0 commit comments

Comments
 (0)