You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by wo...@apache.org on 2017/04/27 06:51:30 UTC
[5/5] couchdb-ci git commit: add debian/ubuntu packaging tooling
add debian/ubuntu packaging tooling
Project: http://git-wip-us.apache.org/repos/asf/couchdb-ci/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-ci/commit/67d84506
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-ci/tree/67d84506
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-ci/diff/67d84506
Branch: refs/heads/master
Commit: 67d84506e236b456ac81b1c1bb4e9ec2284bab8c
Parents: ae186b0
Author: Joan Touzet <wo...@apache.org>
Authored: Wed Apr 26 23:51:15 2017 -0700
Committer: Joan Touzet <wo...@apache.org>
Committed: Wed Apr 26 23:51:15 2017 -0700
----------------------------------------------------------------------
ansible/debian-8-base.yml | 1 +
.../roles/dependencies-debian/tasks/main.yml | 38 ++++++++++++++++----
.../roles/erlang-esl-debian-pkgs/vars/main.yml | 3 +-
ansible/roles/lintian-debian/files/main.profile | 3 ++
ansible/roles/lintian-debian/meta/main.yml | 3 ++
ansible/roles/lintian-debian/tasks/main.yml | 28 +++++++++++++++
6 files changed, 68 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/67d84506/ansible/debian-8-base.yml
----------------------------------------------------------------------
diff --git a/ansible/debian-8-base.yml b/ansible/debian-8-base.yml
index 02c624a..d99f45e 100644
--- a/ansible/debian-8-base.yml
+++ b/ansible/debian-8-base.yml
@@ -21,4 +21,5 @@
- debian-8
- { role: nodesource.node, nodejs_version: '6.x' }
- dependencies-debian
+ - lintian-debian
- common
http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/67d84506/ansible/roles/dependencies-debian/tasks/main.yml
----------------------------------------------------------------------
diff --git a/ansible/roles/dependencies-debian/tasks/main.yml b/ansible/roles/dependencies-debian/tasks/main.yml
index ad75ffc..aef6cbd 100644
--- a/ansible/roles/dependencies-debian/tasks/main.yml
+++ b/ansible/roles/dependencies-debian/tasks/main.yml
@@ -39,19 +39,43 @@
- libcurl4-openssl-dev
- libicu-dev
- libmozjs185-dev
-
-# required for make check and make dialyze
-- name: install packages required to build CouchDB
- apt: name={{item}} state=present install_recommends=no
- with_items:
- shunit2
# required for make docs
-- name: install packages required to build CouchDB
+- name: install packages required to build CouchDB docs
apt: name={{item}} state=present install_recommends=no
with_items:
- help2man
+ - python-sphinx
-# also required for make docs
+# Fix broken sphinx on ubuntu 12.04 only
+# Hack, but prevents needing a unique debian/ dir for this dist
- name: install up to date version of sphinx via pip
shell: pip install sphinx==1.5.3
+ when: ansible_distribution == "Ubuntu" and ansible_distribution_version == "12.04"
+
+# dependencies for Debian/Ubuntu package building
+- name: install packages required to build Debian pkgs
+ apt: name={{item}} state=present install_recommends=no
+ with_items:
+ - curl
+ - debhelper
+ - dh-exec
+ - devscripts
+ - dialog
+ - lintian
+ - libwww-perl
+ - devscripts
+ - quilt
+
+# Hooray deMorgan's theorem
+- name: install dh-systemd package, if available
+ apt: name=dh-systemd state=present install_recommends=no
+ when: ansible_distribution != "Ubuntu" or ansible_distribution_version != "12.04"
+
+# convenience packages for interactive work
+- name: install convenience packages
+ apt: name={{item}} state=present install_recommends=no
+ with_items:
+ - vim-tiny
+ - screen
http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/67d84506/ansible/roles/erlang-esl-debian-pkgs/vars/main.yml
----------------------------------------------------------------------
diff --git a/ansible/roles/erlang-esl-debian-pkgs/vars/main.yml b/ansible/roles/erlang-esl-debian-pkgs/vars/main.yml
index 00ec403..c28a09a 100644
--- a/ansible/roles/erlang-esl-debian-pkgs/vars/main.yml
+++ b/ansible/roles/erlang-esl-debian-pkgs/vars/main.yml
@@ -29,4 +29,5 @@ erlang_solutions_pkg_list:
- erlang-xmerl
- erlang-eunit
- erlang-dialyzer
-
+ - erlang-reltool
+ - erlang-wx
http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/67d84506/ansible/roles/lintian-debian/files/main.profile
----------------------------------------------------------------------
diff --git a/ansible/roles/lintian-debian/files/main.profile b/ansible/roles/lintian-debian/files/main.profile
new file mode 100644
index 0000000..e34f4e8
--- /dev/null
+++ b/ansible/roles/lintian-debian/files/main.profile
@@ -0,0 +1,3 @@
+Profile: couchdb/main
+Extends: debian/main
+Disable-Tags: dir-or-file-in-opt, source-is-missing, non-etc-file-marked-as-conffile
http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/67d84506/ansible/roles/lintian-debian/meta/main.yml
----------------------------------------------------------------------
diff --git a/ansible/roles/lintian-debian/meta/main.yml b/ansible/roles/lintian-debian/meta/main.yml
new file mode 100644
index 0000000..6b4fff8
--- /dev/null
+++ b/ansible/roles/lintian-debian/meta/main.yml
@@ -0,0 +1,3 @@
+---
+dependencies:
+ - { role: common }
http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/67d84506/ansible/roles/lintian-debian/tasks/main.yml
----------------------------------------------------------------------
diff --git a/ansible/roles/lintian-debian/tasks/main.yml b/ansible/roles/lintian-debian/tasks/main.yml
new file mode 100644
index 0000000..1686a46
--- /dev/null
+++ b/ansible/roles/lintian-debian/tasks/main.yml
@@ -0,0 +1,28 @@
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+- name: make lintian vendor directory
+ file:
+ path: /home/build/.lintian/profiles/couchdb
+ state: directory
+ owner: build
+ group: build
+ mode: 0755
+ recurse: yes
+
+- name: copy lintian vendor profile
+ copy:
+ src: main.profile
+ dest: /home/build/.lintian/profiles/couchdb/main.profile
+ owner: build
+ group: build
+ mode: 0644