Skip to content

Commit 610c42f

Browse files
committed
Switch from Travis CI to GitHub Actions
GitHub Actions should be significantly faster than Travis CI.
1 parent 43828eb commit 610c42f

File tree

3 files changed

+132
-75
lines changed

3 files changed

+132
-75
lines changed

.github/dependabot.yml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "daily"

.github/workflows/ci.yml

+126
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
name: Continuous integration
2+
on: [push, pull_request]
3+
4+
jobs:
5+
linux:
6+
name: Build (Linux, GCC)
7+
runs-on: ubuntu-16.04
8+
steps:
9+
- name: Checkout
10+
uses: actions/checkout@v2.3.4
11+
with:
12+
submodules: recursive
13+
14+
- name: Set up Python (for SCons)
15+
uses: actions/setup-python@v2
16+
with:
17+
python-version: '3.9.1'
18+
19+
- name: Install dependencies
20+
run: |
21+
sudo apt-get update -qq
22+
sudo apt-get install -qqq build-essential pkg-config
23+
python -m pip install scons
24+
25+
- name: Build godot-cpp
26+
run: |
27+
scons target=release generate_bindings=yes -j $(nproc)
28+
29+
- name: Upload artifact
30+
uses: actions/upload-artifact@v2.2.1
31+
with:
32+
name: godot-cpp-linux-glibc2.23-x86_64-release
33+
path: bin/libgodot-cpp.linux.release.64.a
34+
if-no-files-found: error
35+
36+
windows-msvc:
37+
name: Build (Windows, MSVC)
38+
runs-on: windows-2019
39+
steps:
40+
- name: Checkout
41+
uses: actions/checkout@v2.3.4
42+
with:
43+
submodules: recursive
44+
45+
- name: Set up Python (for SCons)
46+
uses: actions/setup-python@v2
47+
with:
48+
python-version: '3.9.1'
49+
50+
- name: Install dependencies
51+
run: |
52+
python -m pip install scons
53+
54+
- name: Build godot-cpp
55+
run: |
56+
scons target=release generate_bindings=yes -j $env:NUMBER_OF_PROCESSORS
57+
58+
- name: Upload artifact
59+
uses: actions/upload-artifact@v2.2.1
60+
with:
61+
name: godot-cpp-windows-msvc2019-x86_64-release
62+
path: bin/libgodot-cpp.windows.release.64.lib
63+
if-no-files-found: error
64+
65+
windows-mingw:
66+
name: Build (Windows, MinGW)
67+
runs-on: windows-2019
68+
steps:
69+
- name: Checkout
70+
uses: actions/checkout@v2.3.4
71+
with:
72+
submodules: recursive
73+
74+
- name: Set up Python (for SCons)
75+
uses: actions/setup-python@v2
76+
with:
77+
python-version: '3.9.1'
78+
79+
- name: Install dependencies
80+
run: |
81+
python -m pip install scons
82+
83+
- name: Build godot-cpp
84+
# Install GCC from Scoop as the default supplied GCC doesn't work ("Error 1").
85+
run: |
86+
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
87+
scoop install gcc
88+
g++ --version
89+
gcc --version
90+
scons target=release generate_bindings=yes use_mingw=yes -j $env:NUMBER_OF_PROCESSORS
91+
92+
- name: Upload artifact
93+
uses: actions/upload-artifact@v2.2.1
94+
with:
95+
name: godot-cpp-linux-mingw-x86_64-release
96+
path: bin/libgodot-cpp.windows.release.64.a
97+
if-no-files-found: error
98+
99+
macos:
100+
name: Build (macOS, Clang)
101+
runs-on: macos-11.0
102+
steps:
103+
- name: Checkout
104+
uses: actions/checkout@v2.3.4
105+
with:
106+
submodules: recursive
107+
108+
- name: Set up Python (for SCons)
109+
uses: actions/setup-python@v2
110+
with:
111+
python-version: '3.9.1'
112+
113+
- name: Install dependencies
114+
run: |
115+
python -m pip install scons
116+
117+
- name: Build godot-cpp
118+
run: |
119+
scons target=release generate_bindings=yes -j $(sysctl -n hw.logicalcpu)
120+
121+
- name: Upload artifact
122+
uses: actions/upload-artifact@v2.2.1
123+
with:
124+
name: godot-cpp-macos-x86_64-release
125+
path: bin/libgodot-cpp.osx.release.64.a
126+
if-no-files-found: error

.travis.yml

-75
This file was deleted.

0 commit comments

Comments
 (0)