1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-10 01:18:15 +03:00

bootstrap: Add OpenSUSE 15.1 image

Signed-off-by: Samuel Cabrero <scabrero@suse.de>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Samuel Cabrero 2019-06-18 11:03:41 +02:00 committed by Andrew Bartlett
parent 1b39c56354
commit 9d40b08ae3
10 changed files with 339 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: 563ddb220bfed37501be93b0b3204bb1ceb61b94
SAMBA_CI_CONTAINER_TAG: 339a70ba1881feec94109c5c4eafacf4ff6c43bc
#
# We use the ubuntu1804 image as default as
# it matches what we have on sn-devel-184.
@ -37,6 +37,7 @@ variables:
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_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}
SAMBA_CI_CONTAINER_IMAGE_fedora30: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-fedora30:${SAMBA_CI_CONTAINER_TAG}
SAMBA_CI_CONTAINER_IMAGE_centos7: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-centos7:${SAMBA_CI_CONTAINER_TAG}
@ -257,6 +258,10 @@ opensuse150-samba-o3:
extends: .samba-o3-template
image: $SAMBA_CI_CONTAINER_IMAGE_opensuse150
opensuse151-samba-o3:
extends: .samba-o3-template
image: $SAMBA_CI_CONTAINER_IMAGE_opensuse151
centos7-samba-o3:
extends: .samba-o3-template
image: $SAMBA_CI_CONTAINER_IMAGE_centos7

View File

@ -120,3 +120,6 @@ centos6:
opensuse150:
extends: .build_image_template
opensuse151:
extends: .build_image_template

View File

@ -13,7 +13,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
rpm: CentOS 6|7, Fedora 28|29, openSUSE Leap 15.0
rpm: CentOS 6|7, Fedora 28|29, openSUSE Leap 15.0|15.1
Easy to add more.

View File

@ -536,6 +536,39 @@ RPM_DISTS = {
'libtasn1-tools': '', # asn1Parser is part of libtasn1
'mingw64-gcc': '', # doesn't exist
}
},
'opensuse151': {
'docker_image': 'opensuse/leap:15.1',
'vagrant_box': 'opensuse/openSUSE-15.1-x86_64',
'bootstrap': ZYPPER_BOOTSTRAP,
'replace': {
'@development-tools': '',
'dbus-devel': 'dbus-1-devel',
'docbook-style-xsl': 'docbook-xsl-stylesheets',
'glibc-common': 'glibc-locale',
'glibc-locale-source': 'glibc-i18ndata',
'glibc-langpack-en': '',
'jansson-devel': 'libjansson-devel',
'keyutils-libs-devel': 'keyutils-devel',
'krb5-workstation': 'krb5-client',
'libnsl2-devel': 'libnsl-devel',
'libsemanage-python': 'python2-semanage',
'nettle-devel': 'libnettle-devel',
'openldap-devel': 'openldap2-devel',
'perl-Archive-Tar': 'perl-Archive-Tar-Wrapper',
'perl-JSON-Parse': 'perl-JSON-XS',
'perl-generators': '',
'perl-interpreter': '',
'procps-ng': 'procps',
'python-dns': 'python2-dnspython',
'python3-crypto': 'python3-pycrypto',
'python3-dns': 'python3-dnspython',
'python3-markdown': 'python3-Markdown',
'quota-devel': '',
'glusterfs-api-devel': '',
'libtasn1-tools': '', # asn1Parser is part of libtasn1
'mingw64-gcc': '', # doesn't exist
}
}
}

View File

@ -73,6 +73,13 @@ Vagrant.configure("2") do |config|
v.vm.provision :shell, path: "opensuse150/locale.sh"
end
config.vm.define "opensuse151" do |v|
v.vm.box = "opensuse/openSUSE-15.1-x86_64"
v.vm.hostname = "opensuse151"
v.vm.provision :shell, path: "opensuse151/bootstrap.sh"
v.vm.provision :shell, path: "opensuse151/locale.sh"
end
config.vm.define "ubuntu1404" do |v|
v.vm.box = "ubuntu/trusty64"
v.vm.hostname = "ubuntu1404"

View File

