-
-
Notifications
You must be signed in to change notification settings - Fork 4
167 lines (161 loc) · 6.18 KB
/
itch_build_and_deploy.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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
name: Itch.io Deploy
on:
workflow_run:
workflows: ["Unit Tests"]
types: [completed]
branches: [edge, prod]
jobs:
export-windows:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
name: Windows Export
runs-on: ubuntu-20.04
container:
image: barichello/godot-ci:4.3
environment: Godot Dev Env
steps:
- name: Checkout
uses: actions/checkout@v4
with:
lfs: true
- name: Issue 120
run: |
mkdir -p /github/home/.config/godot
cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- name: Sanity check
run: ls /root/.local/share/godot/export_templates
- name: Setup
run: |
mkdir -v -p ~/.local/share/godot/export_templates
mv /root/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable ~/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable
- name: Initial Godot import
shell: bash
run: |
godot --quiet --editor --headless -s src/core/initial_import.gd || exit 0
godot --editor --headless --quit || exit 0
- name: Windows Build
run: |
mkdir -v -p dist/dino-windows
godot --headless -v --export-debug dino-windows dist/dino-windows/dino.exe || exit 0
- name: Sanity check
run: |
ls -alh dist/
ls -alh dist/dino-windows
stat dist/dino-windows/dino.exe
- name: Deploy windows to itch.io
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/dino-windows russmatney/dino:windows
export-linux:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
name: Linux Export
runs-on: ubuntu-20.04
container:
image: barichello/godot-ci:4.3
environment: Godot Dev Env
steps:
- name: Checkout
uses: actions/checkout@v4
with:
lfs: true
- name: Issue 120
run: |
mkdir -p /github/home/.config/godot
cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- name: Sanity check
run: ls /root/.local/share/godot/export_templates
- name: Setup
run: |
mkdir -v -p ~/.local/share/godot/export_templates
mv /root/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable ~/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable
- name: Initial Godot import
shell: bash
run: |
godot --quiet --editor --headless -s src/core/initial_import.gd || exit 0
godot --editor --headless --quit || exit 0
- name: Linux Build
run: |
mkdir -v -p dist/dino-linux
godot --headless -v --export-debug dino-linux dist/dino-linux/dino.x86_64 || exit 0
- name: Sanity check
run: |
ls -alh dist/
ls -alh dist/dino-linux
stat dist/dino-linux/dino.x86_64
- name: Deploy linux to itch.io
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/dino-linux russmatney/dino:linux
export-web:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
name: Web Export
runs-on: ubuntu-20.04
container:
image: barichello/godot-ci:4.3
environment: Godot Dev Env
steps:
- name: Checkout
uses: actions/checkout@v4
with:
lfs: true
- name: Issue 120
run: |
mkdir -p /github/home/.config/godot
cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- name: Sanity check
run: ls /root/.local/share/godot/export_templates
- name: Setup
run: |
mkdir -v -p ~/.local/share/godot/export_templates
mv /root/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable ~/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable
- name: Initial Godot import
shell: bash
run: |
godot --quiet --editor --headless -s src/core/initial_import.gd || exit 0
godot --editor --headless --quit || exit 0
- name: Web Build
run: |
mkdir -v -p dist/dino-web
godot --headless -v --export-debug dino-web dist/dino-web/index.html || exit 0
- name: Sanity check
run: |
ls -alh dist/
ls -alh dist/dino-web
stat dist/dino-web/index.html
- name: Deploy web build to itch.io (dino)
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/dino-web russmatney/dino:html5
- name: Deploy web build to itch.io (dino-web)
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/dino-web russmatney/dino-web:html5
# export-mac:
# if: ${{ github.event.workflow_run.conclusion == 'success' }}
# name: Mac Export
# runs-on: ubuntu-20.04
# container:
# image: barichello/godot-ci:4.3
# environment: Godot Dev Env
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# with:
# lfs: true
# - name: Issue 120
# run: |
# mkdir -p /github/home/.config/godot
# cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
# - name: Sanity check
# run: ls /root/.local/share/godot/export_templates
# - name: Setup
# run: |
# mkdir -v -p ~/.local/share/godot/export_templates
# mv /root/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable ~/.local/share/godot/export_templates/${{ vars.GODOT_VERSION }}.stable
# - name: Initial Godot import
# shell: bash
# run: |
# godot --quiet --editor --headless -s src/core/initial_import.gd || exit 0
# godot --editor --headless --quit || exit 0
# - name: Mac Build
# run: |
# mkdir -v -p dist/dino-macos
# godot --headless -v --export-debug dino-macos dist/dino-macos/dino.dmg || exit 0
# - name: Sanity check
# run: |
# ls -alh dist/
# ls -alh dist/dino-macos
# stat dist/dino-macos/dino.dmg
# - name: Deploy mac build to itch.io
# run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/dino-macos russmatney/dino:macos