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
34 changes: 33 additions & 1 deletion .evergreen/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -463,7 +463,7 @@ tasks:
- func: "fetch source"
- func: "earthly"
vars:
args: +create-deb-packages-and-repos --env=${earthly_env} --packager_distro=${packager_distro} --packager_arch=${packager_arch}
args: +create-deb-packages-and-repos --env=${earthly_env} --packager_distro=${packager_distro} --packager_arch=${packager_arch} --ninja_version=${ninja_version}
- func: "upload packages and repos"

- name: publish-deb-packages-with-earthly
Expand Down Expand Up @@ -675,6 +675,8 @@ tasks:
name: build-and-test-and-upload
- variant: amazon2023-arm64
name: build-and-test-and-upload
- variant: debian13
name: build-and-test-and-upload
- variant: debian12
name: build-and-test-and-upload
- variant: debian11
Expand Down Expand Up @@ -752,6 +754,8 @@ tasks:
vars: { variant_name: "amazon2023" }
- func: "download tarball"
vars: { variant_name: "amazon2023-arm64" }
- func: "download tarball"
vars: { variant_name: "debian13" }
- func: "download tarball"
vars: { variant_name: "debian12" }
- func: "download tarball"
Expand Down Expand Up @@ -1294,6 +1298,18 @@ buildvariants:
- name: publish-packages
distros:
- ubuntu2004-small
- name: debian13
display_name: "Debian 13"
run_on: debian13-m6i-xlarge
expansions:
has_packages: true
packager_distro: debian13
packager_arch: x86_64
tasks:
- build-and-test-and-upload
- name: publish-packages
distros:
- ubuntu2004-small
- name: debian12
display_name: "Debian 12"
run_on: debian12-large
Expand Down Expand Up @@ -1682,6 +1698,22 @@ buildvariants:
# Use a distro suitable for running curator to publish .deb packages.
run_on: ubuntu2004-small

- name: debian13-arm64-earthly
display_name: "Debian 13 arm64 (via Earthly)"
expansions:
has_packages: true
packager_distro: debian13
packager_arch: arm64
earthly_env: deb13
ninja_version: 1.12.1
tasks:
- name: build-deb-packages-with-earthly
# Use an arm64 distro to match the intended target architecture of .deb packages.
run_on: ubuntu2204-arm64-small
- name: publish-deb-packages-with-earthly
# Use a distro suitable for running curator to publish .deb packages.
run_on: ubuntu2004-small

- name: debian12-arm64-earthly
display_name: "Debian 12 arm64 (via Earthly)"
expansions:
Expand Down
10 changes: 9 additions & 1 deletion Earthfile
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@
# • deb10 - Debian 10.0
# • deb11 - Debian 11.0
# • deb12 - Debian 12.0
# • deb13 - Debian 13
# • sles15 - OpenSUSE Leap 15.0
# • alpine - Alpine Linux 3.18
#
Expand Down Expand Up @@ -214,6 +215,10 @@ env.deb12:
# A Debian 12.0 environment
DO +ENV_DEBIAN --version 12.0

env.deb13:
# A Debian 13 environment
DO +ENV_DEBIAN --version 13.0

env.sles15:
# An OpenSUSE Leap 15.0 environment.
FROM +init --base=opensuse/leap:15.0
Expand All @@ -235,6 +240,8 @@ CACHE_WARMUP:
.evergreen/ensure-ninja.sh \
/T/
RUN bash /T/ensure-cmake.sh
ARG ninja_version
ENV NINJA_VERSION=$ninja_version
RUN env NINJA_EXE=/usr/local/bin/ninja \
bash /T/ensure-ninja.sh

Expand Down Expand Up @@ -415,7 +422,8 @@ build:
create-deb-packages-and-repos:
ARG env
FROM +env.$env
DO +CACHE_WARMUP
ARG ninja_version
DO +CACHE_WARMUP --ninja_version=$ninja_version
DO +COPY_SOURCE
WORKDIR /s
RUN __install dh-make dpkg-dev apt-utils
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ Second, create a list entry for the repository. For Ubuntu systems (be sure to
echo "deb https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/1.17 universe" | sudo tee /etc/apt/sources.list.d/libmongocrypt.list
```

For Debian systems (be sure to change `<release>` to `stretch`, `buster`, `bullseye`, or `bookworm` as appropriate to your system):
For Debian systems (be sure to change `<release>` to `stretch`, `buster`, `bullseye`, `bookworm`, or `trixie` as appropriate to your system):

```
echo "deb https://libmongocrypt.s3.amazonaws.com/apt/debian <release>/libmongocrypt/1.17 main" | sudo tee /etc/apt/sources.list.d/libmongocrypt.list
Expand Down
4 changes: 3 additions & 1 deletion etc/packager.py
Original file line number Diff line number Diff line change
Expand Up @@ -342,6 +342,8 @@ def repo_os_version(self, build_os):
return 'bullseye'
elif build_os == 'debian12':
return 'bookworm'
elif build_os == 'debian13':
return 'trixie'
else:
raise Exception("unsupported build_os: %s" % build_os)
else:
Expand Down Expand Up @@ -395,7 +397,7 @@ def build_os(self, arch):
"ubuntu2404",
]
elif self.dname == 'debian':
return ["debian81", "debian92", "debian10", "debian11", "debian12"]
return ["debian81", "debian92", "debian10", "debian11", "debian12", "debian13"]
else:
raise Exception("BUG: unsupported platform?")

Expand Down