Skip to content

Commit

Permalink
Expand build targets to include Debian11 for release/1.1 (#5574)
Browse files Browse the repository at this point in the history
- This PR adds Debian 11 as a build target for release/1.1
- It also addresses an issue related to missing packages: matrix-org/synapse#9073 by removing dh-systemd from the installation list. It hasn't been needed since Debian 8.

Testing notes:

- verified build passes and artifacts are created.
  • Loading branch information
gauravIoTEdge authored Sep 29, 2021
1 parent 995083d commit 0195c1d
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 7 deletions.
13 changes: 13 additions & 0 deletions builds/misc/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,19 @@ jobs:
arch: aarch64
target.iotedged: edgelet/target/aarch64-unknown-linux-gnu/release

Debian11-amd64:
os: debian11
arch: amd64
target.iotedged: edgelet/target/release
Debian11-arm32v7:
os: debian11
arch: arm32v7
target.iotedged: edgelet/target/armv7-unknown-linux-gnueabihf/release
Debian11-aarch64:
os: debian11
arch: aarch64
target.iotedged: edgelet/target/aarch64-unknown-linux-gnu/release

Ubuntu1804-amd64:
os: ubuntu18.04
arch: amd64
Expand Down
15 changes: 12 additions & 3 deletions edgelet/build/linux/package.sh
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,15 @@ case "$PACKAGE_OS" in
CMAKE_ARGS="$CMAKE_ARGS '-DOPENSSL_DEPENDS_SPEC=libssl1.1'"
;;

'debian11')
DOCKER_IMAGE='debian:11-slim'

CMAKE_ARGS="$CMAKE_ARGS -DCPACK_GENERATOR=DEB"
CMAKE_ARGS="$CMAKE_ARGS '-DCPACK_PACKAGE_VERSION=$VERSION'"
CMAKE_ARGS="$CMAKE_ARGS '-DCPACK_DEBIAN_PACKAGE_RELEASE=$REVISION'"
CMAKE_ARGS="$CMAKE_ARGS '-DOPENSSL_DEPENDS_SPEC=libssl1.1'"
;;

'ubuntu18.04')
DOCKER_IMAGE='ubuntu:18.04'

Expand Down Expand Up @@ -201,7 +210,7 @@ case "$PACKAGE_OS.$PACKAGE_ARCH" in
apt-get update &&
apt-get upgrade -y &&
apt-get install -y --no-install-recommends \
binutils build-essential ca-certificates curl cmake debhelper dh-systemd file git make \
binutils build-essential ca-certificates curl cmake debhelper file git make \
gcc g++ pkg-config \
libcurl4-openssl-dev libssl-dev uuid-dev &&
'
Expand All @@ -213,7 +222,7 @@ case "$PACKAGE_OS.$PACKAGE_ARCH" in
apt-get update &&
apt-get upgrade -y &&
apt-get install -y --no-install-recommends \
binutils build-essential ca-certificates cmake curl debhelper dh-systemd file git make \
binutils build-essential ca-certificates cmake curl debhelper file git make \
gcc g++ \
gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf \
libcurl4-openssl-dev:armhf libssl-dev:armhf uuid-dev:armhf &&
Expand All @@ -238,7 +247,7 @@ case "$PACKAGE_OS.$PACKAGE_ARCH" in
apt-get update &&
apt-get upgrade -y &&
apt-get install -y --no-install-recommends \
binutils build-essential ca-certificates cmake curl debhelper dh-systemd file git make \
binutils build-essential ca-certificates cmake curl debhelper file git make \
gcc g++ \
gcc-aarch64-linux-gnu g++-aarch64-linux-gnu \
libcurl4-openssl-dev:arm64 libssl-dev:arm64 uuid-dev:arm64 &&
Expand Down
3 changes: 1 addition & 2 deletions edgelet/contrib/debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@ Source: iotedge
Section: admin
Priority: extra
Maintainer: Azure IoT Edge Devs
Build-Depends: debhelper (>=9),
dh-systemd
Build-Depends: debhelper (>=10)
Standards-Version: 3.9.6
Homepage: https:/azure/iotedge

Expand Down
13 changes: 11 additions & 2 deletions edgelet/doc/devguide.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ There are two options for building the IoT Edge Security Daemon.

Linux packages are built using the `edgelet/build/linux/package.sh` script. Set the following environment variables, then invoke the script:

1. `PACKAGE_OS`: This is the OS on which the resulting packages will be installed. It should be one of `centos7`, `debian9`, `debian10` or `ubuntu18.04`
1. `PACKAGE_OS`: This is the OS on which the resulting packages will be installed. It should be one of `centos7`, `debian9`, `debian10`, `debian11`, or `ubuntu18.04`

1. `PACKAGE_ARCH`: This is the architecture of the OS on which the resulting packages will be installed. It should be one of `amd64`, `arm32v7` or `aarch64`.

Expand Down Expand Up @@ -81,7 +81,16 @@ yum install \
libcurl-devel libuuid-devel openssl-devel
```

#### Debian 9-10, Ubuntu 18.04
#### Debian 9-11

```sh
apt-get update
apt-get install \
binutils build-essential ca-certificates curl cmake debhelper file git make \
gcc g++ pkg-config \
libcurl4-openssl-dev libssl-dev uuid-dev
```
#### Ubuntu 18.04

```sh
apt-get update
Expand Down

0 comments on commit 0195c1d

Please sign in to comment.