[bisq-network/bisq] [WIP] Create API cli and daemon releases as zip archives (PR #6122)

Stan notifications at github.com
Mon Mar 28 17:03:17 CEST 2022


The Bisq gradle build already creates distribution .tar files within the cli and daemon subprojects' `build/distributions` directories.  Instead of using additional gradle tasks to create runnable `cli.jar` and `daemon.jar` files, simple bash scripts arrange the .tar contents into .zip files containing runnable jars at the root level, and dependent jars in their `lib` directories.

The cli release zip file structure looks like this:
<pre>
$ tree .
.
├── [me        165543]  cli.jar
└── [me          4096]  lib
    ├── [me          3120]  annotations-4.1.1.4.jar
    ├── [me        230905]  checker-qual-3.8.0.jar
    ├── [me         15994]  error_prone_annotations-2.9.0.jar
    ├── [me          4617]  failureaccess-1.0.1.jar
    ├── [me        254575]  grpc-api-1.42.1.jar
    ├── [me         30595]  grpc-context-1.42.1.jar
    ├── [me        686612]  grpc-core-1.42.1.jar
    ├── [me       8185495]  grpc-netty-shaded-1.42.1.jar
    ├── [me          5118]  grpc-protobuf-1.42.1.jar
    ├── [me          7570]  grpc-protobuf-lite-1.42.1.jar
    ├── [me         50385]  grpc-stub-1.42.1.jar
    ├── [me        240255]  gson-2.8.6.jar
    ├── [me       2874025]  guava-30.1.1-jre.jar
    ├── [me          8781]  j2objc-annotations-1.3.jar
    ├── [me         78146]  jopt-simple-5.0.4.jar
    ├── [me         19936]  jsr305-3.0.2.jar
    ├── [me          2199]  listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar
    ├── [me        309130]  logback-classic-1.1.11.jar
    ├── [me        475477]  logback-core-1.1.11.jar
    ├── [me          6385]  perfmark-api-0.23.0.jar
    ├── [me       1681558]  protobuf-java-3.19.1.jar
    ├── [me       1557780]  proto-google-common-protos-2.0.1.jar
    ├── [me       4715421]  proto.jar
    └── [me         41472]  slf4j-api-1.7.30.jar
</pre>    
To call getversion from cli.jar:
`$ java -jar cli.jar --password=becareful getversion`

The daemon release tree structure would look the same (but more jars in the lib dir).

To run daemon.jar:
`$ java -jar daemon.jar --apiPassword=becareful`

TODO Sign release .zip files, add checksums, etc...

Based on `master`.

You can view, comment on, or merge this pull request online at:

  https://github.com/bisq-network/bisq/pull/6122

-- Commit Summary --

  * Create API daemon & cli releases as zip files
  * Set execution bit on bash scripts
  * Comment the daemon & cli zipfile creation scripts
  * Accept a VERSION parameter, default to SNAPSHOT
  * Build cli and daemon release zip files before desktop release

-- File Changes --

    A cli/package/create-cli-dist.sh (71)
    A daemon/package/create-daemon-dist.sh (71)
    M desktop/package/macosx/finalize.sh (19)

-- Patch Links --

https://github.com/bisq-network/bisq/pull/6122.patch
https://github.com/bisq-network/bisq/pull/6122.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/bisq-network/bisq/pull/6122
You are receiving this because you are subscribed to this thread.

Message ID: <bisq-network/bisq/pull/6122 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20220328/9c69a218/attachment.htm>


More information about the bisq-github mailing list