1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-22 13:34:15 +03:00

bootstrap: add debian10 support

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>

Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Fri Dec  6 00:16:45 UTC 2019 on sn-devel-184
This commit is contained in:
Stefan Metzmacher 2019-12-04 12:10:27 +01:00
parent 41f6248eff
commit eefc8ee8e3
10 changed files with 304 additions and 3 deletions

View File

@ -22,7 +22,7 @@ variables:
# Set this to the contents of bootstrap/sha1sum.txt
# which is generated by bootstrap/template.py --render
#
SAMBA_CI_CONTAINER_TAG: 8a3bbedea9514a337ed39d8c4e88abb17c43f975
SAMBA_CI_CONTAINER_TAG: f0cc64e22c612eb0599984cfc5dd20f36858db59
#
# We use the ubuntu1804 image as default as
# it matches what we have on sn-devel-184.
@ -36,6 +36,7 @@ variables:
SAMBA_CI_CONTAINER_IMAGE_ubuntu1804: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-ubuntu1804:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_ubuntu1604: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-ubuntu1604:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_debian9: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-debian9:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_debian10: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-debian10:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_opensuse150: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-opensuse150:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_opensuse151: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-opensuse151:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_fedora29: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-fedora29:${SAMBA_CI_CONTAINER_TAG}
@ -273,6 +274,10 @@ debian9-samba-o3:
extends: .samba-o3-template
image: $SAMBA_CI_CONTAINER_IMAGE_debian9
debian10-samba-o3:
extends: .samba-o3-template
image: $SAMBA_CI_CONTAINER_IMAGE_debian10
opensuse150-samba-o3:
extends: .samba-o3-template
image: $SAMBA_CI_CONTAINER_IMAGE_opensuse150

View File

@ -92,6 +92,9 @@ ubuntu1604:
ubuntu1404:
extends: .build_image_template_force_broken
debian10:
extends: .build_image_template
debian9:
extends: .build_image_template

View File

@ -12,7 +12,7 @@ A pure python3 module with CLI to bootstrap Samba envs for multiple distribution
## Supported Distributions
deb: Debian 7|8|9, Ubuntu 1404|1604|1804
deb: Debian 7|8|9|10, Ubuntu 1404|1604|1804
rpm: CentOS 6|7, Fedora 28|29, openSUSE Leap 15.0|15.1
Easy to add more.

View File

