Skip to content

Commit 8833dfe

Browse files
committed
feat: add CI/CD scripts
1 parent 56c29b8 commit 8833dfe

File tree

4 files changed

+84
-5
lines changed

4 files changed

+84
-5
lines changed

.github/workflows/ci.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches:
7+
- main
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
test:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout code
17+
uses: actions/checkout@v4
18+
19+
- name: Setup Node.js
20+
uses: actions/setup-node@v4
21+
with:
22+
node-version: 20
23+
cache: 'npm'
24+
25+
- name: Install dependencies
26+
run: npm ci
27+
28+
- name: Lint
29+
run: npm run lint
30+
31+
- name: Build
32+
run: npm run build

.github/workflows/release.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- '*.*.*'
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout code
16+
uses: actions/checkout@v4
17+
18+
- name: Setup Node.js
19+
uses: actions/setup-node@v4
20+
with:
21+
node-version: 20
22+
cache: 'npm'
23+
24+
- name: Install dependencies
25+
run: npm ci
26+
27+
- name: Build
28+
run: npm run build
29+
30+
- name: Create release
31+
uses: softprops/action-gh-release@v2
32+
with:
33+
files: |
34+
main.js
35+
manifest.json
36+
styles.css
37+
name: Release ${{ github.ref_name }}
38+
draft: false
39+
prerelease: false
40+
env:
41+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

package-lock.json

Lines changed: 4 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,18 @@
66
"scripts": {
77
"dev": "node esbuild.config.mjs",
88
"build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
9-
"version": "node version-bump.mjs && git add manifest.json versions.json"
9+
"lint": "eslint . --ext .ts",
10+
"version": "node version-bump.mjs && git add manifest.json versions.json",
11+
"release:patch": "npm version patch && git push --follow-tags",
12+
"release:minor": "npm version minor && git push --follow-tags",
13+
"release:major": "npm version major && git push --follow-tags"
1014
},
1115
"keywords": [
1216
"games",
1317
"video games",
1418
"igdb",
1519
"obsidian",
16-
"plugin"
20+
"plugin"
1721
],
1822
"author": "David Mohundro",
1923
"license": "MIT",
@@ -23,6 +27,7 @@
2327
"@typescript-eslint/parser": "5.29.0",
2428
"builtin-modules": "^4.0.0",
2529
"esbuild": "^0.25.0",
30+
"eslint": "^8.57.1",
2631
"obsidian": "latest",
2732
"prettier": "^3.5.3",
2833
"tslib": "2.6.2",

0 commit comments

Comments
 (0)