From 377c5b923e4e243a43a785d30529122a1accb224 Mon Sep 17 00:00:00 2001 From: Jonathan Thomas Date: Thu, 29 May 2025 10:47:29 -0500 Subject: [PATCH 1/3] Integrating dynamic SQS-based Auto-scaling builders into our Gitlab CI pipeline --- .gitlab-ci.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d67e70560..c49357067 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,12 +3,21 @@ # SPDX-License-Identifier: LGPL-3.0-or-later stages: + - init-builders - build-libopenshot - trigger-openshot-qt variables: GIT_LOG_FORMAT: "- %h %ad %s [%aN]" +init-builders: + stage: init-builders + tags: + - gitlab-server + script: + - send-ci-sqs linux + - send-ci-sqs windows + linux-builder: stage: build-libopenshot artifacts: From 6dce2ed54e664a84e1935d7ab27405980b307381 Mon Sep 17 00:00:00 2001 From: Jonathan Thomas Date: Thu, 29 May 2025 10:49:24 -0500 Subject: [PATCH 2/3] Updating tags --- .gitlab-ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c49357067..51e84c209 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,8 +12,10 @@ variables: init-builders: stage: init-builders + except: + - tags tags: - - gitlab-server + - gitlab script: - send-ci-sqs linux - send-ci-sqs windows From e39bd39dc6927f30cc5a6f86b1debfeae1a2ceb4 Mon Sep 17 00:00:00 2001 From: Jonathan Thomas Date: Thu, 29 May 2025 11:00:27 -0500 Subject: [PATCH 3/3] Making windows builds use 4 CPUs (testing performance of this change) --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 51e84c209..a9e5d4cf4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -89,7 +89,7 @@ windows-builder-x64: - $env:Path = "C:\msys64\mingw64\bin;C:\msys64\usr\bin;C:\msys64\usr\local\bin;" + $env:Path; - $env:MSYSTEM = "MINGW64" - cmake -B build -S . -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"babl_DIR=C:/msys64/mingw64" -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR\build\install-x64" -D"OpenShotAudio_ROOT=$CI_PROJECT_DIR\build\install-x64" -D"PYTHON_MODULE_PATH=python" -D"RUBY_MODULE_PATH=ruby" -G "MinGW Makefiles" -D"CMAKE_BUILD_TYPE:STRING=Release" - - cmake --build build + - cmake --build build -j 4 - cmake --build build --target coverage - cmake --install build - $PROJECT_VERSION = (Select-String -Path "CMakeLists.txt" -Pattern '^set\(PROJECT_VERSION_FULL "(.*)\"' | %{$_.Matches.Groups[1].value}) @@ -116,7 +116,7 @@ windows-builder-x86: - $env:Path = "C:\msys64\mingw32\bin;C:\msys64\usr\bin;C:\msys64\usr\local\bin;" + $env:Path; - $env:MSYSTEM = "MINGW32" - cmake -B build -S . -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -D"babl_DIR=C:/msys64/mingw32" -D"CMAKE_INSTALL_PREFIX:PATH=$CI_PROJECT_DIR\build\install-x86" -D"OpenShotAudio_ROOT=$CI_PROJECT_DIR\build\install-x86" -D"PYTHON_MODULE_PATH=python" -D"RUBY_MODULE_PATH=ruby" -G "MinGW Makefiles" -D"CMAKE_BUILD_TYPE:STRING=Release" -D"CMAKE_CXX_FLAGS=-m32" -D"CMAKE_EXE_LINKER_FLAGS=-Wl,--large-address-aware" -D"CMAKE_C_FLAGS=-m32" - - cmake --build build + - cmake --build build -j 4 - cmake --install build - $PROJECT_VERSION = (Select-String -Path "CMakeLists.txt" -Pattern '^set\(PROJECT_VERSION_FULL "(.*)\"' | %{$_.Matches.Groups[1].value}) - $PROJECT_SO = (Select-String -Path "CMakeLists.txt" -Pattern '^set\(PROJECT_SO_VERSION (.*)\)' | %{$_.Matches.Groups[1].value})