From 2303beaf0b30a452a3787995e56c3f8f79b7c85f Mon Sep 17 00:00:00 2001 From: liyuenan Date: Wed, 12 Oct 2016 10:41:17 +0800 Subject: Make the openstack-newton package JIRA: COMPASS-491 Change-Id: I27ca70b02c947e3c6a2467ad250ff81461c5de6f Signed-off-by: liyuenan --- build/build.conf | 1 + build/make_repo.sh | 16 +++--- build/os/ubuntu/xenial/newton/Dockerfile.tmpl | 26 +++++++++ build/templates/Debian_xenial_newton.tmpl | 76 +++++++++++++++++++++++++++ 4 files changed, 113 insertions(+), 6 deletions(-) create mode 100644 build/os/ubuntu/xenial/newton/Dockerfile.tmpl create mode 100644 build/templates/Debian_xenial_newton.tmpl (limited to 'build') diff --git a/build/build.conf b/build/build.conf index c6e0f7a1..b3568f4f 100644 --- a/build/build.conf +++ b/build/build.conf @@ -26,6 +26,7 @@ export UBUNTU_ISO1=${UBUNTU_ISO1:-$PACKAGE_URL/ubuntu-14.04.3-server-amd64.iso} export TRUSTY_LIBERTY_PPA=${TRUSTY_LIBERTY_PPA:-$PACKAGE_URL/trusty-liberty-ppa.tar.gz} export TRUSTY_MITAKA_PPA=${TRUSTY_MITAKA_PPA:-$PACKAGE_URL/trusty-mitaka-ppa.tar.gz} export XENIAL_MITAKA_PPA=${XENIAL_MITAKA_PPA:-$PACKAGE_URL/xenial-mitaka-ppa.tar.gz} +export XENIAL_NEWTON_PPA=${XENIAL_NEWTON_PPA:-$PACKAGE_URL/xenial-newton-ppa.tar.gz} #export CENTOS7_JUNO_PPA=${CENTOS7_JUNO_PPA:-$PACKAGE_URL/centos7-juno-ppa.tar.gz} #export CENTOS7_KILO_PPA=${CENTOS7_KILO_PPA:-$PACKAGE_URL/centos7-kilo-ppa.tar.gz} export CENTOS7_LIBERTY_PPA=${CENTOS7_LIBERTY_PPA:-$PACKAGE_URL/centos7-liberty-ppa.tar.gz} diff --git a/build/make_repo.sh b/build/make_repo.sh index f186c46c..7c327c97 100755 --- a/build/make_repo.sh +++ b/build/make_repo.sh @@ -130,7 +130,7 @@ function make_repo() echo "${ansible_dir}" cp -rf ${ansible_dir}/roles/ ${WORK_PATH}/work/tmp/ if [[ ${os_ver} == xenial ]]; then - if [[ -d ${ansible_dir}/openstack_${package_tag}/roles && "`ls ${ansible_dir}/openstack_${package_tag}`" != "" ]]; then + if [[ -d ${ansible_dir}/openstack_${package_tag}_${os_ver}/roles && "`ls ${ansible_dir}/openstack_${package_tag}_${os_ver}`" != "" ]]; then cp -rf ${ansible_dir}/openstack_${package_tag}_${os_ver}/roles/* ${WORK_PATH}/work/tmp/roles/ fi else @@ -318,9 +318,11 @@ EOF function make_all_repo() { - for env_os in trusty xanial rhel7; do - make_repo --package-tag jhenv --jh-os $env_os - done +# for env_os in trusty xanial rhel7; do +# make_repo --package-tag jhenv --jh-os $env_os +# done +# jhenv only support trusty + make_repo --package-tag jhenv --jh-os trusty make_repo --package-tag pip @@ -339,10 +341,12 @@ function make_all_repo() --default-package "openssh-server" \ --special-package "openvswitch-switch" done - - make_repo --os-ver xenial --package-tag mitaka \ + + for opv in mitaka newton; do + make_repo --os-ver xenial --package-tag $opv \ --ansible-dir $WORK_PATH/deploy/adapters/ansible \ --default-package "openssh-server" + done make_repo --os-ver rhel7 --package-tag juno \ --ansible-dir $WORK_PATH/deploy/adapters/ansible \ diff --git a/build/os/ubuntu/xenial/newton/Dockerfile.tmpl b/build/os/ubuntu/xenial/newton/Dockerfile.tmpl new file mode 100644 index 00000000..4b24c0a3 --- /dev/null +++ b/build/os/ubuntu/xenial/newton/Dockerfile.tmpl @@ -0,0 +1,26 @@ +FROM ubuntu:16.04 +MAINTAINER Chigang(Justin) + +#RUN apt-get update + +RUN rm -f /etc/apt/apt.conf.d/docker-clean +#set packages = $getVar('spcial_packages', []) +#for package in $packages +ADD ./Debian/packages/debian-packages/$package /var/cache/apt/archives/ +#end for +#set scripts = $getVar('scripts', []) +#for script in $scripts +ADD ./Debian/script/$script /tmp/chigang/$script +RUN chmod +x /tmp/chigang/$script +RUN /tmp/chigang/$script +#end for +ADD ./install_packages.sh /tmp/chigang/install_packages.sh +RUN chmod +x /tmp/chigang/install_packages.sh +RUN /tmp/chigang/install_packages.sh + +ADD ./cp_repo.sh /tmp/chigang/cp_repo.sh +RUN chmod +x /tmp/chigang/cp_repo.sh +RUN mkdir /result + +CMD ["/tmp/chigang/cp_repo.sh"] +#VOLUME /tmp/chigang diff --git a/build/templates/Debian_xenial_newton.tmpl b/build/templates/Debian_xenial_newton.tmpl new file mode 100644 index 00000000..e10d4e22 --- /dev/null +++ b/build/templates/Debian_xenial_newton.tmpl @@ -0,0 +1,76 @@ +#!/bin/bash +set -ex + +#set OPV="newton" + +# add openstack $OPV repo +apt-get update && apt-get install -y software-properties-common +# sudo add-apt-repository -y cloud-archive:$OPV +apt-get install -d nova-compute-kvm -y + +#make pernoca database +apt-get install -y apt-transport-https debconf-utils libaio1 libc6 libdbd-mysql-perl libgcc1 libgcrypt20 libstdc++6 python-software-properties wget +apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 +add-apt-repository 'deb https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-10.0.26/repo/ubuntu/ xenial main' +apt-get update +apt-get install -d mariadb-client mariadb-galera-server-10.0 galera-3 rsync socat -y +#make pernoca database end + + + +# add galeracluster repo +#sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db +#sudo add-apt-repository 'deb http://ftp.osuosl.org/pub/mariadb/repo/5.5/ubuntu trusty main' +#apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 D669017EBC19DDBA +##sudo add-apt-repository 'deb http://releases.galeracluster.com/ubuntu trusty main' +# add oracle java8 ppa +add-apt-repository ppa:webupd8team/java +# add open java7 repo +##sudo add-apt-repository 'deb http://security.ubuntu.com/ubuntu trusty-security main' + +apt-get update + +apt-get install python2.7 -y + +apt-get install reprepro -y + +apt-get -d install pciutils -y + +cd /var/cache/apt/ +apt-get download libexpat1 +cd - + +#download packages +#set packages = $getVar('default_packages', []) +#for pkg in $packages +apt-get -d install $pkg -y +#end for +#set packages = $getVar('packages', []) +#for pkg in $packages +apt-get -d install $pkg -y +#end for + +#make repo +mkdir -p xenial-$OPV-ppa/conf +cat < xenial-$OPV-ppa/conf/distributions +Codename: xenial +Components: main +Architectures: amd64 +EOF + +apt-get install wget + +wget -O /var/cache/apt/python-pyasn1_0.1.8-2_all.deb http://us.archive.ubuntu.com/ubuntu/pool/main/p/pyasn1/python-pyasn1_0.1.8-2_all.deb +rm -rf /var/cache/apt/python-pyasn1_0.1.7-1ubuntu2_all.deb + +# Ubuntu16.04.1 LTS only have gcc-5-base_5.4.0-6ubuntu1~16.04.1, nova-novncproxy need +# gcc-5-base_5.4.0-6ubuntu1~16.04.2, but the docker could not download gcc-5-base package. +wget http://205.177.226.237:9999/nova-novncproxy_xenial_newton.tar.gz +tar -zxvf nova-novncproxy_xenial_newton.tar.gz --strip-components 1 -C /var/cache/apt/ + +mkdir deb +find /var/cache/apt/ -name *.deb | xargs -i cp {} deb + +reprepro -b xenial-$OPV-ppa includedeb xenial deb/*.deb + +tar -zcvf /xenial-$OPV-ppa.tar.gz ./xenial-$OPV-ppa -- cgit 1.2.3-korg