Merge branch 'efroemling:master' into master

This commit is contained in:
Vishal 2024-05-20 03:55:52 +05:30 committed by GitHub
commit 1f3d9ef0f8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 84 additions and 42 deletions

32
.efrocachemap generated
View File

@ -4046,18 +4046,18 @@
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "da731180827f74d0397ad8de3513d460",
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "e265dcac18f1daccf9df488fcc1b6724",
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "abc3bca14a09f7d72f00472ee69cbaa2",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "f5c4aad85554354e8a4113430051d3c0",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "87fbcd34d0963ed1f54c213e1e9ce24b",
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "33f20935cb1cf6ccaf409846f84b241f",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "b0ce064a823d99ed4339795bcc1fbab6",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "c1769fbf49db6b630e801ace3ac1f55e",
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "62682664253767b108dd4a90670f3d8e",
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "d9879931f0962b5775adbeca5ccf775e",
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "8b9ff340043ffcec5f50e2bb2239056d",
"build/prefab/full/mac_x86_64_gui/release/ballisticakit": "4ca5c155c8acdd4440e8cbaf85edc0ff",
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "e6380a0bb4434fab60ca89747a59dd55",
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "5986c75ff3e956e57e996c9e1ea0b654",
"build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "cd7243e6a94a8c4d7e4cd9e2817677d9",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "9d5823f786d59206c9f65f5c7b982c77",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "9d8db2efd49a26203e3c34bdafea0328",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "b558bb689b502c628eb7ef28df6e775c",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "e55855561a2c1665bc04293761ac4a9a",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "5d7017e7a1f06dd178893d0742994937",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "742261cb35cc08e844170242b52eabb7",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "c51b78b85aa079894b746ff1bc6adcd4",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "6b36f587dbbe61faba5aaabe51acf5f1",
"build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "9162b53189b80d4e5938cd142acd2a1a",
"build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "2226d0e2d34051d962320c86464f3a2d",
"build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "9162b53189b80d4e5938cd142acd2a1a",
@ -4074,14 +4074,14 @@
"build/prefab/lib/mac_x86_64_gui/release/libballisticaplus.a": "299b6c4b83966040618b27563b700c2a",
"build/prefab/lib/mac_x86_64_server/debug/libballisticaplus.a": "08c2f91d086e6f3fa73ebc299112358a",
"build/prefab/lib/mac_x86_64_server/release/libballisticaplus.a": "299b6c4b83966040618b27563b700c2a",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "bf9b070d79c29b59a1a5a601f970181d",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "e4993050ca26d3407551c797207e7934",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "929ebabc472bf475bb0f761229e4b818",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "dbb096b31a43d7cf85d35404c2ae7222",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "892547735582daf94fd474d96ff02843",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "40f2bd5953e012d590c577ee28e488bb",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "6383d87955a72c1e63cf1626810bb81f",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "838f1b34920f9ab7b59fb2b353ddb367",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "434a62eab6f545afd9afae607a8acb25",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "51b4809a050b412f4d9354c76587775a",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "4012fbee0d10dca77a0ef61488cc4ca8",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "252ede4ca17f27db81ceb0d077091fb4",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "b064c926d89d5259cb58d4456be96fbc",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "27812420b5c838755c13a70eb46a42a5",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "866ed9a4d45775fc2f94a440e4bc68d6",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "dfc573dcb937e27276f7cd4b7a52bb8c",
"src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c",
"src/assets/ba_data/python/babase/_mgen/enums.py": "5548f407d97e380069f6c596c4e36cd7",
"src/ballistica/base/mgen/pyembed/binding_base.inc": "efa61468cf098f77cc6a234461d8b86d",

View File