@ -403,6 +403,13 @@ DEB_DISTS = {
'language-pack-en': '', # included in locales
}
},
'debian10': {
'docker_image': 'debian:10',
'vagrant_box': 'debian/buster64',
'replace': {
'language-pack-en': '', # included in locales
}
},
'ubuntu1404': {
'docker_image': 'ubuntu:14.04',
'vagrant_box': 'ubuntu/trusty64',

View File

@ -31,6 +31,13 @@ Vagrant.configure("2") do |config|
v.vm.provision :shell, path: "centos8/locale.sh"
end
config.vm.define "debian10" do |v|
v.vm.box = "debian/buster64"
v.vm.hostname = "debian10"
v.vm.provision :shell, path: "debian10/bootstrap.sh"
v.vm.provision :shell, path: "debian10/locale.sh"
end
config.vm.define "debian7" do |v|
v.vm.box = "debian/wheezy64"
v.vm.hostname = "debian7"

View File

@ -0,0 +1,27 @@
#
# This file is generated by 'bootstrap/template.py --render'
# See also bootstrap/config.py
#
FROM debian:10
# pass in with --build-arg while build
ARG SHA1SUM
RUN [ -n $SHA1SUM ] && echo $SHA1SUM > /sha1sum.txt
ADD *.sh /tmp/
# need root permission, do it before USER samba
RUN /tmp/bootstrap.sh && /tmp/locale.sh
# if ld.gold exists, force link it to ld
RUN set -x; LD=$(which ld); LD_GOLD=$(which ld.gold); test -x $LD_GOLD && ln -sf $LD_GOLD $LD && test -x $LD && echo "$LD is now $LD_GOLD"
# make test can not work with root, so we have to create a new user
RUN useradd -m -U -s /bin/bash samba && \
mkdir -p /etc/sudoers.d && \
echo "samba ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/samba
USER samba
WORKDIR /home/samba
# samba tests rely on this
ENV USER=samba LC_ALL=en_US.utf8 LANG=en_US.utf8

View File

@ -0,0 +1,106 @@
#!/bin/bash
#
# This file is generated by 'bootstrap/template.py --render'
# See also bootstrap/config.py
#
set -xueo pipefail
export DEBIAN_FRONTEND=noninteractive
apt-get -y update
apt-get -y install \
acl \
apt-utils \
attr \
autoconf \
bind9utils \
binutils \
bison \
build-essential \
curl \
debhelper \
dnsutils \
docbook-xml \
docbook-xsl \
flex \
gcc \
gdb \
git \
glusterfs-common \
gzip \
heimdal-multidev \
hostname \
htop \
krb5-config \
krb5-kdc \
krb5-user \
lcov \
libacl1-dev \
libaio-dev \
libarchive-dev \
libattr1-dev \
libavahi-common-dev \
libblkid-dev \
libbsd-dev \
libcap-dev \
libcephfs-dev \
libcups2-dev \
libdbus-1-dev \
libglib2.0-dev \
libgnutls28-dev \
libgpgme11-dev \
libicu-dev \
libjansson-dev \
libjs-jquery \
libjson-perl \
libkrb5-dev \
libldap2-dev \
liblmdb-dev \
libncurses5-dev \
libpam0g-dev \
libparse-yapp-perl \
libpcap-dev \
libpopt-dev \
libreadline-dev \
libsystemd-dev \
libtasn1-bin \
libtasn1-dev \
libunwind-dev \
lmdb-utils \
locales \
lsb-release \
make \
mawk \
mingw-w64 \
patch \
perl \
perl-modules \
pkg-config \
procps \
psmisc \
python3 \
python3-crypto \
python3-dbg \
python3-dev \
python3-dnspython \
python3-gpg \
python3-iso8601 \
python3-markdown \
python3-matplotlib \
python3-pexpect \
rng-tools \
rsync \
sed \
sudo \
tar \
tree \
uuid-dev \
xfslibs-dev \
xsltproc \
zlib1g-dev
apt-get -y autoremove
apt-get -y autoclean
apt-get -y clean

View File

@ -0,0 +1,55 @@
#!/bin/bash
#
# This file is generated by 'bootstrap/template.py --render'
# See also bootstrap/config.py
#
set -xueo pipefail
# refer to /usr/share/i18n/locales
INPUTFILE=en_US
# refer to /usr/share/i18n/charmaps
CHARMAP=UTF-8
# locale to generate in /usr/lib/locale
# glibc/localedef will normalize UTF-8 to utf8, follow the naming style
LOCALE=$INPUTFILE.utf8
# if locale is already correct, exit
( locale | grep LC_ALL | grep -i $LOCALE ) && exit 0
# if locale not available, generate locale into /usr/lib/locale
if ! ( locale --all-locales | grep -i $LOCALE )
then
# no-archive means create its own dir
localedef --inputfile $INPUTFILE --charmap $CHARMAP --no-archive $LOCALE
fi
# update locale conf and global env file
# set both LC_ALL and LANG for safe
# update conf for Debian family
FILE=/etc/default/locale
if [ -f $FILE ]
then
echo LC_ALL="$LOCALE" > $FILE
echo LANG="$LOCALE" >> $FILE
fi
# update conf for RedHat family
FILE=/etc/locale.conf
if [ -f $FILE ]
then
# LC_ALL is not valid in this file, set LANG only
echo LANG="$LOCALE" > $FILE
fi
# update global env file
FILE=/etc/environment
if [ -f $FILE ]
then
# append LC_ALL if not exist
grep LC_ALL $FILE || echo LC_ALL="$LOCALE" >> $FILE
# append LANG if not exist
grep LANG $FILE || echo LANG="$LOCALE" >> $FILE
fi

View File

@ -0,0 +1,91 @@
---
packages:
- acl
- apt-utils
- attr
- autoconf
- bind9utils
- binutils
- bison
- build-essential
- curl
- debhelper
- dnsutils
- docbook-xml
- docbook-xsl
- flex
- gcc
- gdb
- git
- glusterfs-common
- gzip
- heimdal-multidev
- hostname
- htop
- krb5-config
- krb5-kdc
- krb5-user
- lcov
- libacl1-dev
- libaio-dev
- libarchive-dev
- libattr1-dev
- libavahi-common-dev
- libblkid-dev
- libbsd-dev
- libcap-dev
- libcephfs-dev
- libcups2-dev
- libdbus-1-dev
- libglib2.0-dev
- libgnutls28-dev
- libgpgme11-dev
- libicu-dev
- libjansson-dev
- libjs-jquery
- libjson-perl
- libkrb5-dev
- libldap2-dev
- liblmdb-dev
- libncurses5-dev
- libpam0g-dev
- libparse-yapp-perl
- libpcap-dev
- libpopt-dev
- libreadline-dev
- libsystemd-dev
- libtasn1-bin
- libtasn1-dev
- libunwind-dev
- lmdb-utils
- locales
- lsb-release
- make
- mawk
- mingw-w64
- patch
- perl
- perl-modules
- pkg-config
- procps
- psmisc
- python3
- python3-crypto
- python3-dbg
- python3-dev
- python3-dnspython
- python3-gpg
- python3-iso8601
- python3-markdown
- python3-matplotlib
- python3-pexpect
- rng-tools
- rsync
- sed
- sudo
- tar
- tree
- uuid-dev
- xfslibs-dev
- xsltproc
- zlib1g-dev

View File

@ -1 +1 @@
8a3bbedea9514a337ed39d8c4e88abb17c43f975
f0cc64e22c612eb0599984cfc5dd20f36858db59