@ -0,0 +1,27 @@
#
# This file is generated by 'bootstrap/template.py --render'
# See also bootstrap/config.py
#
FROM opensuse/leap:15.1
# 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,112 @@
#!/bin/bash
#
# This file is generated by 'bootstrap/template.py --render'
# See also bootstrap/config.py
#
set -xueo pipefail
zypper --non-interactive refresh
zypper --non-interactive update
zypper --non-interactive install \
--no-recommends \
system-user-nobody \
acl \
attr \
autoconf \
avahi-devel \
bind-utils \
binutils \
bison \
cups-devel \
curl \
dbus-1-devel \
docbook-dtds \
docbook-xsl-stylesheets \
flex \
gawk \
gcc \
gdb \
git \
glib2-devel \
glibc-locale \
glusterfs-devel \
gnutls-devel \
gpgme-devel \
gzip \
hostname \
htop \
keyutils-devel \
krb5-devel \
krb5-server \
lcov \
libacl-devel \
libaio-devel \
libarchive-devel \
libattr-devel \
libblkid-devel \
libbsd-devel \
libcap-devel \
libcephfs-devel \
libicu-devel \
libjansson-devel \
libnettle-devel \
libnsl-devel \
libpcap-devel \
libtasn1-devel \
libtirpc-devel \
libunwind-devel \
libuuid-devel \
libxslt \
lmdb \
lmdb-devel \
lsb-release \
make \
ncurses-devel \
openldap2-devel \
pam-devel \
patch \
perl \
perl-Archive-Tar-Wrapper \
perl-ExtUtils-MakeMaker \
perl-JSON-XS \
perl-Parse-Yapp \
perl-Test-Base \
pkgconfig \
policycoreutils-python \
popt-devel \
procps \
psmisc \
python-crypto \
python-devel \
python-markdown \
python2-dnspython \
python2-gpg \
python2-semanage \
python3 \
python3-Markdown \
python3-devel \
python3-dnspython \
python3-gpg \
python3-pycrypto \
readline-devel \
rng-tools \
rpcgen \
rpcsvc-proto-devel \
rsync \
sed \
sudo \
systemd-devel \
tar \
tree \
which \
xfsprogs-devel \
yum-utils \
zlib-devel
zypper --non-interactive clean
if [ -f /usr/lib/mit/bin/krb5-config ]; then
ln -sf /usr/lib/mit/bin/krb5-config /usr/bin/krb5-config
fi

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,94 @@
---
packages:
- acl
- attr
- autoconf
- avahi-devel
- bind-utils
- binutils
- bison
- cups-devel
- curl
- dbus-1-devel
- docbook-dtds
- docbook-xsl-stylesheets
- flex
- gawk
- gcc
- gdb
- git
- glib2-devel
- glibc-locale
- glusterfs-devel
- gnutls-devel
- gpgme-devel
- gzip
- hostname
- htop
- keyutils-devel
- krb5-devel
- krb5-server
- lcov
- libacl-devel
- libaio-devel
- libarchive-devel
- libattr-devel
- libblkid-devel
- libbsd-devel
- libcap-devel
- libcephfs-devel
- libicu-devel
- libjansson-devel
- libnettle-devel
- libnsl-devel
- libpcap-devel
- libtasn1-devel
- libtirpc-devel
- libunwind-devel
- libuuid-devel
- libxslt
- lmdb
- lmdb-devel
- lsb-release
- make
- ncurses-devel
- openldap2-devel
- pam-devel
- patch
- perl
- perl-Archive-Tar-Wrapper
- perl-ExtUtils-MakeMaker
- perl-JSON-XS
- perl-Parse-Yapp
- perl-Test-Base
- pkgconfig
- policycoreutils-python
- popt-devel
- procps
- psmisc
- python-crypto
- python-devel
- python-markdown
- python2-dnspython
- python2-gpg
- python2-semanage
- python3
- python3-Markdown
- python3-devel
- python3-dnspython
- python3-gpg
- python3-pycrypto
- readline-devel
- rng-tools
- rpcgen
- rpcsvc-proto-devel
- rsync
- sed
- sudo
- systemd-devel
- tar
- tree
- which
- xfsprogs-devel
- yum-utils
- zlib-devel

View File

@ -1 +1 @@
563ddb220bfed37501be93b0b3204bb1ceb61b94
339a70ba1881feec94109c5c4eafacf4ff6c43bc