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
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ On the other hand, some OSes won't run older Erlangs because of library changes,
Just specify on the command line any of the `ERLANGVERSION`, `NODEVERSION`, or `ELIXIRVERSION` environment variables:

```
NODEVERSION=18 ELIXIRVERSION=v1.15.7 ERLANGVERSION=25.3.2.12 ./build.sh platform debian-bullseye
NODEVERSION=18 ELIXIRVERSION=v1.17.2 ERLANGVERSION=25.3.2.13 ./build.sh platform debian-bullseye
```

## Building images for other architectures
Expand All @@ -71,7 +71,7 @@ will build **and upload** a new multi-arch container image to the registry. For
example:

```
./build.sh buildx-platform debian-bullseye
./build.sh buildx-platform debian-bookworm
```

The `$BUILDX_PLATFORMS` environment variable can be used to override the default
Expand All @@ -90,7 +90,7 @@ This will build all the Debian and RHEL-clone OS images on x86-64 with that vers
## Update images used for CI with new Erlang versions

```
ERLANGVERSION=24.3.4.7 ./build.sh buildx-platform debian-bullseye
ERLANGVERSION=24.3.4.7 ./build.sh buildx-platform debian-bookworm
```

This will update Debian Bullseye OS image for all architectures (x86,
Expand All @@ -105,7 +105,7 @@ buildx-platform-release creates as x86 only.
## Update Debian Bullseye image with 25.2

```
BUILDX_PLATFORMS=linux/amd64 ERLANGVERSION=25.2 ./build.sh buildx-platform debian-bullseye
BUILDX_PLATFORMS=linux/amd64 ERLANGVERSION=25.2 ./build.sh buildx-platform debian-bookworm
```

In this case, since we're not using 25.2 for multi-arch testing, opt to build it only for x86.
Expand Down Expand Up @@ -136,7 +136,7 @@ After building the image as above:
docker run -it couchdbdev/<tag>
```

where `<tag>` is of the format `<distro>-<version>-<type>`, such as `debian-bullseye-erlang-23.3.4.17`.
where `<tag>` is of the format `<distro>-<version>-<type>`, such as `debian-bookworm-erlang-25.3.2.13`.

## Running the CouchDB build in a published container

Expand Down
4 changes: 2 additions & 2 deletions bin/install-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ set -e

# Defaults updated 2023-03-20
NODEVERSION=${NODEVERSION:-18}
ERLANGVERSION=${ERLANGVERSION:-25.3.2.12}
ELIXIRVERSION=${ELIXIRVERSION:-v1.15.7}
ERLANGVERSION=${ERLANGVERSION:-25.3.2.13}
ELIXIRVERSION=${ELIXIRVERSION:-v1.17.2}


# This works if we're not called through a symlink
Expand Down
2 changes: 1 addition & 1 deletion bin/install-elixir.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
set -e


ELIXIR_VSN=${ELIXIRVERSION:-v1.15.7}
ELIXIR_VSN=${ELIXIRVERSION:-v1.17.2}
ERLANG_VSN=`erl -noshell -eval 'io:fwrite(erlang:system_info(otp_release)), halt().'`
# See https://github.com/hexpm/bob
URL=https://repo.hex.pm/builds/elixir/${ELIXIR_VSN}-otp-${ERLANG_VSN}.zip
Expand Down
22 changes: 17 additions & 5 deletions bin/source-erlang.sh
Original file line number Diff line number Diff line change
Expand Up @@ -80,12 +80,24 @@ else
DISABLE_JIT=""
fi

if [[ ${ERLANGMAJORVERSION} -gt 25 ]]; then
echo "************************* WARNING ***************************"
echo "As of 2024-07-11 Erlang 26.2.5* fails access any crypto functions"
echo "on OSes with OpenSSL 3.0.x (Debian Bookworm, at least) if the "
echo "--enable-fips flag is enabled. See: github.com/erlang/otp/issues/8562"
echo "**************************************************************"
ENABLE_FIPS=""
else
ENABLE_FIPS="--enable-fips"
fi

# Configure Erlang - skip building things we don't want or need
./configure --without-javac --without-wx --without-odbc \
--without-debugger --without-observer --without-et --without-cosEvent \
--without-cosEventDomain --without-cosFileTransfer \
--without-cosNotification --without-cosProperty --without-cosTime \
--without-cosTransactions --without-orber --enable-fips ${DISABLE_JIT}
./configure \
--without-javac --without-wx --without-odbc \
--without-debugger --without-observer --without-et \
--without-diameter --without-megaco --without-tftp \
--without-ftp \
${ENABLE_FIPS} ${DISABLE_JIT}

make -j $(nproc)
make install
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/almalinux-8
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ ARG js=js
# Choose whether to install Erlang, default yes
ARG erlang=erlang
# Select version of Node, Erlang and Elixir to install
ARG erlangversion=25.3.2.12
ARG elixirversion=v1.15.7
ARG erlangversion=25.3.2.13
ARG elixirversion=v1.17.2
ARG nodeversion=18

# Create Jenkins user and group
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/almalinux-9
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ ARG js=js
# Choose whether to install Erlang, default yes
ARG erlang=erlang
# Select version of Node, Erlang and Elixir to install
ARG erlangversion=25.3.2.12
ARG elixirversion=v1.15.7
ARG erlangversion=25.3.2.13
ARG elixirversion=v1.17.2
ARG nodeversion=18

# Create Jenkins user and group
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/debian-bookworm
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ ARG js=js
# Choose whether to install Erlang, default yes
ARG erlang=erlang
# Select version of Node, Erlang and Elixir
ARG erlangversion=25.3.2.12
ARG elixirversion=v1.15.7
ARG erlangversion=25.3.2.13
ARG elixirversion=v1.17.2
ARG nodeversion=18

# Create Jenkins user and group
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/debian-bullseye
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ ARG js=js
# Choose whether to install Erlang, default yes
ARG erlang=erlang
# Select version of Node, Erlang and Elixir
ARG erlangversion=25.3.2.12
ARG elixirversion=v1.15.7
ARG erlangversion=25.3.2.13
ARG elixirversion=v1.17.2
ARG nodeversion=18

# Create Jenkins user and group
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/ubuntu-focal
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ ARG js=js
# Choose whether to install Erlang, default yes
ARG erlang=erlang
# Select version of Node, Erlang and Elixir to install
ARG erlangversion=25.3.2.12
ARG elixirversion=v1.15.7
ARG erlangversion=25.3.2.13
ARG elixirversion=v1.17.2
ARG nodeversion=18

# Create Jenkins user and group
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/ubuntu-jammy
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ ARG js=js
# Choose whether to install Erlang, default yes
ARG erlang=erlang
# Select version of Node, Erlang and Elixir to install
ARG erlangversion=25.3.2.12
ARG elixirversion=v1.15.7
ARG erlangversion=25.3.2.13
ARG elixirversion=v1.17.2
ARG nodeversion=18

# Create Jenkins user and group
Expand Down
12 changes: 6 additions & 6 deletions pull-all-couchdbdev-docker
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ DOCKER_ORG="apache"

# These are the images that are currently being used, so don't `docker rmi` them on cleanup.
KEEP_IMAGES=(
couchdbci-debian:bookworm-erlang-25.3.2.12
couchdbci-debian:bookworm-erlang-26.2.5
couchdbci-centos:9-erlang-25.3.2.12
couchdbci-centos:8-erlang-25.3.2.12
couchdbci-ubuntu:jammy-erlang-25.3.2.12
couchdbci-ubuntu:focal-erlang-25.3.2.12
couchdbci-debian:bookworm-erlang-25.3.2.13
couchdbci-debian:bookworm-erlang-26.2.5.2
couchdbci-centos:9-erlang-25.3.2.13
couchdbci-centos:8-erlang-25.3.2.13
couchdbci-ubuntu:jammy-erlang-25.3.2.13
couchdbci-ubuntu:focal-erlang-25.3.2.13
)

for image in ${KEEP_IMAGES[*]}
Expand Down