-
-
Notifications
You must be signed in to change notification settings - Fork 0
125 lines (121 loc) · 4.42 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
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.2.2
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 addons/core/initial_import.gd || exit 0
godot --editor --headless --quit || exit 0
- name: Windows Build
run: |
mkdir -v -p dist/windows
godot --headless -v --export-debug windows dist/windows/blox.exe || exit 0
- name: Sanity check
run: |
ls -alh dist/
ls -alh dist/windows
stat dist/windows/blox.exe
- name: Deploy windows to itch.io
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/windows russmatney/blox:windows
export-linux:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
name: Linux Export
runs-on: ubuntu-20.04
container:
image: barichello/godot-ci:4.2.2
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 addons/core/initial_import.gd || exit 0
godot --editor --headless --quit || exit 0
- name: Linux Build
run: |
mkdir -v -p dist/linux
godot --headless -v --export-debug linux dist/linux/blox.x86_64 || exit 0
- name: Sanity check
run: |
ls -alh dist/
ls -alh dist/linux
stat dist/linux/blox.x86_64
- name: Deploy linux to itch.io
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/linux russmatney/blox:linux
export-web:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
name: Web Export
runs-on: ubuntu-20.04
container:
image: barichello/godot-ci:4.2.2
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 addons/core/initial_import.gd || exit 0
godot --editor --headless --quit || exit 0
- name: Web Build
run: |
mkdir -v -p dist/web
godot --headless -v --export-debug web dist/web/index.html || exit 0
- name: Sanity check
run: |
ls -alh dist/
ls -alh dist/web
stat dist/web/index.html
- name: Deploy web build to itch.io
run: BUTLER_API_KEY=${{secrets.BUTLER_API_KEY}} butler push dist/web russmatney/blox:html5