Skip to content

Commit e0cdc3a

Browse files
authored
Include openldap 2.4.44 blob in release to use it in Xenial (#254)
* Include openldap 2.4.44 blob in release to use it in Xenial [#183555103] This change includes an older version of openldap in the release. At compilation time, the Stemcell version gets checked and the only the appropriate openldap version gets compiled. * Update workflow to accoutn for Xenial being supported in master [#183701174]
1 parent aa6bc22 commit e0cdc3a

File tree

10 files changed

+76
-14
lines changed

10 files changed

+76
-14
lines changed

.github/dockerfiles/dockerize-release/Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ nfs-debs \
5959
nfsbroker \
6060
nfsv3driver \
6161
berkeleydb \
62+
openldap-2.4.44 \
6263
openldap-2.5.13"
6364

6465
WORKDIR /release/packages

.github/workflows/compilation-tests.yml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ on:
22
pull_request:
33
branches:
44
- master
5-
- v5.0
65

76
concurrency:
87
group: ${{ github.workflow }}-${{ github.ref }}
@@ -14,13 +13,7 @@ jobs:
1413
runs-on: ubuntu-latest
1514
strategy:
1615
matrix:
17-
base-branch:
18-
- ${{ github.base_ref }}
1916
stemcell-name: [ubuntu-bionic, ubuntu-jammy, ubuntu-xenial]
20-
exclude:
21-
# Support for Xenial Stemcell is available in branch v5.0
22-
- base-branch: master
23-
stemcell-name: ubuntu-xenial
2417

2518
steps:
2619
- uses: actions/checkout@v3

config/blobs.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,10 @@ nfs-debs/xenial/rpcbind_0.2.3-0.6_amd64.deb:
8282
size: 45966
8383
object_id: 34ce9d16-81b5-4f83-6e52-14259e667a38
8484
sha: sha256:2338a1e969779c54d40ca9d53deb928afc721524e511dac38be76f1a61540f81
85+
openldap/openldap-2.4.44.tgz:
86+
size: 5658830
87+
object_id: daea5917-02c3-4fe5-4626-a8805979788d
88+
sha: 016a738d050a68d388602a74b5e991035cdba149
8589
openldap/openldap-2.5.13.tgz:
8690
size: 6454072
8791
object_id: 92766a2b-d302-4a56-574e-abdd76726f39

jobs/nfstestldapserver/spec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
name: nfstestldapserver
33
packages:
4+
- openldap-2.4.44
45
- openldap-2.5.13
56
templates:
67
bin/ctl: bin/ctl

jobs/nfstestldapserver/templates/bin/ctl

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,13 @@ source /var/vcap/jobs/nfstestldapserver/helpers/ctl_setup.sh 'nfstestldapserver'
88

99
export PORT=${PORT:-5000}
1010
export LANG=en_US.UTF-8
11-
12-
export OPENLDAP=/var/vcap/packages/openldap-2.5.13
11+
codename=$(lsb_release -c | cut -f 2 )
12+
if [[ "${codename}" == "xenial" ]];
13+
then
14+
export OPENLDAP=/var/vcap/packages/openldap-2.4.44
15+
else
16+
export OPENLDAP=/var/vcap/packages/openldap-2.5.13
17+
fi
1318
export PATH=${OPENLDAP}/libexec:${OPENLDAP}/sbin:$PATH
1419

1520
case $1 in
Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,21 @@
11
#!/bin/bash
22

3-
export OPENLDAP=/var/vcap/packages/openldap-2.5.13
4-
export PATH=${OPENLDAP}/libexec:${OPENLDAP}/sbin:${OPENLDAP}/bin:$PATH
3+
codename=$(lsb_release -c | cut -f 2 )
4+
if [[ "${codename}" == "xenial" ]];
5+
then
6+
export OPENLDAP=/var/vcap/packages/openldap-2.4.44
7+
export PATH=${OPENLDAP}/libexec:${OPENLDAP}/sbin:${OPENLDAP}/bin:$PATH
58

6-
pushd /var/vcap/jobs/nfstestldapserver/config/
7-
ldapadd -x -w secret -H ldap://127.0.0.1:389 -D "cn=admin,dc=domain,dc=com" -f addou.ldif
8-
ldapadd -x -w secret -H ldap://127.0.0.1:389 -D "cn=admin,dc=domain,dc=com" -f adduser.ldif
9+
pushd /var/vcap/jobs/nfstestldapserver/config/
10+
ldapadd -x -w secret -h 127.0.0.1 -p 389 -D "cn=admin,dc=domain,dc=com" -f addou.ldif
11+
ldapadd -x -w secret -h 127.0.0.1 -p 389 -D "cn=admin,dc=domain,dc=com" -f adduser.ldif
12+
else
13+
export OPENLDAP=/var/vcap/packages/openldap-2.5.13
14+
export PATH=${OPENLDAP}/libexec:${OPENLDAP}/sbin:${OPENLDAP}/bin:$PATH
15+
16+
pushd /var/vcap/jobs/nfstestldapserver/config/
17+
ldapadd -x -w secret -H ldap://127.0.0.1:389 -D "cn=admin,dc=domain,dc=com" -f addou.ldif
18+
ldapadd -x -w secret -H ldap://127.0.0.1:389 -D "cn=admin,dc=domain,dc=com" -f adduser.ldif
19+
fi
920

1021
exit 0

jobs/nfstestldapserver/templates/slapd.ldif.erb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,11 @@ olcPidFile: /var/vcap/sys/run/nfstestldapserver/nfstestldapserver.pid
3434
#dn: cn=module,cn=config
3535
#objectClass: olcModuleList
3636
#cn: module
37+
#<% if system("bash -c 'lsb_release -c | cut -f 2'") == "xenial" %>
38+
#olcModulepath: /var/vcap/packages/openldap-2-4-44/libexec/openldap
39+
#<% else %>
3740
#olcModulepath: /var/vcap/packages/openldap-2.5.13/libexec/openldap
41+
#<% end %>
3842
#olcModuleload: back_bdb.la
3943
#olcModuleload: back_hdb.la
4044
#olcModuleload: back_ldap.la
@@ -47,9 +51,15 @@ objectClass: olcSchemaConfig
4751
cn: schema
4852

4953
include: file:///var/vcap/jobs/nfstestldapserver/config/core.ldif
54+
#<% if system("bash -c 'lsb_release -c | cut -f 2'") == "xenial" %>
55+
include: file:///var/vcap/packages/openldap-2.4.44/etc/openldap/schema/cosine.ldif
56+
include: file:///var/vcap/packages/openldap-2.4.44/etc/openldap/schema/nis.ldif
57+
include: file:///var/vcap/packages/openldap-2.4.44/etc/openldap/schema/inetorgperson.ldif
58+
#<% else %>
5059
include: file:///var/vcap/packages/openldap-2.5.13/etc/openldap/schema/cosine.ldif
5160
include: file:///var/vcap/packages/openldap-2.5.13/etc/openldap/schema/nis.ldif
5261
include: file:///var/vcap/packages/openldap-2.5.13/etc/openldap/schema/inetorgperson.ldif
62+
#<% end %>
5363

5464
# Frontend settings
5565
#

packages/openldap-2.4.44/packaging

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
set -e # exit immediately if a simple command exits with a non-zero status
2+
set -u # report the usage of uninitialized variables
3+
4+
codename=$(lsb_release -c | cut -f 2 )
5+
if [[ "${codename}" != "xenial" ]];
6+
then
7+
exit 0
8+
fi
9+
10+
# Detect # of CPUs so make jobs can be parallelized
11+
CPUS=$(grep -c ^processor /proc/cpuinfo)
12+
# Available variables
13+
# $BOSH_COMPILE_TARGET - where this package & spec'd source files are available
14+
# $BOSH_INSTALL_TARGET - where you copy/install files to be included in package
15+
export HOME=/var/vcap
16+
export BDB_PATH=/var/vcap/packages/berkeleydb
17+
18+
cd $BOSH_COMPILE_TARGET
19+
tar -xzvf openldap/openldap-2.4.44.tgz
20+
cd openldap-2.4.44
21+
22+
export CPPFLAGS="-I ${BDB_PATH}/include"
23+
export LD_LIBRARY_PATH="${BDB_PATH}/lib"
24+
./configure --prefix=${BOSH_INSTALL_TARGET}
25+
26+
make depend && make && make install

packages/openldap-2.4.44/spec

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
name: openldap-2.4.44
3+
dependencies: [berkeleydb]
4+
files:
5+
- openldap/openldap-2.4.44.tgz

packages/openldap-2.5.13/packaging

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
set -e # exit immediately if a simple command exits with a non-zero status
22
set -u # report the usage of uninitialized variables
33

4+
codename=$(lsb_release -c | cut -f 2 )
5+
if [[ "${codename}" == "xenial" ]];
6+
then
7+
exit 0
8+
fi
9+
410
# Detect # of CPUs so make jobs can be parallelized
511
CPUS=$(grep -c ^processor /proc/cpuinfo)
612
# Available variables

0 commit comments

Comments
 (0)