From aca65438e80bca7ab20501d654099873cd424366 Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Thu, 19 Feb 2015 13:50:24 +0100 Subject: [IMP] Packaging: version number in docker image name --- setup/package.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'setup') diff --git a/setup/package.py b/setup/package.py index 71de37bbf99..bdd5470e507 100755 --- a/setup/package.py +++ b/setup/package.py @@ -295,17 +295,17 @@ def _prepare_testing(o): # Use rsync to copy requirements.txt in order to keep original permissions subprocess.call(["rsync", "-a", "requirements.txt", os.path.join(o.build_dir, "docker_debian")], cwd=os.path.join(o.odoo_dir)) - subprocess.call(["docker", "build", "-t", "odoo-debian-nightly-tests", "."], + subprocess.call(["docker", "build", "-t", "odoo-%s-debian-nightly-tests" % version, "."], cwd=os.path.join(o.build_dir, "docker_debian")) if not o.no_rpm: subprocess.call(["mkdir", "docker_centos"], cwd=o.build_dir) subprocess.call(["cp", "package.dfcentos", os.path.join(o.build_dir, "docker_centos", "Dockerfile")], cwd=os.path.join(o.odoo_dir, "setup")) - subprocess.call(["docker", "build", "-t", "odoo-centos-nightly-tests", "."], + subprocess.call(["docker", "build", "-t", "odoo-%s-centos-nightly-tests" % version, "."], cwd=os.path.join(o.build_dir, "docker_centos")) def test_tgz(o): - with docker('odoo-debian-nightly-tests', o.build_dir, o.pub) as wheezy: + with docker('odoo-%s-debian-nightly-tests' % version, o.build_dir, o.pub) as wheezy: wheezy.release = '*.tar.gz' wheezy.system("service postgresql start") wheezy.system('/usr/local/bin/pip install /opt/release/%s' % wheezy.release) @@ -318,7 +318,7 @@ def test_tgz(o): wheezy.system('su odoo -s /bin/bash -c "odoo.py --addons-path=/usr/local/lib/python2.7/dist-packages/openerp/addons -d mycompany &"') def test_deb(o): - with docker('odoo-debian-nightly-tests', o.build_dir, o.pub) as wheezy: + with docker('odoo-%s-debian-nightly-tests' % version, o.build_dir, o.pub) as wheezy: wheezy.release = '*.deb' wheezy.system("service postgresql start") wheezy.system('su postgres -s /bin/bash -c "createdb mycompany"') @@ -328,7 +328,7 @@ def test_deb(o): wheezy.system('su odoo -s /bin/bash -c "odoo.py -c /etc/odoo/openerp-server.conf -d mycompany &"') def test_rpm(o): - with docker('odoo-centos-nightly-tests', o.build_dir, o.pub) as centos7: + with docker('odoo-%s-centos-nightly-tests' % version, o.build_dir, o.pub) as centos7: centos7.release = '*.noarch.rpm' # Start postgresql centos7.system('su postgres -c "/usr/bin/pg_ctl -D /var/lib/postgres/data start"') -- cgit v1.2.3 From 520360d80b0af02f9afc806e3bb5c1400b641cba Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Thu, 19 Feb 2015 18:02:19 +0100 Subject: [ADD] Packaging: nightly tests: src dockerfile Creation of a Dockerfile for the src package for nightly tests. Remove unnecessary libraries installation from the Debian Dockerfile. --- setup/package.dfdebian | 16 +--------------- setup/package.dfsrc | 42 ++++++++++++++++++++++++++++++++++++++++++ setup/package.py | 13 +++++++++++-- 3 files changed, 54 insertions(+), 17 deletions(-) create mode 100644 setup/package.dfsrc (limited to 'setup') diff --git a/setup/package.dfdebian b/setup/package.dfdebian index f59233e4db4..7a96a560792 100644 --- a/setup/package.dfdebian +++ b/setup/package.dfdebian @@ -19,19 +19,9 @@ ENV LC_ALL C.UTF-8 RUN apt-get update -qq && \ apt-get upgrade -qq -y && \ apt-get install \ + adduser \ postgresql \ - postgresql-server-dev-all \ postgresql-client \ - adduser \ - libxml2-dev \ - libxslt1-dev \ - libldap2-dev \ - libsasl2-dev \ - libssl-dev \ - libjpeg-dev \ - python-dev \ - python-pip \ - build-essential \ python \ python-dateutil \ python-decorator \ @@ -65,8 +55,4 @@ RUN apt-get update -qq && \ python-yaml -y && \ rm -rf /var/lib/apt/lists/* -COPY requirements.txt /opt/release/requirements.txt - -RUN pip install -r /opt/release/requirements.txt - RUN echo "PS1=\"[\u@nightly-tests] # \"" > ~/.bashrc diff --git a/setup/package.dfsrc b/setup/package.dfsrc new file mode 100644 index 00000000000..3b1f4cdfd09 --- /dev/null +++ b/setup/package.dfsrc @@ -0,0 +1,42 @@ +# Please note that this Dockerfile is used for testing nightly builds and should +# not be used to deploy Odoo +FROM debian:stable +MAINTAINER Odoo S.A. + +# Change policy-rc.d so that services start automatically once installed +RUN echo "#!/bin/sh\nexit 0" > /usr/sbin/policy-rc.d + +RUN apt-get update && \ + apt-get install -y locales && \ + rm -rf /var/lib/apt/lists/* + +# Reconfigure locales such that postgresql uses UTF-8 encoding +RUN dpkg-reconfigure locales && \ + locale-gen C.UTF-8 && \ + /usr/sbin/update-locale LANG=C.UTF-8 +ENV LC_ALL C.UTF-8 + +RUN apt-get update -qq && \ + apt-get upgrade -qq -y && \ + apt-get install \ + postgresql \ + postgresql-server-dev-all \ + postgresql-client \ + adduser \ + libxml2-dev \ + libxslt1-dev \ + libldap2-dev \ + libsasl2-dev \ + libssl-dev \ + libjpeg-dev \ + python-dev \ + python-pip \ + build-essential \ + python -y && \ + rm -rf /var/lib/apt/lists/* + +COPY requirements.txt /opt/release/requirements.txt + +RUN pip install -r /opt/release/requirements.txt + +RUN echo "PS1=\"[\u@nightly-tests] # \"" > ~/.bashrc diff --git a/setup/package.py b/setup/package.py index bdd5470e507..24f7afa1e65 100755 --- a/setup/package.py +++ b/setup/package.py @@ -288,7 +288,16 @@ def build_exe(o): # Stage: testing #---------------------------------------------------------- def _prepare_testing(o): - if not o.no_tarball or not o.no_debian: + if not o.no_tarball: + subprocess.call(["mkdir", "docker_src"], cwd=o.build_dir) + subprocess.call(["cp", "package.dfsrc", os.path.join(o.build_dir, "docker_src", "Dockerfile")], + cwd=os.path.join(o.odoo_dir, "setup")) + # Use rsync to copy requirements.txt in order to keep original permissions + subprocess.call(["rsync", "-a", "requirements.txt", os.path.join(o.build_dir, "docker_src")], + cwd=os.path.join(o.odoo_dir)) + subprocess.call(["docker", "build", "-t", "odoo-%s-src-nightly-tests" % version, "."], + cwd=os.path.join(o.build_dir, "docker_src")) + if not o.no_debian: subprocess.call(["mkdir", "docker_debian"], cwd=o.build_dir) subprocess.call(["cp", "package.dfdebian", os.path.join(o.build_dir, "docker_debian", "Dockerfile")], cwd=os.path.join(o.odoo_dir, "setup")) @@ -305,7 +314,7 @@ def _prepare_testing(o): cwd=os.path.join(o.build_dir, "docker_centos")) def test_tgz(o): - with docker('odoo-%s-debian-nightly-tests' % version, o.build_dir, o.pub) as wheezy: + with docker('odoo-%s-src-nightly-tests' % version, o.build_dir, o.pub) as wheezy: wheezy.release = '*.tar.gz' wheezy.system("service postgresql start") wheezy.system('/usr/local/bin/pip install /opt/release/%s' % wheezy.release) -- cgit v1.2.3 From d5c4a1c3e13ba90d0ef51e3d7e93094e573c32f2 Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Fri, 20 Feb 2015 12:53:33 +0100 Subject: [FIX] Packaging: possibility to have a PGP key without passphrase --- setup/package.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'setup') diff --git a/setup/package.py b/setup/package.py index 24f7afa1e65..17668545847 100755 --- a/setup/package.py +++ b/setup/package.py @@ -266,11 +266,12 @@ def build_deb(o): subprocess.call(cmd, cwd=o.build_dir) deb = pexpect.spawn('dpkg-buildpackage -rfakeroot -k%s' % GPGID, cwd=o.build_dir) deb.logfile = stdout - deb.expect_exact('Enter passphrase: ', timeout=1200) - deb.send(GPGPASSPHRASE + '\r\n') - deb.expect_exact('Enter passphrase: ') - deb.send(GPGPASSPHRASE + '\r\n') - deb.expect(pexpect.EOF) + if GPGPASSPHRASE: + deb.expect_exact('Enter passphrase: ', timeout=1200) + deb.send(GPGPASSPHRASE + '\r\n') + deb.expect_exact('Enter passphrase: ') + deb.send(GPGPASSPHRASE + '\r\n') + deb.expect(pexpect.EOF, timeout=1200) system(['mv', glob('%s/../odoo_*.deb' % o.build_dir)[0], '%s' % o.build_dir]) system(['mv', glob('%s/../odoo_*.dsc' % o.build_dir)[0], '%s' % o.build_dir]) system(['mv', glob('%s/../odoo_*_amd64.changes' % o.build_dir)[0], '%s' % o.build_dir]) -- cgit v1.2.3