You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by wo...@apache.org on 2019/08/22 19:01:01 UTC

[couchdb-pkg] 01/01: Add debian buster, drop debian jessie, lintian fixes

This is an automated email from the ASF dual-hosted git repository.

wohali pushed a commit to branch buster
in repository https://gitbox.apache.org/repos/asf/couchdb-pkg.git

commit eb7a7a9bfe9a132c0d617b9cc9987d83ef250ae8
Author: Joan Touzet <wo...@apache.org>
AuthorDate: Thu Aug 22 12:00:36 2019 -0700

    Add debian buster, drop debian jessie, lintian fixes
---
 .travis.yml                             |  4 ++--
 Makefile                                | 10 ++++++++++
 README.md                               | 19 ++++++++++---------
 build.sh                                |  4 ++--
 debian/couchdb.lintian-overrides        |  3 +++
 debian/couchdb.postinst                 | 16 ++++++++++++----
 debian/couchdb.upstart                  | 11 -----------
 lintian-profiles/couchdb-debian.profile |  3 ---
 lintian-profiles/couchdb-ubuntu.profile |  3 ---
 9 files changed, 39 insertions(+), 34 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 578feb3..45c83a0 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -16,12 +16,12 @@ env:
     - TARBALL_URL=https://dist.apache.org/repos/dist/release/couchdb/source/2.3.1/apache-couchdb-2.3.1.tar.gz
     - TARBALL=apache-couchdb-2.3.1.tar.gz
   matrix:
-    - TARGET="js debian-jessie"
-    - TARGET="couch debian-jessie ${TARBALL_URL}"
     - TARGET="js debian-stretch"
     - TARGET="couch debian-stretch ${TARBALL_URL}"
     - ERLANGVERSION=20.3.8.20 TARGET="js aarch64-debian-stretch"
     - ERLANGVERSION=20.3.8.20 TARGET="couch aarch64-debian-stretch ${TARBALL_URL}"
+    - ERLANGVERSION=20.3.8.22-1 TARGET="js debian-buster"
+    - ERLANGVERSION=20.3.8.22-1 TARGET="couch debian-buster ${TARBALL_URL}"
     - TARGET="js ubuntu-xenial"
     - TARGET="couch ubuntu-xenial ${TARBALL_URL}"
     - TARGET="js ubuntu-bionic"
diff --git a/Makefile b/Makefile
index 6e6c53b..b250b92 100644
--- a/Makefile
+++ b/Makefile
@@ -49,6 +49,16 @@ aarch64-debian-stretch: DIST=debian-stretch
 aarch64-debian-stretch: debian-no-lintian
 stretch: debian
 
+# Debian 10
+debian-buster: PLATFORM=buster
+debian-buster: DIST=debian-buster
+debian-buster: buster
+# Lintian doesn't install correctly into a cross-built Docker container ?!
+aarch64-debian-buster: PLATFORM=buster
+aarch64-debian-buster: DIST=debian-buster
+aarch64-debian-buster: debian-no-lintian
+buster: debian
+
 
 # Ubuntu 12.04
 ubuntu-precise: PLATFORM=precise
diff --git a/README.md b/README.md
index 9ec06d3..2a5f36e 100644
--- a/README.md
+++ b/README.md
@@ -43,29 +43,30 @@ make copy-couch $(lsb_release -cs) COUCHTARBALL=path/to/couchdb-#.#.#.tar.gz PLA
 
 ## Building inside the `couchdbdev` docker containers
 