@ -23,6 +23,7 @@ jobs:
with:
name: linux_x86_64_gui_(debug)
path: build/prefab/full/linux_x86_64_gui
make_linux_x86_64_server_debug_build:
runs-on: ubuntu-latest
steps:
@ -40,6 +41,7 @@ jobs:
with:
name: linux_x86_64_server_(debug)
path: build/prefab/full/linux_x86_64_server
make_linux_arm64_gui_debug_build:
runs-on: ubuntu-latest
steps:
@ -57,6 +59,7 @@ jobs:
with:
name: linux_arm64_gui_(debug)
path: build/prefab/full/linux_arm64_gui
make_linux_arm64_server_debug_build:
runs-on: ubuntu-latest
steps:
@ -74,6 +77,7 @@ jobs:
with:
name: linux_arm64_server_(debug)
path: build/prefab/full/linux_arm64_server
make_mac_x86_64_gui_debug_build:
runs-on: ubuntu-latest
steps:
@ -91,6 +95,7 @@ jobs:
with:
name: mac_x86_64_gui_(debug)
path: build/prefab/full/mac_x86_64_gui
make_mac_x86_64_server_debug_build:
runs-on: ubuntu-latest
steps:
@ -108,6 +113,7 @@ jobs:
with:
name: mac_x86_64_server_(debug)
path: build/prefab/full/mac_x86_64_server
make_mac_arm64_gui_debug_build:
runs-on: ubuntu-latest
steps:
@ -125,6 +131,7 @@ jobs:
with:
name: mac_arm64_gui_(debug)
path: build/prefab/full/mac_arm64_gui
make_mac_arm64_server_debug_build:
runs-on: ubuntu-latest
steps:
@ -142,6 +149,7 @@ jobs:
with:
name: mac_arm64_server_(debug)
path: build/prefab/full/mac_arm64_server
make_windows_x86_gui_debug_build:
runs-on: ubuntu-latest
steps:
@ -159,6 +167,7 @@ jobs:
with:
name: windows_x86_gui_(debug)
path: build/prefab/full/windows_x86_gui
make_windows_x86_server_debug_build:
runs-on: ubuntu-latest
steps:
@ -176,6 +185,7 @@ jobs:
with:
name: windows_x86_server_(debug)
path: build/prefab/full/windows_x86_server
make_sphinx_docs:
runs-on: ubuntu-latest
steps:
@ -192,4 +202,22 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: sphinx_html_docs
path: build/sphinx
path: build/sphinx
make_docker_image:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Setup project environment
run: make env
- name: Make the build
run: make docker-save
- name: Upload the build
uses: actions/upload-artifact@v4
with:
name: docker_server(release)
path: build/docker/bombsquad_server_docker.tar

View File

@ -222,12 +222,6 @@ pcommandbatch_speed_test: env
# Prebuilt binaries for various platforms.
docker-build:
$(PCOMMAND) build_docker
docker-run:
docker run -it bombsquad_server
# WSL is Linux but running under Windows, so it can target either. By default
# we want these top level targets (prefab-gui-debug, etc.) to yield native
# Windows builds from WSL, but this env var can be set to override that.
@ -1183,6 +1177,28 @@ clion-staging: assets-cmake resources meta
cmake-modular-server-clean clion-staging
################################################################################
# #
# Docker #
# #
################################################################################
docker-build: assets-cmake
$(PCOMMAND) build_docker
docker-run:
docker run -it bombsquad_server
docker-save: docker-build
mkdir -p build/docker/
docker save bombsquad_server -o build/docker/bombsquad_server_docker.tar
docker-clean:
rm build/docker/bombsquad_server_docker.tar
docker rmi bombsquad_server --force
docker system prune
################################################################################
# #
# Auxiliary #

View File

@ -40,9 +40,9 @@ COPY ./ /home/ubuntu/ballistica
WORKDIR /home/ubuntu/ballistica
# Compile the application
RUN make cmake-server-build
RUN mkdir ./../ballistica_cmake_server
RUN mv build/cmake/* ./../ballistica_cmake_server
RUN make cmake-server-build \
&& mkdir ./../ballistica_cmake_server \
&& mv build/cmake/* ./../ballistica_cmake_server
#-------------------------------RUNNER--------------------------------
# Create a new stage for the runtime environment
@ -65,14 +65,9 @@ LABEL BOMBSQUAD_VERSION=${bombsquad_version}
# Install runtime dependencies
RUN apt-get update -y && \
apt-get install -y \
python3.12-venv \
python3-pip \
libsdl2-dev \
libvorbisfile3 \
freeglut3-dev \
libopenal1 \
curl \
&& rm -rf /var/lib/apt/lists/*
python3.12-dev \
&& rm -rf /var/lib/apt/lists/* \
&& python3.12 -c "import uuid;print(uuid.uuid4())">/etc/machine-id
# Copy the compiled application from the builder stage
COPY --from=builder /home/ubuntu/ballistica_cmake_server/*/staged \
@ -85,7 +80,6 @@ WORKDIR /home/ubuntu/ballistica
# Expose the necessary port
EXPOSE 43210/udp
EXPOSE 43210/tcp
# Set the default command to run the application
CMD [ "./ballisticakit_server" ]
CMD [ "./ballisticakit_server" ]

View File

@ -660,7 +660,9 @@ def _docker_build(
'build',
'-t',
image_name,
'-f',
dockerfile_dir,
'.',
]
if bombsquad_version is not None:
build_cmd = build_cmd + [
@ -682,17 +684,19 @@ def _docker_build(
def docker_build() -> None:
"""Build docker image."""
import shutil
# todo: add option to toggle between prefab and cmake
shutil.copy('config/docker/Dockerfile', '.')
from batools import version
version_num, build_num = version.get_current_version()
image_name = 'bombsquad_server'
print(
f'Building docker image {image_name}'
+ 'version {version_num}:{build_num}'
)
_docker_build(
'bombsquad_server',
'.',
image_name,
'config/docker/Dockerfile',
version_num,
build_num,
)
os.remove('Dockerfile')