add build mechanism for nng
This commit is contained in:
@@ -10,6 +10,10 @@ lake update
|
||||
|
||||
cp lake-packages/mathlib/lean-toolchain lean-toolchain
|
||||
cp lake-packages/mathlib/lean-toolchain ../leanserver/lean-toolchain
|
||||
cp lake-packages/mathlib/lean-toolchain ../nng/lean-toolchain
|
||||
|
||||
cd ../leanserver
|
||||
lake update
|
||||
|
||||
cd ../nng
|
||||
lake update
|
||||
|
||||
+1
-1
@@ -56,7 +56,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"start": "concurrently -n server,client -c blue,green \"npm run start_server\" \"npm run start_client\"",
|
||||
"start_server": "cd server && (cd leanserver && lake build) && (cd testgame && lake exe cache get && lake build) && NODE_ENV=development nodemon -e mjs --exec \"node ./index.mjs\"",
|
||||
"start_server": "cd server && (cd leanserver && lake build) && (cd testgame && lake exe cache get && lake build) && (cd nng && lake build) && NODE_ENV=development nodemon -e mjs --exec \"node ./index.mjs\"",
|
||||
"start_client": "NODE_ENV=development webpack-dev-server --hot",
|
||||
"build": "npm run build_server && npm run build_client",
|
||||
"build_server": "server/build.sh",
|
||||
|
||||
+11
-1
@@ -6,6 +6,16 @@ cd $(dirname $0)
|
||||
# Build elan image if not already present
|
||||
docker build --pull --rm -f elan.Dockerfile -t elan:latest .
|
||||
|
||||
# Build testgame
|
||||
(cd testgame && lake exe cache get && lake build)
|
||||
docker rmi testgame:latest || true
|
||||
docker build --rm -f server.Dockerfile -t testgame:latest .
|
||||
docker build \
|
||||
--build-arg GAME_DIR=testgame \
|
||||
--rm -f server.Dockerfile -t testgame:latest .
|
||||
|
||||
# Build NNG
|
||||
(cd nng && lake build)
|
||||
docker rmi nng:latest || true
|
||||
docker build \
|
||||
--build-arg GAME_DIR=nng \
|
||||
--rm -f server.Dockerfile -t nng:latest .
|
||||
|
||||
+2
-1
@@ -45,7 +45,8 @@ function startServerProcess(gameId) {
|
||||
["--server", gameId, games[gameId].module, games[gameId].name],
|
||||
{ cwd: "./leanserver/build/bin/" })
|
||||
: cp.spawn("docker",
|
||||
["run", "--runtime=runsc", "--network=none", "--rm", "-i", `${gameId}:latest`],
|
||||
["run", "--runtime=runsc", "--network=none", "--rm", "-i", `${gameId}:latest`,
|
||||
"./gameserver", "--server", gameId, games[gameId].module, games[gameId].name],
|
||||
{ cwd: "." })
|
||||
serverProcess.on('error', error =>
|
||||
console.error(`Launching Lean Server failed: ${error}`)
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
ARG GAME_DIR
|
||||
FROM elan:latest
|
||||
|
||||
WORKDIR /
|
||||
|
||||
# Copy lean files
|
||||
COPY leanserver ./leanserver
|
||||
COPY testgame ./testgame
|
||||
COPY $GAME_DIR ./$GAME_DIR
|
||||
# TODO: make `testgame` a build argument
|
||||
|
||||
WORKDIR /leanserver
|
||||
@@ -12,4 +13,3 @@ RUN rm -f ./build/bin/gameserver
|
||||
RUN lake build
|
||||
|
||||
WORKDIR /leanserver/build/bin/
|
||||
CMD ["./gameserver", "--server", "testgame", "TestGame", "TestGame"]
|
||||
|
||||
Reference in New Issue
Block a user