[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-27 Thread mhall119
Github user mhall119 closed the pull request at:

https://github.com/apache/couchdb/pull/442


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-24 Thread mhall119
Github user mhall119 commented on a diff in the pull request:

https://github.com/apache/couchdb/pull/442#discussion_r84786620
  
--- Diff: configure ---
@@ -184,6 +192,85 @@ EOF
 cat > $rootdir/config.erl << EOF
 {with_curl, $WITH_CURL}.
 EOF
+ 
+if [ "${WITH_SNAP}" -eq "1" ]; then
+echo "==> configuring snapcraft config"
+cat > rel/snapcraft.yaml << EOF
+name: couchdb
+version: 2.0
--- End diff --

$(COUCHDB_VERSION) was only in Makefile, it wasn't available in 
./configure, so I've had to make ./configure load version.mk into envvars


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-24 Thread mhall119
Github user mhall119 commented on a diff in the pull request:

https://github.com/apache/couchdb/pull/442#discussion_r84740327
  
--- Diff: configure ---
@@ -184,6 +192,85 @@ EOF
 cat > $rootdir/config.erl << EOF
 {with_curl, $WITH_CURL}.
 EOF
+ 
+if [ "${WITH_SNAP}" -eq "1" ]; then
+echo "==> configuring snapcraft config"
+cat > rel/snapcraft.yaml << EOF
+name: couchdb
+version: 2.0
+summary: Document based database
+description: CouchDB is a database that completely embraces the web. Store 
your data with JSON documents. Access your documents and query your indexes 
with your web browser, via HTTP. Index, combine, and transform your documents 
with JavaScript. 
+confinement: strict
+grade: stable
+
+apps:
+couchdb:
+daemon: simple
+command: snap_run
+plugs: [network-bind]
+run:
+command: snap_run
+plugs: [network-bind]
+parts:
+couchdb: 
+plugin: dump
+source: .
+organize:
+snap.ini: couchdb/etc/snap.ini
+snap_run: bin/snap_run
+stage:
+- couchdb
+- bin
+snap:
+- couchdb
+- bin
+erlang:
+plugin: nil
+stage-packages:
+- erlang-base-hipe
+- erlang-crypto
+- erlang-eunit
+- erlang-inets
+- erlang-os-mon
+- erlang-public-key
+- erlang-ssl
+- erlang-syntax-tools
+- erlang-tools
+- erlang-xmerl
+- libc6
+- libcurl3
+- libgcc1
+- libicu55
--- End diff --

They are pulled from Ubuntu's archives at build-time, and included in the 
.snap file, so they will always work. Snaps bundle dependencies like this, and 
run everything on a "core" image that is compatible with them, so that the snap 
will always "just work" no matter where it's run


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-24 Thread mhall119
Github user mhall119 commented on a diff in the pull request:

https://github.com/apache/couchdb/pull/442#discussion_r84739220
  
--- Diff: configure ---
@@ -184,6 +192,85 @@ EOF
 cat > $rootdir/config.erl << EOF
 {with_curl, $WITH_CURL}.
 EOF
+ 
+if [ "${WITH_SNAP}" -eq "1" ]; then
+echo "==> configuring snapcraft config"
+cat > rel/snapcraft.yaml << EOF
+name: couchdb
+version: 2.0
--- End diff --

I didn't see any existing variable available to configure that has this 
info. What would be the best source for it?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-17 Thread rnewson
Github user rnewson commented on a diff in the pull request:

https://github.com/apache/couchdb/pull/442#discussion_r83626753
  
--- Diff: configure ---
@@ -184,6 +192,85 @@ EOF
 cat > $rootdir/config.erl << EOF
 {with_curl, $WITH_CURL}.
 EOF
+ 
+if [ "${WITH_SNAP}" -eq "1" ]; then
+echo "==> configuring snapcraft config"
+cat > rel/snapcraft.yaml << EOF
+name: couchdb
+version: 2.0
--- End diff --

this needs to come from a variable.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-17 Thread rnewson
Github user rnewson commented on a diff in the pull request:

https://github.com/apache/couchdb/pull/442#discussion_r83626974
  
--- Diff: configure ---
@@ -184,6 +192,85 @@ EOF
 cat > $rootdir/config.erl << EOF
 {with_curl, $WITH_CURL}.
 EOF
+ 
+if [ "${WITH_SNAP}" -eq "1" ]; then
+echo "==> configuring snapcraft config"
+cat > rel/snapcraft.yaml << EOF
+name: couchdb
+version: 2.0
+summary: Document based database
+description: CouchDB is a database that completely embraces the web. Store 
your data with JSON documents. Access your documents and query your indexes 
with your web browser, via HTTP. Index, combine, and transform your documents 
with JavaScript. 
+confinement: strict
+grade: stable
+
+apps:
+couchdb:
+daemon: simple
+command: snap_run
+plugs: [network-bind]
+run:
+command: snap_run
+plugs: [network-bind]
+parts:
+couchdb: 
+plugin: dump
+source: .
+organize:
+snap.ini: couchdb/etc/snap.ini
+snap_run: bin/snap_run
+stage:
+- couchdb
+- bin
+snap:
+- couchdb
+- bin
+erlang:
+plugin: nil
+stage-packages:
+- erlang-base-hipe
+- erlang-crypto
+- erlang-eunit
+- erlang-inets
+- erlang-os-mon
+- erlang-public-key
+- erlang-ssl
+- erlang-syntax-tools
+- erlang-tools
+- erlang-xmerl
+- libc6
+- libcurl3
+- libgcc1
+- libicu55
--- End diff --

I'm not familiar enough with snap but are these package name assumptions 
safe?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-17 Thread rnewson
Github user rnewson commented on a diff in the pull request:

https://github.com/apache/couchdb/pull/442#discussion_r83626861
  
--- Diff: configure ---
@@ -184,6 +192,85 @@ EOF
 cat > $rootdir/config.erl << EOF
 {with_curl, $WITH_CURL}.
 EOF
+ 
+if [ "${WITH_SNAP}" -eq "1" ]; then
+echo "==> configuring snapcraft config"
+cat > rel/snapcraft.yaml << EOF
+name: couchdb
+version: 2.0
+summary: Document based database
+description: CouchDB is a database that completely embraces the web. Store 
your data with JSON documents. Access your documents and query your indexes 
with your web browser, via HTTP. Index, combine, and transform your documents 
with JavaScript. 
--- End diff --

Does this copy come from our website or docs? I like it but we should try 
to be consistent (that "combine" statement isn't true afaik so I think this is 
new copy).


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] couchdb pull request #442: Adds a Snap package build option with: ./configur...

2016-10-07 Thread mhall119
GitHub user mhall119 opened a pull request:

https://github.com/apache/couchdb/pull/442

Adds a Snap package build option with:  ./configure && make snap

Adds a new make target for building a snap package, reuses "make release" 
so no re-compiling is necessary. Snapcraft files are produced by ./configure 
and can be disabled with --disable-snap

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/mhall119/couchdb snap-packaging

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/couchdb/pull/442.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #442


commit 77257d9362ca8a9958121ccb1051df767a1118fd
Author: Michael Hall 
Date:   2016-10-07T20:52:25Z

Adds a Snap package build option with:  ./configure && make snap




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---