Sitelet https://github.com/aminya/setup-cpp/pull/480/files
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion dev/docker/ci/alpine-gcc.dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
FROM aminya/setup-cpp-alpine:latest AS setup-cpp-alpine-gcc

# install gcc
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--compiler gcc && \
# cleanup
rm -rf /var/cache/apk/*
Expand Down
3 changes: 2 additions & 1 deletion dev/docker/ci/alpine-llvm.dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
FROM aminya/setup-cpp-alpine:latest AS setup-cpp-alpine-llvm

# install llvm
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--compiler llvm && \
# cleanup
rm -rf /var/cache/apk/*
Expand Down
3 changes: 2 additions & 1 deletion dev/docker/ci/alpine-mingw.dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
FROM aminya/setup-cpp-alpine:latest AS setup-cpp-alpine-mingw

# install mingw/powershell
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--compiler mingw \
--powershell true && \
# cleanup
Expand Down
8 changes: 7 additions & 1 deletion dev/docker/ci/alpine.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,14 @@ FROM alpine-nodejs AS setup-cpp-alpine

COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install the cpp tools
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--cmake true \
--ninja true \
--task true \
Expand Down
3 changes: 2 additions & 1 deletion dev/docker/ci/arch-gcc.dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
FROM aminya/setup-cpp-arch:latest AS setup-cpp-arch-gcc

# install llvm
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--compiler gcc && \
# arch cleanup
pacman -Scc --noconfirm && \
Expand Down
32 changes: 28 additions & 4 deletions dev/docker/ci/arch-llvm.dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,32 @@
FROM aminya/setup-cpp-arch:latest AS setup-cpp-arch-llvm
## base image
FROM archlinux:base AS setup-cpp-arch

# install llvm
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
--compiler llvm && \
COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

RUN pacman -Syuu --noconfirm && \
pacman-db-upgrade && \
# install nodejs
pacman -S --noconfirm --needed nodejs npm && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--compiler llvm \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--python true \
--make true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true && \
# arch cleanup
pacman -Scc --noconfirm && \
rm -rf /var/cache/pacman/pkg/* && \
Expand Down
33 changes: 28 additions & 5 deletions dev/docker/ci/arch-mingw.dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,32 @@
FROM aminya/setup-cpp-arch:latest AS setup-cpp-arch-mingw
## base image
FROM archlinux:base AS setup-cpp-arch-mingw

# install mingw/powershell
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
--compiler mingw \
--powershell true && \
COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

RUN pacman -Syuu --noconfirm && \
pacman-db-upgrade && \
# install nodejs
pacman -S --noconfirm --needed nodejs npm && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--compiler mingw \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--python true \
--make true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true && \
# arch cleanup
pacman -Scc --noconfirm && \
rm -rf /var/cache/pacman/pkg/* && \
Expand Down
8 changes: 7 additions & 1 deletion dev/docker/ci/arch.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,16 @@ FROM arch-nodejs AS setup-cpp-arch

COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install the cpp tools
RUN pacman -Syuu --noconfirm && \
pacman-db-upgrade && \
node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
setup-cpp \
--autoreconf true \
--cmake true \
--ninja true \
--task true \
Expand Down
6 changes: 4 additions & 2 deletions dev/docker/ci/docker-ci.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,10 @@ async function main() {
const dockerFileContent = await readFile(`./dev/docker/setup-cpp/setup-cpp-${name}.dockerfile`, "utf-8")
const modifiedDockerFile = dockerFileContent
// load the externally built setup-cpp
.replace(/FROM (.*)/g, `FROM $1\n\nCOPY "./dist/modern" "/usr/lib/setup-cpp/"`)
.replace("setup-cpp ", "node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs ")
.replace(
/FROM (.*)/g,
`FROM $1\n\nCOPY "./dist/modern" "/usr/lib/setup-cpp/"\n\nENV NODE_OPTIONS="--enable-source-maps"\n\nRUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \\\n ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp`,
)
// remove the npm install line
.replace(/# install setup-cpp\n\s*npm install -g setup-cpp.*\n/, "")

Expand Down
3 changes: 2 additions & 1 deletion dev/docker/ci/fedora-gcc.dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
FROM aminya/setup-cpp-fedora:latest AS setup-cpp-fedora-gcc

# install gcc
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--compiler gcc && \
# cleanup
dnf clean all && \
Expand Down
30 changes: 26 additions & 4 deletions dev/docker/ci/fedora-llvm.dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,30 @@
FROM aminya/setup-cpp-fedora:latest AS setup-cpp-fedora-llvm
## base image
FROM fedora:44 AS setup-cpp-fedora

# install llvm
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
--compiler llvm && \
COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install nodejs
RUN dnf -y install nodejs npm && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--compiler llvm \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--python true \
--make true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true && \
# cleanup
dnf clean all && \
rm -rf /tmp/*
Expand Down
32 changes: 27 additions & 5 deletions dev/docker/ci/fedora-mingw.dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,31 @@
FROM aminya/setup-cpp-fedora:latest AS setup-cpp-fedora-mingw
## base image
FROM fedora:44 AS setup-cpp-fedora-mingw

# install mingw
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
--compiler mingw \
--powershell true && \
COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install nodejs
RUN dnf -y install nodejs npm && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--compiler mingw \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--python true \
--make true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true \
--powershell true && \
# cleanup
dnf clean all && \
rm -rf /tmp/*
Expand Down
8 changes: 7 additions & 1 deletion dev/docker/ci/fedora.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,14 @@ FROM fedora-nodejs AS setup-cpp-fedora

COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install the cpp tools
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--cmake true \
--ninja true \
--task true \
Expand Down
3 changes: 2 additions & 1 deletion dev/docker/ci/ubuntu-gcc.dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
FROM aminya/setup-cpp-ubuntu:latest AS setup-cpp-ubuntu-gcc

# install gcc
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--compiler gcc && \
# cleanup
apt-get clean autoclean && \
Expand Down
43 changes: 37 additions & 6 deletions dev/docker/ci/ubuntu-llvm.dockerfile
Original file line number Diff line number Diff line change
@@ -1,11 +1,42 @@
FROM aminya/setup-cpp-ubuntu:latest AS setup-cpp-ubuntu-llvm
#### Base Image
FROM ubuntu:22.04 AS setup-cpp-ubuntu

# install llvm
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
--compiler llvm && \
COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install latest nodejs
RUN apt-get update -qq && \
apt-get install -y --no-install-recommends curl gnupg ca-certificates && \
mkdir -p /etc/apt/keyrings && \
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list && \
apt-get update -qq && \
apt-get install -y --no-install-recommends nodejs && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--nala true \
--compiler llvm \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--python true \
--make true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true && \
# cleanup
apt-get clean autoclean && \
apt-get autoremove -y && \
nala autoremove -y && \
nala autopurge -y && \
apt-get clean && \
nala clean --lists && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /tmp/*

Expand Down
45 changes: 38 additions & 7 deletions dev/docker/ci/ubuntu-mingw.dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,43 @@
FROM aminya/setup-cpp-ubuntu:latest AS setup-cpp-ubuntu-mingw
#### Base Image
FROM ubuntu:22.04 AS setup-cpp-ubuntu-mingw

# install mingw/powershell
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
--compiler mingw \
--powershell true && \
COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install latest nodejs
RUN apt-get update -qq && \
apt-get install -y --no-install-recommends curl gnupg ca-certificates && \
mkdir -p /etc/apt/keyrings && \
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list && \
apt-get update -qq && \
apt-get install -y --no-install-recommends nodejs && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--nala true \
--compiler mingw \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--python true \
--make true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true \
--powershell true && \
# cleanup
apt-get clean autoclean && \
apt-get autoremove -y && \
nala autoremove -y && \
nala autopurge -y && \
apt-get clean && \
nala clean --lists && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /tmp/*

Expand Down
8 changes: 7 additions & 1 deletion dev/docker/ci/ubuntu.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,14 @@ FROM ubuntu-nodejs AS setup-cpp-ubuntu

COPY "./dist/modern" "/usr/lib/setup-cpp/"

ENV NODE_OPTIONS="--enable-source-maps"

RUN chmod +x /usr/lib/setup-cpp/setup-cpp.mjs && \
ln -s /usr/lib/setup-cpp/setup-cpp.mjs /usr/local/bin/setup-cpp

# install the cpp tools
RUN node --enable-source-maps /usr/lib/setup-cpp/setup-cpp.mjs \
RUN setup-cpp \
--autoreconf true \
--apt-fast true \
--cmake true \
--ninja true \
Expand Down
1 change: 1 addition & 0 deletions dev/docker/setup-cpp/setup-cpp-arch-llvm.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ RUN pacman -Syuu --noconfirm && \
# install the compiler and tools
NODE_OPTIONS="--enable-source-maps" \
setup-cpp \
--autoreconf true \
--compiler llvm \
--cmake true \
--ninja true \
Expand Down
Loading
Loading