Skip to content
Permalink
Browse files
[snap] bump to 3.1.1 (#74)
  • Loading branch information
wohali committed Nov 25, 2020
1 parent 383f554 commit fd64a6205b513b1cb5cce6e0dc7159008a78ebcc
Showing 3 changed files with 25 additions and 42 deletions.
@@ -1,3 +1,4 @@
archive/
debian/control
debian/*.log
debian/*.debhelper
@@ -253,19 +253,18 @@ you are using the default.
```
# Building this snap <a name="building"></a>

This build requires Ubuntu 18.04, the `core18` core, and the `snapcraft` tool. The
CouchDB team builds this using the
[`yakshaveinc/snapcraft`](https://hub.docker.com/r/yakshaveinc/snapcraft) image, which is
the [official `snapcore/snapcraft` Docker
image](https://snapcraft.io/docs/build-on-docker) patched for Ubuntu 18.04. (When the
upstream image is fully patched for `core18`, we'll move to it instead.)
This build requires `core20`. On Ubuntu 18.04, you will need to do the following:

From an Ubuntu 18.04 machine with Docker installed:
```
sudo apt remove snapcraft
sudo snap remove snapcraft
sudo snap install snapcraft --classic
```

Then building is easy:

```bash
$ git clone https://github.com/couchdb/couchdb-pkg && cd couchdb-pkg
$ docker pull yakshaveinc/snapcraft:core18
$ docker run -it -v "$PWD":/build:Z -w /build yakshaveinc/snapcraft:core18 snapcraft
$ snapcraft
```

The self-built snap will need to be installed using `--dangerous`:
@@ -277,5 +276,5 @@ sudo snap install ./couchdb_3.0.0_amd64.snap --dangerous
Clean up with:

```bash
$docker run -it -v "$PWD":/build:Z -w /build yakshaveinc/snapcraft:core18-edge snapcraft clean
$ sudo snapcraft clean # sudo may not be required but is safe
```
@@ -1,5 +1,5 @@
name: couchdb
version: 3.0.0
version: 3.1.1
summary: Official Apache CouchDB snap - a clustering document oriented database
description: |
CouchDB is a database that completely embraces the web. Store your data with
@@ -11,7 +11,7 @@ architectures:
- build-on: amd64
run-on: amd64
assumes: [command-chain, common-data-dir]
base: core18
base: core20
grade: stable
confinement: strict

@@ -23,55 +23,32 @@ parts:
apt-get upgrade -yy
apt-get install -y --no-install-recommends apt-transport-https \
gnupg ca-certificates
echo "deb https://apache.bintray.com/couchdb-deb bionic main" | \
echo "deb https://apache.bintray.com/couchdb-deb focal main" | \
tee /etc/apt/sources.list.d/custom.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys \
8756C4F765C9AC3CB6B85D62379CE192D401AB61
apt-get update
couchdb:
after: [add-repo]
plugin: dump
source: https://apache.bintray.com/couchdb-deb/pool/C/CouchDB/couchdb_3.0.0~bionic_amd64.deb
source: https://apache.bintray.com/couchdb-deb/pool/C/CouchDB/couchdb_3.1.1~focal_amd64.deb
source-type: deb
# because this doesn't use apt, we have to manually list all of our
# dependencies :(
# the following are all in core18, and warning output can safely be ignored:
# lib/x86_64-linux-gnu/libbz2.so.1.0
# lib/x86_64-linux-gnu/libc.so.6
# lib/x86_64-linux-gnu/libcrypt.so.1
# lib/x86_64-linux-gnu/libdl.so.2
# lib/x86_64-linux-gnu/libgcrypt.so.20
# lib/x86_64-linux-gnu/libgpg-error.so.0
# lib/x86_64-linux-gnu/liblzma.so.5
# lib/x86_64-linux-gnu/libm.so.6
# lib/x86_64-linux-gnu/libncurses.so.5
# lib/x86_64-linux-gnu/libncursesw.so.5
# lib/x86_64-linux-gnu/libnsl.so.1
# lib/x86_64-linux-gnu/libpthread.so.0
# lib/x86_64-linux-gnu/libresolv.so.2
# lib/x86_64-linux-gnu/librt.so.1
# lib/x86_64-linux-gnu/libsystemd.so.0
# lib/x86_64-linux-gnu/libutil.so.1
# lib/x86_64-linux-gnu/libz.so.1
# usr/lib/x86_64-linux-gnu/libdb-5.3.so
# usr/lib/x86_64-linux-gnu/liblz4.so.1
# usr/lib/x86_64-linux-gnu/libpanelw.so.5
# usr/lib/x86_64-linux-gnu/libstdc++.so.6
build-packages:
- adduser
- debconf
- ca-certificates
- init-system-helpers
- lsb-base
- curl
- libgcc1
stage-packages:
- couch-libmozjs185-1.0
- libmozjs-68-0
- procps
- libcurl4
- libicu60
- libssl1.0.0
- libtinfo5
- libicu66
- libssl1.1
- libtinfo6
override-pull: |
snapcraftctl pull
rm -f opt/couchdb/data opt/couchdb/var/log opt/couchdb/etc/default.d/*
@@ -81,6 +58,12 @@ parts:
override-build: |
echo "couchdb couchdb/mode select none" | debconf-set-selections
snapcraftctl build
override-stage: |
# focal libmozjs is busted...
ln -s libmozjs-68.so.68.6.0 /root/parts/couchdb/install/usr/lib/x86_64-linux-gnu/libmozjs-68.so.0
snapcraftctl stage
override-prime: |
snapcraftctl prime
layout:
# Database and log files are common across upgrades

0 comments on commit fd64a62

Please sign in to comment.