-
Notifications
You must be signed in to change notification settings - Fork 99
143 lines (140 loc) · 3.71 KB
/
CI.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
name: CI
on: [ push, pull_request ]
env:
RUNELITE_PROFILE: ${{ vars.RUNELITE_PROFILE }}
jobs:
windows:
runs-on: windows-2022
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- run: choco install innosetup --version 6.4.0
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 11
distribution: temurin
cache: gradle
- uses: ilammy/msvc-dev-cmd@v1 # for nmake
with:
arch: x64
- name: build detours x64
shell: cmd
run: |
cd detours/src
nmake
- uses: ilammy/msvc-dev-cmd@v1 # for nmake
with:
arch: x86
- name: build detours x86
shell: cmd
run: |
cd detours/src
nmake
- uses: ilammy/msvc-dev-cmd@v1 # for nmake
with:
arch: amd64_arm64
- name: build detours aarch64
shell: cmd
run: |
cd detours/src
nmake
- name: build launcher
run: ./gradlew build -P RUNELITE_BUILD=$env:RUNELITE_PROFILE --no-daemon
- name: x64 installer
shell: bash
run: ./build-win64.sh
- name: x86 installer
shell: bash
run: ./build-win32.sh
- name: AArch64 installer
shell: bash
run: ./build-win-aarch64.sh
- uses: actions/upload-artifact@v4
with:
name: windows
path: |
RuneLiteSetup.exe
RuneLiteSetup32.exe
RuneLiteSetupAArch64.exe
if-no-files-found: error
linux:
runs-on: ubuntu-20.04
steps:
- run: sudo apt update
- run: sudo apt install -y gcc-9-aarch64-linux-gnu g++-9-aarch64-linux-gnu
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 11
distribution: temurin
cache: gradle
- name: build
run: ./gradlew build -P RUNELITE_BUILD=$RUNELITE_PROFILE
- name: linux-x64
run: ./build-linux-x86_64.sh
- name: linux-aarch64
run: ./build-linux-aarch64.sh
- uses: actions/upload-artifact@v4
with:
name: jar
path: build/libs/RuneLite.jar
if-no-files-found: error
- uses: actions/upload-artifact@v4
with:
name: linux
path: |
RuneLite.AppImage
RuneLite-aarch64.AppImage
if-no-files-found: error
macos:
runs-on: macos-13
steps:
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 11
distribution: temurin
cache: gradle
- name: build
run: ./gradlew build -P RUNELITE_BUILD=$RUNELITE_PROFILE
- name: clone create-dmg
run: git clone https://github.com/runelite/create-dmg -b runelite-1.0
- name: build create-dmg
run: |
set -e
cd create-dmg
npm install
ln -s cli.js create-dmg
chmod +x create-dmg
- run: echo create-dmg >> $GITHUB_PATH
- name: macos-x64
run: ./build-osx-x64.sh --build --dmg
- name: macos-aarch64
run: ./build-osx-aarch64.sh --build --dmg
# tar app to keep permissions correct
- name: tar app
run: tar -cf app.tar build/macos-x64/RuneLite.app build/macos-aarch64/RuneLite.app build-osx-x64.sh build-osx-aarch64.sh osx/signing.entitlements
- uses: actions/upload-artifact@v4
with:
name: macos-dmg
path: |
RuneLite-x64.dmg
RuneLite-aarch64.dmg
if-no-files-found: error
- uses: actions/upload-artifact@v4
with:
name: macos-app
path: |
app.tar
if-no-files-found: error