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/03/23 16:59:20 UTC

[2/5] couchdb-ci git commit: Add support for Ubuntu 16.04

Add support for Ubuntu 16.04


Project: http://git-wip-us.apache.org/repos/asf/couchdb-ci/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-ci/commit/3ee46555
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-ci/tree/3ee46555
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-ci/diff/3ee46555

Branch: refs/heads/master
Commit: 3ee465558641afb22da097d4e1d1332c82285a9e
Parents: 919caf0
Author: Joan Touzet <wo...@apache.org>
Authored: Wed Mar 22 15:57:05 2017 -0700
Committer: Joan Touzet <wo...@apache.org>
Committed: Wed Mar 22 16:03:26 2017 -0700

----------------------------------------------------------------------
 ansible/roles/ubuntu-1604/vars/main.yml         |  2 ++
 ansible/ubuntu-16.04-base.yml                   | 24 ++++++++++++++
 ansible/ubuntu-16.04-erlang-18.2.yml            | 22 +++++++++++++
 ansible/ubuntu-16.04-erlang-default.yml         | 22 +++++++++++++
 bin/publish-all.sh                              | 24 ++++++++++++++
 bin/rebuild-all.sh                              | 24 ++++++++++++++
 bin/ubuntu-16.04-base/create-container.sh       | 28 ++++++++++++++++
 bin/ubuntu-16.04-base/enter-container.sh        | 20 ++++++++++++
 bin/ubuntu-16.04-base/publish-container.sh      | 20 ++++++++++++
 .../create-container.sh                         | 28 ++++++++++++++++
 bin/ubuntu-16.04-erlang-18.2/enter-container.sh | 20 ++++++++++++
 .../publish-container.sh                        | 20 ++++++++++++
 .../run-build-in-container.sh                   | 24 ++++++++++++++
 .../create-container.sh                         | 28 ++++++++++++++++
 .../enter-container.sh                          | 20 ++++++++++++
 .../publish-container.sh                        | 20 ++++++++++++
 .../run-build-in-container.sh                   | 24 ++++++++++++++
 dockerfiles/ubuntu-16.04-base                   | 33 +++++++++++++++++++
 dockerfiles/ubuntu-16.04-erlang-18.2            | 34 ++++++++++++++++++++
 dockerfiles/ubuntu-16.04-erlang-default         | 34 ++++++++++++++++++++
 readme.markdown                                 |  4 +--
 21 files changed, 473 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/ansible/roles/ubuntu-1604/vars/main.yml
