CI: Sync configuration with master branch
- Factors out common arguments in SCONSFLAGS - Upload artifacts - Disable debug symbols for release templates
This commit is contained in:
parent
438e4f1e1a
commit
3ebd5a2301
7 changed files with 103 additions and 45 deletions
24
.github/workflows/android_builds.yml
vendored
24
.github/workflows/android_builds.yml
vendored
|
@ -1,9 +1,10 @@
|
||||||
name: 🤖 Android Builds
|
name: 🤖 Android Builds
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
|
|
||||||
# Global Cache Settings
|
# Global Settings
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: 3.2
|
GODOT_BASE_BRANCH: 3.2
|
||||||
|
SCONSFLAGS: platform=android verbose=yes warnings=all werror=yes --jobs=2
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
@ -18,25 +19,21 @@ jobs:
|
||||||
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||||
- name: Make apt sources.list use the default Ubuntu repositories
|
- name: Make apt sources.list use the default Ubuntu repositories
|
||||||
run: |
|
run: |
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
|
||||||
# The system image has a non-working Java version:
|
# Install dependencies
|
||||||
# /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/java
|
- name: Install Java, Android SDK and NDK
|
||||||
# openjdk version "11.0.8" 2020-07-14
|
|
||||||
# Install the official version.
|
|
||||||
- name: Install Java
|
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get install openjdk-8-jdk
|
sudo apt-get install openjdk-8-jdk
|
||||||
sudo update-java-alternatives -s java-1.8.0-openjdk-amd64
|
sudo update-java-alternatives -s java-1.8.0-openjdk-amd64
|
||||||
echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $GITHUB_ENV
|
echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Install Android SDK and NDK
|
|
||||||
run: |
|
|
||||||
java -version
|
java -version
|
||||||
misc/ci/android-tools-linux.sh
|
misc/ci/android-tools-linux.sh
|
||||||
echo "ANDROID_HOME=$(pwd)/godot-dev/build-tools/android-sdk" >> $GITHUB_ENV
|
echo "ANDROID_HOME=$(pwd)/godot-dev/build-tools/android-sdk" >> $GITHUB_ENV
|
||||||
echo "ANDROID_NDK_ROOT=$(pwd)/godot-dev/build-tools/android-ndk" >> $GITHUB_ENV
|
echo "ANDROID_NDK_ROOT=$(pwd)/godot-dev/build-tools/android-ndk" >> $GITHUB_ENV
|
||||||
|
source ~/.bashrc
|
||||||
|
|
||||||
# Upload cache on completion and check it out now
|
# Upload cache on completion and check it out now
|
||||||
- name: Load .scons_cache directory
|
- name: Load .scons_cache directory
|
||||||
|
@ -71,4 +68,11 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=android target=release tools=no
|
scons target=release tools=no
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
12
.github/workflows/ios_builds.yml
vendored
12
.github/workflows/ios_builds.yml
vendored
|
@ -1,9 +1,10 @@
|
||||||
name: 🍏 iOS Builds
|
name: 🍏 iOS Builds
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
|
|
||||||
# Global Cache Settings
|
# Global Settings
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: 3.2
|
GODOT_BASE_BRANCH: 3.2
|
||||||
|
SCONSFLAGS: platform=iphone verbose=yes warnings=all werror=yes --jobs=2
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
@ -47,4 +48,11 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=iphone target=release tools=no
|
scons target=release tools=no
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
13
.github/workflows/javascript_builds.yml
vendored
13
.github/workflows/javascript_builds.yml
vendored
|
@ -1,9 +1,10 @@
|
||||||
name: 🌐 JavaScript Builds
|
name: 🌐 JavaScript Builds
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
|
|
||||||
# Global Cache Settings
|
# Global Settings
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: 3.2
|
GODOT_BASE_BRANCH: 3.2
|
||||||
|
SCONSFLAGS: platform=javascript verbose=yes warnings=all werror=yes --jobs=2
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
EM_VERSION: 1.39.20
|
EM_VERSION: 1.39.20
|
||||||
EM_CACHE_FOLDER: 'emsdk-cache'
|
EM_CACHE_FOLDER: 'emsdk-cache'
|
||||||
|
@ -19,6 +20,7 @@ jobs:
|
||||||
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||||
- name: Make apt sources.list use the default Ubuntu repositories
|
- name: Make apt sources.list use the default Ubuntu repositories
|
||||||
run: |
|
run: |
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
|
||||||
|
@ -73,4 +75,11 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=javascript target=release tools=no use_closure_compiler=yes
|
scons target=release tools=no use_closure_compiler=yes
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
35
.github/workflows/linux_builds.yml
vendored
35
.github/workflows/linux_builds.yml
vendored
|
@ -1,13 +1,14 @@
|
||||||
name: 🐧 Linux Builds
|
name: 🐧 Linux Builds
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
|
|
||||||
# Global Cache Settings
|
# Global Settings
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: 3.2
|
GODOT_BASE_BRANCH: 3.2
|
||||||
|
SCONSFLAGS: platform=linuxbsd verbose=yes warnings=all werror=yes --jobs=2
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
linux-editor:
|
linux-editor-mono:
|
||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
name: Editor w/ Mono (target=release_debug, tools=yes)
|
name: Editor w/ Mono (target=release_debug, tools=yes)
|
||||||
|
|
||||||
|
@ -17,6 +18,7 @@ jobs:
|
||||||
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||||
- name: Make apt sources.list use the default Ubuntu repositories
|
- name: Make apt sources.list use the default Ubuntu repositories
|
||||||
run: |
|
run: |
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
|
||||||
|
@ -60,9 +62,16 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=x11 tools=yes target=release_debug module_mono_enabled=yes mono_glue=no
|
scons tools=yes target=release_debug module_mono_enabled=yes mono_glue=no
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
linux-template:
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
||||||
|
linux-template-mono:
|
||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
name: Template w/ Mono (target=release, tools=no)
|
name: Template w/ Mono (target=release, tools=no)
|
||||||
|
|
||||||
|
@ -72,6 +81,7 @@ jobs:
|
||||||
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||||
- name: Make apt sources.list use the default Ubuntu repositories
|
- name: Make apt sources.list use the default Ubuntu repositories
|
||||||
run: |
|
run: |
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
|
||||||
|
@ -114,9 +124,16 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=x11 target=release tools=no module_mono_enabled=yes mono_glue=no
|
scons target=release tools=no module_mono_enabled=yes mono_glue=no debug_symbols=no
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
linux-sanitizer:
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
||||||
|
linux-editor-sanitizers:
|
||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
name: Editor and exported project with sanitizers (target=debug/release, tools=yes/no, debug_symbols=yes/full, use_ubsan=yes, use_asan=yes)
|
name: Editor and exported project with sanitizers (target=debug/release, tools=yes/no, debug_symbols=yes/full, use_ubsan=yes, use_asan=yes)
|
||||||
|
|
||||||
|
@ -126,6 +143,7 @@ jobs:
|
||||||
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||||
- name: Make apt sources.list use the default Ubuntu repositories
|
- name: Make apt sources.list use the default Ubuntu repositories
|
||||||
run: |
|
run: |
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
|
||||||
|
@ -170,8 +188,9 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=x11 tools=yes target=debug use_ubsan=yes use_asan=yes
|
scons tools=yes target=debug use_asan=yes use_ubsan=yes
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=x11 tools=no target=release debug_symbols=full use_ubsan=yes use_asan=yes
|
scons tools=no target=release debug_symbols=full use_ubsan=yes use_asan=yes
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
# Download and test project to check leaks and invalid memory usage
|
# Download and test project to check leaks and invalid memory usage
|
||||||
- name: Importing and running project project
|
- name: Importing and running project project
|
||||||
|
|
21
.github/workflows/macos_builds.yml
vendored
21
.github/workflows/macos_builds.yml
vendored
|
@ -1,9 +1,10 @@
|
||||||
name: 🍎 macOS Builds
|
name: 🍎 macOS Builds
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
|
|
||||||
# Global Cache Settings
|
# Global Settings
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: 3.2
|
GODOT_BASE_BRANCH: 3.2
|
||||||
|
SCONSFLAGS: platform=osx verbose=yes warnings=all werror=yes --jobs=2
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
@ -49,7 +50,14 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=osx tools=yes target=release_debug
|
scons tools=yes target=release_debug
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
||||||
macos-template:
|
macos-template:
|
||||||
runs-on: "macos-latest"
|
runs-on: "macos-latest"
|
||||||
|
@ -91,4 +99,11 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=osx target=release tools=no
|
scons target=release tools=no debug_symbols=no
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: bin/*
|
||||||
|
retention-days: 14
|
||||||
|
|
8
.github/workflows/static_checks.yml
vendored
8
.github/workflows/static_checks.yml
vendored
|
@ -9,9 +9,15 @@ jobs:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||||
|
- name: Make apt sources.list use the default Ubuntu repositories
|
||||||
|
run: |
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
|
sudo cp -f misc/ci/sources.list /etc/apt/sources.list
|
||||||
|
sudo apt-get update
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get update -qq
|
|
||||||
sudo apt-get install -qq dos2unix recode clang-format
|
sudo apt-get install -qq dos2unix recode clang-format
|
||||||
sudo pip3 install black==20.8b1 pygments
|
sudo pip3 install black==20.8b1 pygments
|
||||||
|
|
||||||
|
|
35
.github/workflows/windows_builds.yml
vendored
35
.github/workflows/windows_builds.yml
vendored
|
@ -1,10 +1,11 @@
|
||||||
name: 🏁 Windows Builds
|
name: 🏁 Windows Builds
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
|
|
||||||
# Global Cache Settings
|
# Global Settings
|
||||||
# SCONS_CACHE for windows must be set in the build environment
|
# SCONS_CACHE for windows must be set in the build environment
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: 3.2
|
GODOT_BASE_BRANCH: 3.2
|
||||||
|
SCONSFLAGS: platform=windows verbose=yes warnings=all werror=yes --jobs=2
|
||||||
SCONS_CACHE_MSVC_CONFIG: true
|
SCONS_CACHE_MSVC_CONFIG: true
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
|
|
||||||
|
@ -54,16 +55,14 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: /.scons_cache/
|
SCONS_CACHE: /.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=windows tools=yes target=release_debug
|
scons tools=yes target=release_debug
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
# Build Product Upload (tested and working)
|
- uses: actions/upload-artifact@v2
|
||||||
# sorry this is disabled until github can give us some more space as we would hit our limit very quickly
|
with:
|
||||||
# tested this code and it works fine so just enable it to get them back
|
name: ${{ github.job }}
|
||||||
# - name: publishing godot windows-editor
|
path: bin/*
|
||||||
# uses: actions/upload-artifact@v1
|
retention-days: 14
|
||||||
# with:
|
|
||||||
# name: windows-editor (x64)
|
|
||||||
# path: bin/godot.windows.opt.tools.64.exe
|
|
||||||
|
|
||||||
windows-template:
|
windows-template:
|
||||||
runs-on: "windows-latest"
|
runs-on: "windows-latest"
|
||||||
|
@ -106,13 +105,11 @@ jobs:
|
||||||
env:
|
env:
|
||||||
SCONS_CACHE: /.scons_cache/
|
SCONS_CACHE: /.scons_cache/
|
||||||
run: |
|
run: |
|
||||||
scons -j2 verbose=yes warnings=all werror=yes platform=windows target=release tools=no
|
scons target=release tools=no debug_symbols=no
|
||||||
|
ls -l bin/
|
||||||
|
|
||||||
# Build Product Upload (tested and working)
|
- uses: actions/upload-artifact@v2
|
||||||
# sorry this is disabled until github can give us some more space as we would hit our limit very quickly
|
with:
|
||||||
# tested this code and it works fine so just enable it to get them back
|
name: ${{ github.job }}
|
||||||
# - name: publishing godot windows-template
|
path: bin/*
|
||||||
# uses: actions/upload-artifact@v1
|
retention-days: 14
|
||||||
# with:
|
|
||||||
# name: windows-template (x64)
|
|
||||||
# path: bin/godot.windows.opt.64.exe
|
|
||||||
|
|
Loading…
Reference in a new issue