diff options
author | Michal Nowikowski <godfryd@isc.org> | 2020-07-03 12:11:26 +0200 |
---|---|---|
committer | Michal Nowikowski <godfryd@isc.org> | 2020-07-03 12:11:26 +0200 |
commit | 8598343b2b51b239e049ef370c0d952c77e6f915 (patch) | |
tree | 0ab2f67ae4388ed0541cf439c88d2bd05dc72b71 | |
parent | c2147767a52405de05f5bcb2b78965d94dd22584 (diff) | |
download | isc-dhcp-keama-packaging.tar.gz |
added scripts for keama packagingkeama-packaging
-rw-r--r-- | Vagrantfile | 10 | ||||
-rwxr-xr-x | pkg.sh | 18 | ||||
-rwxr-xr-x | vagrant-pkg.sh | 71 |
3 files changed, 99 insertions, 0 deletions
diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 00000000..6f0bf3b2 --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,10 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : +ENV["LC_ALL"] = "C" + +Vagrant.configure("2") do |config| + config.vm.box = "isc/lxc-" + ENV['DISTRO'] + +# config.vm.synced_folder '../../', '/isc-dhcp', disabled: true +# config.vm.provision "shell", privileged: false, path: "/vagrant/vagrant-pkg.sh" +end @@ -0,0 +1,18 @@ +#!/bin/bash +set -e -x + +KEAMA_VERSION=$1 + +#DISTROS="debian-10 ubuntu-18.04 ubuntu-20.04 fedora-32 centos-7 centos-8" +DISTROS="debian-10 ubuntu-18.04 ubuntu-20.04 centos-7" + +for d in $DISTROS; do + export DISTRO=$d + vagrant destroy -f || true + vagrant up + vagrant ssh -- /vagrant/vagrant-pkg.sh $KEAMA_VERSION + vagrant destroy -f + rm -rf $DISTRO + mkdir $DISTRO + mv keama/isc-dhcp-keama* $DISTRO/ +done diff --git a/vagrant-pkg.sh b/vagrant-pkg.sh new file mode 100755 index 00000000..a29baa8d --- /dev/null +++ b/vagrant-pkg.sh @@ -0,0 +1,71 @@ +#!/bin/bash +set -e -x + +KEAMA_VERSION=$1 + +# install deps +if [ -e /etc/debian_version ]; then + FPM_TARGET=deb + sudo apt-get update --allow-releaseinfo-change + sudo DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends ruby ruby-dev rubygems build-essential \ + git wget unzip +else + FPM_TARGET=rpm + + . /etc/os-release + + # centos 7 + if [ "$ID" == "centos" -a "$VERSION_ID" == "7" ]; then + sudo yum -y install gcc make rpm-build libffi-devel git wget unzip centos-release-scl + sudo yum --enablerepo=centos-sclo-rh -y install rh-ruby23 rh-ruby23-ruby-devel rh-ruby23-rubygems rh-ruby23-rubygem-rake + source /opt/rh/rh-ruby23/enable + echo 'source /opt/rh/rh-ruby23/enable' | sudo tee -a /root/.bashrc + else + if [ "$ID" == "centos" -a "$VERSION_ID" == "8" ]; then + sudo ping -c 4 onet.pl + fi + sudo dnf -y install --enablerepo=PowerTools ruby ruby-devel rubygems rubygem-rake gcc make rpm-build libffi-devel git wget unzip + fi +fi +sudo -i gem install --no-document fpm + +# cleanup +pushd /vagrant +make clean || true +make distclean || true + +# configure +./configure --prefix=/usr + + +# compile +pushd keama +make + +# install to DESTDIR +rm -rf root +mkdir root +export DESTDIR=`pwd`/root +make install + + +# build package +rm -f isc-dhcp-keama* +fpm -n isc-dhcp-keama -v ${KEAMA_VERSION} \ + --license 'ISC' \ + --vendor 'Internet Systems Consortium, Inc.' \ + --url 'https://gitlab.isc.org/isc-projects/dhcp' \ + --description 'ISC DHCP Kea Migration Assistant' \ + -s dir \ + -t ${FPM_TARGET} \ + -C ${DESTDIR} . + + +# check package +if [ -e /etc/debian_version ]; then + sudo dpkg -i isc-dhcp-keama_*_amd64.deb +else + sudo rpm -i isc-dhcp-keama*rpm +fi +ls -al /usr/sbin/keama +/usr/sbin/keama 2>&1 | grep Usage |