Skip to content

Commit 27c50d7

Browse files
committed
compression!
1 parent 7917918 commit 27c50d7

File tree

1 file changed

+21
-7
lines changed

1 file changed

+21
-7
lines changed

tools/nsc/CMakeLists.txt

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ execute_process(
9999
COMMAND "${CMAKE_COMMAND}" -E copy_directory_if_different ${ICU_GLOBALIZATION_DIR} "${NBL_DOCKER_CTX_DIR}/Globalization/ICU"
100100
)
101101

102-
set(CT_RUNTIMES C:/pack/runtimes)
102+
set(CT_RUNTIMES C:/runtimes)
103103
cmake_path(NATIVE_PATH CT_RUNTIMES NORMALIZE CT_RUNTIMES)
104104

105105
set(NBL_DOCKER_CT_NSC_VOLUME_TARGET "${CT_RUNTIMES}/Nabla")
@@ -110,20 +110,34 @@ cmake_path(NATIVE_PATH NBL_NSC_PREINSTALL_DIRECTORY NORMALIZE NBL_NSC_PREINSTALL
110110
string(CONFIGURE [=[
111111
# syntax=docker/dockerfile:1
112112
# escape=`
113-
FROM @BASE_IMAGE@
114-
USER ContainerAdministrator
115113
116-
COPY Runtimes/ C:/Windows/System32/
117-
COPY Globalization/ICU/ C:/Windows/Globalization/ICU/
114+
# ---------------- COMPRESS STEP ----------------
115+
FROM @BASE_IMAGE@ as compress
116+
117+
COPY --link Runtimes/ C:/pack/Windows/System32/
118+
COPY --link Globalization/ICU/ C:/pack/Windows/Globalization/ICU/
119+
COPY --link Nabla/ C:/pack/runtimes/Nabla/
120+
121+
ARG IMPL_COMPRESSION_OPTIONS=-T0
122+
ARG IMPL_COMPRESSION_LEVEL=3
123+
124+
WORKDIR C:\pack
125+
RUN `
126+
tar -cf - Windows | zstd %IMPL_COMPRESSION_OPTIONS% -%IMPL_COMPRESSION_LEVEL% -o windows-artifacts.tar.zst && `
127+
tar -cf - runtimes | zstd %IMPL_COMPRESSION_OPTIONS% -%IMPL_COMPRESSION_LEVEL% -o nabla-artifacts.tar.zst
128+
129+
# ---------------- FINAL IMAGE ----------------
130+
FROM @BASE_IMAGE@
118131
119-
COPY Nabla/ @NBL_DOCKER_CT_NSC_VOLUME_TARGET@
132+
COPY --link --from=compress ["C:/pack/windows-artifacts.tar.zst", "C:/pack/"]
133+
COPY --link --from=compress ["C:/pack/nabla-artifacts.tar.zst", "C:/pack/"]
120134
COPY hlsl.local.properties.cmake C:/Compiler-Explorer/etc/config/hlsl.local.properties
121135
122136
ENV NBL_INSTALL_DIRECTORY=@NBL_DOCKER_CT_NSC_VOLUME_TARGET@ `
123137
NBL_EXPLICIT_MODULE_LOAD_LOG=ON
124138
125139
WORKDIR C:/Compiler-Explorer
126-
ENTRYPOINT ["node", "--no-warnings", "--no-deprecation", "--import=tsx", "./app.js", "--language", "hlsl"]
140+
ENTRYPOINT ["C:\\unpack.bat", "&&", "node", "--no-warnings", "--no-deprecation", "--import=tsx", "./app.js", "--language", "hlsl"]
127141
]=] INSTRUCTIONS @ONLY)
128142

129143
set(DOCKERFILE "${NBL_DOCKER_CTX_DIR}/Dockerfile")

0 commit comments

Comments
 (0)