Skip to content

Commit 6e07288

Browse files
Merge pull request #1 from christopher-buss/feature/mantle
build: add mantle support and ci builds (#3)
2 parents 85a63a8 + c41464a commit 6e07288

14 files changed

+780
-19408
lines changed

.github/dependabot.yml

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: npm
4+
directory: /
5+
schedule:
6+
interval: weekly
7+
groups:
8+
deps:
9+
dependency-type: production
10+
deps-dev:
11+
dependency-type: development

.github/workflows/ci.yml

+50
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
- develop
8+
9+
permissions:
10+
contents: write
11+
packages: write
12+
13+
jobs:
14+
build:
15+
runs-on: ubuntu-latest
16+
strategy:
17+
matrix:
18+
node-version: [20]
19+
20+
steps:
21+
- uses: actions/checkout@v4
22+
23+
- name: Install pnpm
24+
uses: pnpm/action-setup@v3
25+
with:
26+
version: 9
27+
28+
- name: Use Node.js ${{ matrix.node-version }}
29+
uses: actions/setup-node@v4
30+
with:
31+
node-version: ${{ matrix.node-version }}
32+
cache: pnpm
33+
34+
- name: Install dependencies
35+
run: pnpm install
36+
37+
- name: Setup Aftman
38+
uses: ok-nick/setup-aftman@v0.4.2
39+
with:
40+
token: ${{ secrets.GITHUB_TOKEN }}
41+
42+
- name: Lint
43+
run: |
44+
pnpm lint
45+
46+
- name: Compile
47+
run: pnpm build-prod
48+
49+
- name: Build project
50+
run: rojo build ./build.project.json --output place.rbxlx
+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Release Develop
2+
3+
on:
4+
push:
5+
branches:
6+
- develop
7+
paths-ignore:
8+
- README.md
9+
- LICENSE.md
10+
- 'scripts/**'
11+
- '.github/**'
12+
13+
permissions:
14+
contents: write
15+
packages: write
16+
17+
concurrency:
18+
group: development_environment
19+
cancel-in-progress: true
20+
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
25+
steps:
26+
- uses: actions/checkout@v4
27+
28+
- name: Install pnpm
29+
uses: pnpm/action-setup@v3
30+
with:
31+
version: 9
32+
33+
- name: Use Node.js 20
34+
uses: actions/setup-node@v4
35+
with:
36+
node-version: 20
37+
cache: pnpm
38+
39+
- name: Install dependencies
40+
run: pnpm install
41+
42+
- name: Compile
43+
run: pnpm build-dev --verbose
44+
45+
- name: Build project
46+
run: rojo build ./default.project.json --output place.rbxlx
47+
48+
- name: Upload place
49+
uses: actions/upload-artifact@v4
50+
with:
51+
name: place
52+
path: place.rbxlx
53+
54+
deploy:
55+
runs-on: ubuntu-latest
56+
environment: development
57+
needs: build
58+
59+
steps:
60+
- uses: actions/checkout@v4
61+
- uses: ok-nick/setup-aftman@v0.4.2
62+
with:
63+
token: ${{ secrets.GITHUB_TOKEN }}
64+
65+
- name: Download place artifact
66+
uses: actions/download-artifact@v3
67+
with:
68+
name: place
69+
70+
- name: Deploy place
71+
run: mantle deploy --environment development

.github/workflows/release.yml

+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths-ignore:
8+
- README.md
9+
- LICENSE.md
10+
- 'scripts/**'
11+
- '.github/**'
12+
13+
permissions:
14+
contents: write
15+
packages: write
16+
17+
concurrency:
18+
group: production_environment
19+
cancel-in-progress: true
20+
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
25+
steps:
26+
- uses: actions/checkout@v4
27+
28+
- name: Install pnpm
29+
uses: pnpm/action-setup@v3
30+
with:
31+
version: 9
32+
33+
- name: Use Node.js 20
34+
uses: actions/setup-node@v4
35+
with:
36+
node-version: 20
37+
cache: pnpm
38+
39+
- name: Install dependencies
40+
run: pnpm install
41+
42+
- name: Compile
43+
run: pnpm build-prod --verbose
44+
45+
- name: Build project
46+
run: rojo build ./build.project.json --output place.rbxlx
47+
48+
- name: Upload place
49+
uses: actions/upload-artifact@v4
50+
with:
51+
name: place
52+
path: place.rbxlx
53+
54+
deploy:
55+
runs-on: ubuntu-latest
56+
environment: production
57+
needs: build
58+
59+
steps:
60+
- uses: actions/checkout@v4
61+
- uses: ok-nick/setup-aftman@v0.4.2
62+
with:
63+
token: ${{ secrets.GITHUB_TOKEN }}
64+
65+
- name: Download place artifact
66+
uses: actions/download-artifact@v3
67+
with:
68+
name: place
69+
70+
- name: Deploy game
71+
run: mantle deploy --allow-purchases --environment production

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ flamework.build
1111
sourcemap.json
1212
*.rbxl.lock
1313
*.rbxl
14+
*.rbxlx
1415

1516
# Bundled eslint config
1617
*.mjs

0 commit comments

Comments
 (0)