----------------------------------------------------------------------
diff --git a/ansible/roles/ubuntu-1604/vars/main.yml b/ansible/roles/ubuntu-1604/vars/main.yml
new file mode 100644
index 0000000..268c9d0
--- /dev/null
+++ b/ansible/roles/ubuntu-1604/vars/main.yml
@@ -0,0 +1,2 @@
+erlang_solutions_key_url: http://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc
+erlang_solutions_apt_repo_url: deb http://packages.erlang-solutions.com/ubuntu precise contrib

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/ansible/ubuntu-16.04-base.yml
----------------------------------------------------------------------
diff --git a/ansible/ubuntu-16.04-base.yml b/ansible/ubuntu-16.04-base.yml
new file mode 100644
index 0000000..27f9fdb
--- /dev/null
+++ b/ansible/ubuntu-16.04-base.yml
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+- hosts: couchdb-ci-worker
+  remote_user: root
+  roles:
+  - ubuntu-1604
+  - { role: nodesource.node, nodejs_version: '6.x' }
+  - dependencies-debian
+  - common

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/ansible/ubuntu-16.04-erlang-18.2.yml
----------------------------------------------------------------------
diff --git a/ansible/ubuntu-16.04-erlang-18.2.yml b/ansible/ubuntu-16.04-erlang-18.2.yml
new file mode 100644
index 0000000..afa62cf
--- /dev/null
+++ b/ansible/ubuntu-16.04-erlang-18.2.yml
@@ -0,0 +1,22 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+- hosts: couchdb-ci-worker
+  remote_user: root
+  roles:
+  - ubuntu-1604
+  - erlang-18.2-debian

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/ansible/ubuntu-16.04-erlang-default.yml
----------------------------------------------------------------------
diff --git a/ansible/ubuntu-16.04-erlang-default.yml b/ansible/ubuntu-16.04-erlang-default.yml
new file mode 100644
index 0000000..092c5a8
--- /dev/null
+++ b/ansible/ubuntu-16.04-erlang-default.yml
@@ -0,0 +1,22 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+- hosts: couchdb-ci-worker
+  remote_user: root
+  roles:
+  - ubuntu-1604
+  - erlang-default-debian

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/publish-all.sh
----------------------------------------------------------------------
diff --git a/bin/publish-all.sh b/bin/publish-all.sh
new file mode 100755
index 0000000..da768fa
--- /dev/null
+++ b/bin/publish-all.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+SCRIPT=$(readlink -f "$0")
+SCRIPTPATH=$(dirname "$SCRIPT")
+
+find $SCRIPTPATH/*-base -type d -exec {}/publish-container.sh \;
+find $SCRIPTPATH/*erlang* -type d -exec {}/publish-container.sh \;

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/rebuild-all.sh
----------------------------------------------------------------------
diff --git a/bin/rebuild-all.sh b/bin/rebuild-all.sh
new file mode 100755
index 0000000..78433b7
--- /dev/null
+++ b/bin/rebuild-all.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+SCRIPT=$(readlink -f "$0")
+SCRIPTPATH=$(dirname "$SCRIPT")
+
+find $SCRIPTPATH/*-base -type d -exec {}/create-container.sh \;
+find $SCRIPTPATH/*erlang* -type d -exec {}/create-container.sh \;

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-base/create-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-base/create-container.sh b/bin/ubuntu-16.04-base/create-container.sh
new file mode 100755
index 0000000..d9ad5cc
--- /dev/null
+++ b/bin/ubuntu-16.04-base/create-container.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+set -e
+
+# The Docker containers need the root directory of this repository as their
+# build context (because they need the Ansible files).
+pushd `dirname $0`/../.. > /dev/null
+
+docker build -f dockerfiles/ubuntu-16.04-base -t couchdbdev/ubuntu-16.04-base .
+
+popd > /dev/null

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-base/enter-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-base/enter-container.sh b/bin/ubuntu-16.04-base/enter-container.sh
new file mode 100755
index 0000000..368982d
--- /dev/null
+++ b/bin/ubuntu-16.04-base/enter-container.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+docker run -it couchdbdev/ubuntu-16.04-base bash

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-base/publish-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-base/publish-container.sh b/bin/ubuntu-16.04-base/publish-container.sh
new file mode 100755
index 0000000..e0c3be5
--- /dev/null
+++ b/bin/ubuntu-16.04-base/publish-container.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+docker push couchdbdev/ubuntu-16.04-base

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-18.2/create-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-18.2/create-container.sh b/bin/ubuntu-16.04-erlang-18.2/create-container.sh
new file mode 100755
index 0000000..d241493
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-18.2/create-container.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+set -e
+
+# The Docker containers need the root directory of this repository as their
+# build context (because they need the Ansible files).
+pushd `dirname $0`/../.. > /dev/null
+
+docker build -f dockerfiles/ubuntu-16.04-erlang-18.2 -t couchdbdev/ubuntu-16.04-erlang-18.2 .
+
+popd > /dev/null

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-18.2/enter-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-18.2/enter-container.sh b/bin/ubuntu-16.04-erlang-18.2/enter-container.sh
new file mode 100755
index 0000000..de2d2a7
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-18.2/enter-container.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+docker run -it couchdbdev/ubuntu-16.04-erlang-18.2 bash

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-18.2/publish-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-18.2/publish-container.sh b/bin/ubuntu-16.04-erlang-18.2/publish-container.sh
new file mode 100755
index 0000000..72a36d3
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-18.2/publish-container.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+docker push couchdbdev/ubuntu-16.04-erlang-18.2

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-18.2/run-build-in-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-18.2/run-build-in-container.sh b/bin/ubuntu-16.04-erlang-18.2/run-build-in-container.sh
new file mode 100755
index 0000000..c6875cc
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-18.2/run-build-in-container.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+set -e
+pushd $( dirname "$0" )/../..
+pwd
+OS=ubuntu-16.04 ERLANG=18.2 jenkins/build.sh
+popd

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-default/create-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-default/create-container.sh b/bin/ubuntu-16.04-erlang-default/create-container.sh
new file mode 100755
index 0000000..5c59864
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-default/create-container.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+set -e
+
+# The Docker containers need the root directory of this repository as their
+# build context (because they need the Ansible files).
+pushd `dirname $0`/../.. > /dev/null
+
+docker build -f dockerfiles/ubuntu-16.04-erlang-default -t couchdbdev/ubuntu-16.04-erlang-default .
+
+popd > /dev/null

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-default/enter-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-default/enter-container.sh b/bin/ubuntu-16.04-erlang-default/enter-container.sh
new file mode 100755
index 0000000..e1fac08
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-default/enter-container.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+docker run -it couchdbdev/ubuntu-16.04-erlang-default bash

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-default/publish-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-default/publish-container.sh b/bin/ubuntu-16.04-erlang-default/publish-container.sh
new file mode 100755
index 0000000..af36843
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-default/publish-container.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+docker push couchdbdev/ubuntu-16.04-erlang-default

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/bin/ubuntu-16.04-erlang-default/run-build-in-container.sh
----------------------------------------------------------------------
diff --git a/bin/ubuntu-16.04-erlang-default/run-build-in-container.sh b/bin/ubuntu-16.04-erlang-default/run-build-in-container.sh
new file mode 100755
index 0000000..15089c6
--- /dev/null
+++ b/bin/ubuntu-16.04-erlang-default/run-build-in-container.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+set -e
+pushd $( dirname "$0" )/../..
+pwd
+OS=ubuntu-16.04 ERLANG=default jenkins/build.sh
+popd

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/dockerfiles/ubuntu-16.04-base
----------------------------------------------------------------------
diff --git a/dockerfiles/ubuntu-16.04-base b/dockerfiles/ubuntu-16.04-base
new file mode 100644
index 0000000..1313bc4
--- /dev/null
+++ b/dockerfiles/ubuntu-16.04-base
@@ -0,0 +1,33 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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
+
+# NOTE: All docker files need to be run from ../../, that is
+# docker build -f /docker/<container>/Dockerfile
+
+# Base Image: Plain Vanilla Ubuntu 14.04 with Ansible installed
+FROM williamyeh/ansible:ubuntu16.04-onbuild
+
+# Add ansible directory and cd to it
+ADD ./ansible /ansible
+WORKDIR /ansible
+
+# Install Ansible roles
+RUN ansible-galaxy install nodesource.node
+
+# Run Ansible to provision Ubuntu base container
+RUN ansible-playbook ubuntu-16.04-base.yml \
+  --connection=local \
+  --inventory-file=./inventory/couchdb-ci-worker

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/dockerfiles/ubuntu-16.04-erlang-18.2
----------------------------------------------------------------------
diff --git a/dockerfiles/ubuntu-16.04-erlang-18.2 b/dockerfiles/ubuntu-16.04-erlang-18.2
new file mode 100644
index 0000000..b13a373
--- /dev/null
+++ b/dockerfiles/ubuntu-16.04-erlang-18.2
@@ -0,0 +1,34 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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
+
+# NOTE: All docker files need to be run from ../../, that is
+# docker build -f /docker/<container>/Dockerfile
+
+FROM couchdbdev/ubuntu-16.04-base:latest
+
+# Re-add ansible directory to pick up latest changes
+# This avoids having to cascade rebuild all images when changing
+# a role that only affects a child container
+ADD ./ansible /ansible
+
+# Run Ansible to provision container with Erlang 18.2
+RUN ansible-playbook ubuntu-16.04-erlang-18.2.yml \
+  --connection=local \
+  --inventory-file=./inventory/couchdb-ci-worker
+
+USER couchdb
+
+CMD ["/home/couchdb/build-ci.sh"]

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/dockerfiles/ubuntu-16.04-erlang-default
----------------------------------------------------------------------
diff --git a/dockerfiles/ubuntu-16.04-erlang-default b/dockerfiles/ubuntu-16.04-erlang-default
new file mode 100644
index 0000000..ad846c3
--- /dev/null
+++ b/dockerfiles/ubuntu-16.04-erlang-default
@@ -0,0 +1,34 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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
+
+# NOTE: All docker files need to be run from ../../, that is
+# docker build -f /docker/<container>/Dockerfile
+
+FROM couchdbdev/ubuntu-16.04-base:latest
+
+# Re-add ansible directory to pick up latest changes
+# This avoids having to cascade rebuild all images when changing
+# a role that only affects a child container
+ADD ./ansible /ansible
+
+# Run Ansible to provision container with Ubuntu's default Erlang
+RUN ansible-playbook ubuntu-16.04-erlang-default.yml \
+  --connection=local \
+  --inventory-file=./inventory/couchdb-ci-worker
+
+USER couchdb
+
+CMD ["/home/couchdb/build-ci.sh"]

http://git-wip-us.apache.org/repos/asf/couchdb-ci/blob/3ee46555/readme.markdown
----------------------------------------------------------------------
diff --git a/readme.markdown b/readme.markdown
index 63ace23..61b7e92 100644
--- a/readme.markdown
+++ b/readme.markdown
@@ -11,12 +11,12 @@ See:
 * this [ASF Infra ticket](https://issues.apache.org/jira/browse/INFRA-10126).
 for the origins of this work.
 
-## Supported Configurations (updated 2017-03-19)
+## Supported Configurations (updated 2017-03-22)
 
 **OS/Erlang**       | **default ** | **18.2**
 --------------------|--------------|----------
 **Ubuntu 14.04**    | \u2714 (16B03-1)  | \u2714
-**Ubuntu 16.04**    | -            | -
+**Ubuntu 16.04**    | \u2714 (18.3)     | \u2714
 **Debian 7**        | -            | -
 **Debian 8**        | \u2714 (17.3)     | \u2714
 **Debian 9**        | -            | -