commit | 365d07ce43d9d6d9c3377dd08dc8fc5f656a11bf | [log] [tgz] |
---|---|---|
author | Nick Vatamaniuc <vatamane@apache.org> | Thu Jun 13 11:08:31 2024 -0400 |
committer | Nick Vatamaniuc <nickva@users.noreply.github.com> | Thu Jun 13 13:11:41 2024 -0400 |
tree | d2196c79d488e18e419a27dbe30509e5c0226642 | |
parent | ae2042989910554a38277de1e8d8be6d3d57342c [diff] |
Exclude PPC64LE arch for packaging There is an `Unknown privilege violation (03)` error emitted to the log followed by a register dump right before gradle does it's download. Then everything seems to continue as normal, but suddenly the linter fails. This happens on PPC64LE and it seems to work for other arches. So let's exclude the combination which fail for now. See issue: https://github.com/apache/couchdb-pkg/issues/140
The main purpose of this repository is to provide packaging support files for Apache CouchDB and its SpiderMonkey 1.8.5 dependency, for a number of well-known and used packaging formats, namely:
.deb
files, as used by Debian, Ubuntu, and derivatives.rpm
files, as used by CentOS, RedHat, and derivativessnapcraft
files, as used by the Ubuntu Snappy package managermake couch-js-rpms
make couch-js-debs PLATFORM=$(lsb_release -cs)
master
branch:cd .. && git clone https://github.com/apache/couchdb cd couchdb-pkg && make build-couch $(lsb_release -cs) PLATFORM=$(lsb_release -cs)
make copy-couch $(lsb_release -cs) COUCHTARBALL=path/to/couchdb-#.#.#.tar.gz PLATFORM=$(lsb_release -cs)
couchdbdev
docker containersYou must first pull down the image or images you need from Docker Hub, or build the images using the apache/couchdb-ci repository. A full list of supported environments is at https://hub.docker.com/u/couchdbdev/ .
docker pull couchdbdev/<os>-<codename>-base ./build.sh js <os>-<codename> # for example, debian-stretch, ubuntu-bionic or centos-7.
From a downloaded CouchDB tarball:
docker pull couchdbdev/<osname>-<codename>-erlang-<erlang-version> ERLANGVERSION=<erlang-version> ./build.sh couch <os>-<codename> path/to/couchdb-#.#.#.tar.gz
Directly from the Apache source CDN:
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
docker run
.You can either build packages from a local CouchDB dist tarball (the output of make dist
), or from a URL of a published CouchDB dist tarball (such as the ones on https://couchdb.apache.org/). The package's version number will be derived from the filename of the CouchDB dist tarball.
Run:
$ ./build.sh couch-all path/to/apache-couchdb-VERSION.tar.gz
or
$ ./build.sh couch-all http://url/to/apache-couchdb-VERSION.tar.gz
Packages will be placed in the pkgs/couch
subdirectory.
A similar js-all
target exists, should the SpiderMonkey packages need to be regenerated.
If you have Apache credentials (set your BINARY_CREDS
environment variable appropriately), after building all CouchDB packages above, and signing the rpms with the appropriate GPG key using the rpmsign --addsign <file.rpm>
command, simply run:
./build.sh couch-upload-all
Or, for the SpiderMonkey packages:
./build.sh js-upload-all
See README-SNAP.md.
General feedback is welcome at our user or developer mailing lists.
Apache CouchDB has a CONTRIBUTING file with details on how to get started with issue reporting or contributing to the upkeep of this project.