-You must first pull down the image or images you need from Docker Hub, or build the images using the [apache/couchdb-ci](https://github.com/apache/couchdb-ci) repository. Example:
-
-```shell
-docker pull couchdbdev/<osname>-<codename>-erlang-<erlang-version>
-```
-
-A full list of supported environments is at https://hub.docker.com/u/couchdbdev/ .
+You must first pull down the image or images you need from Docker Hub, or build the images
+using the [apache/couchdb-ci](https://github.com/apache/couchdb-ci) repository. A full
+list of supported environments is at https://hub.docker.com/u/couchdbdev/ .
 
 ### SpiderMonkey 1.8.5
 
 ```shell
+docker pull couchdbdev/<os>-<codename>-base
 ./build.sh js <os>-<codename>    # for example, debian-stretch, ubuntu-bionic or centos-7.
 ```
 
 ### CouchDB
 
+From a downloaded CouchDB tarball:
+
 ```shell
-./build.sh couch <os>-<codename> path/to/couchdb-#.#.#.tar.gz
+docker pull couchdbdev/<osname>-<codename>-erlang-<erlang-version>
+ERLANGVERSION=<erlang-version> ./build.sh couch <os>-<codename> path/to/couchdb-#.#.#.tar.gz
 ```
 
-or, if you want to build directly from the Apache distribution repository,
+Directly from the Apache source CDN:
 
 ```shell
+docker pull couchdbdev/<osname>-<codename>-erlang-<erlang-version>
 ./build.sh couch <os>-<codename> https://dist.apache.org/repos/dist/release/couchdb/source/#.#.#/apache-couchdb-#.#.#.tar.gz
 ```
 
diff --git a/build.sh b/build.sh
index a9f5b20..abe27db 100755
--- a/build.sh
+++ b/build.sh
@@ -29,9 +29,9 @@ SCRIPTPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
 
 # TODO derive these by interrogating the Docker repo rather tha
 # hard coding the list
-DEBIANS="debian-jessie debian-stretch aarch64-debian-stretch"
+DEBIANS="debian-stretch aarch64-debian-stretch debian-buster aarch64-debian-buster"
 UBUNTUS="ubuntu-trusty ubuntu-xenial ubuntu-bionic"
-debs="(debian-jessie|debian-stretch|aarch64-debian-stretch|ubuntu-trusty|ubuntu-xenial|ubuntu-bionic)"
+debs="(debian-stretch|aarch64-debian-stretch|debian-buster|aarch64-debian-buster|ubuntu-trusty|ubuntu-xenial|ubuntu-bionic)"
 
 CENTOSES="centos-6 centos-7"
 rpms="(centos-6|centos-7)"
diff --git a/debian/couchdb.lintian-overrides b/debian/couchdb.lintian-overrides
index fd3520c..572bdde 100644
--- a/debian/couchdb.lintian-overrides
+++ b/debian/couchdb.lintian-overrides
@@ -12,3 +12,6 @@ couchdb: script-not-executable opt/couchdb/lib/couch-2.0.0/priv/spawnkillable/co
 # And we want to be extra sure our license is not ignored
 couchdb: extra-license-file opt/couchdb/LICENSE
 
+# and our doc base won't move out of /opt, sorry
+couchdb: doc-base-file-references-wrong-path couchdb:8 /opt/couchdb/share/www/docs/index.html
+couchdb: doc-base-file-references-wrong-path couchdb:9 /opt/couchdb/share/www/docs/*
diff --git a/debian/couchdb.postinst b/debian/couchdb.postinst
index 772f544..d574591 100644
--- a/debian/couchdb.postinst
+++ b/debian/couchdb.postinst
@@ -134,7 +134,8 @@ case $1 in
       # Hack to make the upgrade from the 1.0.1 Ubuntu package more correct:
       chown root:root /etc/couchdb
       chown root:root /etc/couchdb/default.ini
-      chown -R root:root /etc/couchdb/default.d
+      chown root:root /etc/couchdb/default.d
+      chown root:root /etc/couchdb/default.d/*
       chmod 755 /etc/couchdb
       chmod 644 /etc/couchdb/default.ini
       chmod 755 /etc/couchdb/default.d
@@ -186,9 +187,16 @@ case $1 in
     esac
 
     # These should be owned by the couchdb user and group:
-    chown -R couchdb:couchdb /opt/couchdb/etc
-    chown -R couchdb:couchdb /var/lib/couchdb
-    chown -R couchdb:couchdb /var/log/couchdb
+    chown couchdb:couchdb /opt/couchdb/etc
+    chown couchdb:couchdb /opt/couchdb/etc/*
+    chown couchdb:couchdb /var/lib/couchdb
+    chown couchdb:couchdb /var/lib/couchdb/*
+    chown couchdb:couchdb /var/lib/couchdb/shards/*
+    chown couchdb:couchdb /var/lib/couchdb/shards/*/*
+    chown couchdb:couchdb /var/lib/couchdb/.shards/*
+    chown couchdb:couchdb /var/lib/couchdb/.shards/*/*
+    chown couchdb:couchdb /var/log/couchdb
+    chown couchdb:couchdb /var/log/couchdb/*
     # These should also not be world readable or writable:
     find /opt/couchdb/etc -name *.ini -exec chmod 0640 {} \;
     chmod a+x /opt/couchdb/bin/couchup
diff --git a/debian/couchdb.upstart b/debian/couchdb.upstart
deleted file mode 100644
index 3c91f17..0000000
--- a/debian/couchdb.upstart
+++ /dev/null
@@ -1,11 +0,0 @@
-# couchdb - a RESTful document oriented database
-
-description "Start Apache CouchDB"
-author "CouchDB Developers <de...@couchdb.apache.org>"
-
-start on filesystem and static-network-up
-stop on deconfiguring-networking
-respawn
-
-exec su couchdb -c /opt/couchdb/bin/couchdb
-
diff --git a/lintian-profiles/couchdb-debian.profile b/lintian-profiles/couchdb-debian.profile
deleted file mode 100644
index 0c80791..0000000
--- a/lintian-profiles/couchdb-debian.profile
+++ /dev/null
@@ -1,3 +0,0 @@
-Profile: couchdb/main
-Extends: debian/main
-Disable-Tags: dir-or-file-in-opt, source-is-missing, non-etc-file-marked-as-conffile, embedded-javascript-library, embedded-library
\ No newline at end of file
diff --git a/lintian-profiles/couchdb-ubuntu.profile b/lintian-profiles/couchdb-ubuntu.profile
deleted file mode 100644
index efe959a..0000000
--- a/lintian-profiles/couchdb-ubuntu.profile
+++ /dev/null
@@ -1,3 +0,0 @@
-Profile: couchdb/main
-Extends: ubuntu/main
-Disable-Tags: dir-or-file-in-opt, non-etc-file-marked-as-conffile, embedded-javascript-library, embedded-library