summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorliyuenan <liyuenan@huawei.com>2016-10-12 10:41:17 +0800
committerliyuenan <liyuenan@huawei.com>2016-10-13 15:37:56 +0800
commit2303beaf0b30a452a3787995e56c3f8f79b7c85f (patch)
tree5386afc2ddeef9d4cb65542cb7159fdb78c5e2ab
parent63d8f65494ed9e57d29ed1ecbce1caba81677499 (diff)
Make the openstack-newton package
JIRA: COMPASS-491 Change-Id: I27ca70b02c947e3c6a2467ad250ff81461c5de6f Signed-off-by: liyuenan <liyuenan@huawei.com>
-rwxr-xr-xbuild.sh13
-rw-r--r--build/build.conf1
-rwxr-xr-xbuild/make_repo.sh16
-rw-r--r--build/os/ubuntu/xenial/newton/Dockerfile.tmpl26
-rw-r--r--build/templates/Debian_xenial_newton.tmpl76
5 files changed, 122 insertions, 10 deletions
diff --git a/build.sh b/build.sh
index 5ec8973b..a8014a89 100755
--- a/build.sh
+++ b/build.sh
@@ -78,10 +78,11 @@ function download_local()
function download_packages()
{
- for i in $CENTOS_BASE $COMPASS_CORE $COMPASS_WEB $COMPASS_INSTALL $TRUSTY_JUNO_PPA $TRUSTY_LIBERTY_PPA $TRUSTY_MITAKA_PPA \
- $XENIAL_MITAKA_PPA $UBUNTU_ISO $UBUNTU_ISO1 $CENTOS_ISO $CENTOS7_JUNO_PPA $CENTOS7_KILO_PPA $CENTOS7_LIBERTY_PPA \
- $CENTOS7_MITAKA_PPA $LOADERS $CIRROS $APP_PACKAGE $COMPASS_PKG \
- $PIP_REPO $ANSIBLE_MODULE; do
+ for i in $CENTOS_BASE $COMPASS_CORE $COMPASS_WEB $COMPASS_INSTALL \
+ $TRUSTY_JUNO_PPA $TRUSTY_LIBERTY_PPA $TRUSTY_MITAKA_PPA $XENIAL_MITAKA_PPA $XENIAL_NEWTON_PPA \
+ $UBUNTU_ISO $UBUNTU_ISO1 \
+ $CENTOS_ISO $CENTOS7_JUNO_PPA $CENTOS7_KILO_PPA $CENTOS7_LIBERTY_PPA $CENTOS7_MITAKA_PPA \
+ $LOADERS $CIRROS $APP_PACKAGE $COMPASS_PKG $PIP_REPO $ANSIBLE_MODULE; do
if [[ ! $i ]]; then
continue
@@ -133,6 +134,10 @@ function copy_file()
cp $CACHE_DIR/`basename $XENIAL_MITAKA_PPA` $new/repos/cobbler/ubuntu/ppa/ -rf
fi
+ if [[ $XENIAL_NEWTON_PPA ]]; then
+ cp $CACHE_DIR/`basename $XENIAL_NEWTON_PPA` $new/repos/cobbler/ubuntu/ppa/ -rf
+ fi
+
if [[ $CENTOS_ISO ]]; then
cp $CACHE_DIR/`basename $CENTOS_ISO` $new/repos/cobbler/centos/iso/ -rf
fi
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) <chigang@huawei.com>
+
+#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 <<EOF > 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