Introducing WarpFleet

Discover the Warp 10™ artifacts repository. Share your plugins, extensions and macros. Level up your Warp 10™ instance with new capabilities.

WarpFleet

WarpFleet aims to facilitate Warp 10 add-ons sharing. You can now share extensions, plugins and macros packages easily and import them into a Warp 10 instance.

https://warpfleet.senx.io/

Browse existing artifacts

Feel free to explore existing artifacts on https://warpfleet.senx.io/browse.

WarpFleet CLI

Interaction with the WarpFleet site is performed through the use of a command line interface (CLI) written in NodeJS. Firstly be sure to have NodeJS v10+ installed.

$ [sudo] npm install -g @senx/warpfleet
$ wf

Retrieve an artifact

You have to precise where your Warp 10 configuration file is located. WarpFleet CLI can now automatically fetch, install and manage dependencies of the chosen artifact. It will also give you the configuration keys you will have to add to the Warp 10 configuration file.

$ wf g io.warp10 --conf=/path/to/warp10/etc/conf-standalone.conf
       ___       __                     _______________         _____
       __ |     / /_____ __________________  ____/__  /___________  /_
       __ | /| / /_  __ `/_  ___/__  __ \_  /_   __  /_  _ \  _ \  __/
       __ |/ |/ / / /_/ /_  /   __  /_/ /  __/   _  / /  __/  __/ /_
       ____/|__/  \__,_/ /_/    _  .___//_/      /_/  \___/\___/\__/
                                /_/                                        ™
? Which asset do you want to retrieve? (Use arrow keys)
❯ warp10-ext-barcode
  warp10-ext-jdbc
  warp10-ext-pcap
  warp10-ext-pmml
  warp10-ext-polyglot
  warp10-ext-s3
  warp10-ext-tensorflow
(Move up and down to reveal more choices)

Retrieve a group of artifacts

In your Warp 10 installation directory, create a file named wf.json:

{
  "dependencies": [
    "io.warp10:warp10-ext-barcode:0.2.0",
    "io.warp10:warp10-ext-jdbc",
    "io.warp10:warp10-ext-pmml:latest",
    "io.warp10:warp10-ext-s3:+"
  ]
}

The syntax is: <group>:<artifact>:<version>

If you want the latest version of the artifact, you can avoid to precise the version, or use + or latest.

wf install will ask you if it automatically patch your Warp 10 configuration in order to activate extensions or plugins. It will also deploy artifacts and macros into right directories.

$ wf install --conf=/path/to/warp10/etc/conf-standalone.conf        ___       __                     _______________         _____
       __ |     / /_____ __________________  ____/__  /___________  /_
       __ | /| / /_  __ `/_  ___/__  __ \_  /_   __  /_  _ \  _ \  __/
       __ |/ |/ / / /_/ /_  /   __  /_/ /  __/   _  / /  __/  __/ /_
       ____/|__/  \__,_/ /_/    _  .___//_/      /_/  \___/\___/\__/
                                /_/                                        ™
✔ ext io.warp10:warp10-ext-pmml#0.2.0 retrieved 
✔ ext io.warp10:warp10-ext-jdbc#0.1.0 retrieved 
✔ ext io.warp10:warp10-ext-barcode#0.2.0 retrieved 
✔ ext io.warp10:warp10-ext-s3#0.2.0-uberjar retrieved 
✔ Download successful: gradle-wrapper.jar 
✔ Download successful: gradlew 
✔ Download successful: gradlew.bat 
✔ Dependency commons-math3-3.6.1.jar successfully deployed 
✔ Dependency core-3.3.3.jar successfully deployed 
✔ Dependency guava-27.0-jre.jar successfully deployed 
✔ Dependency pmml-agent-1.4.8.jar successfully deployed 
✔ Dependency pmml-evaluator-1.4.6.jar successfully deployed 
✔ Dependency pmml-model-1.4.8.jar successfully deployed 
✔ Dependency warp10-ext-barcode-0.2.0.jar successfully deployed 
✔ Dependency warp10-ext-jdbc-0.1.0.jar successfully deployed 
✔ Dependency warp10-ext-pmml-0.2.0.jar successfully deployed 
✔ Dependency warp10-ext-s3-0.2.0-uberjar.jar successfully deployed 
✔ Please add this conf entries to /opt/warp10-1.2.11-rc4/etc/conf-standalone.conf warpscript.extension.jdbc=o.warp10.script.ext.jdbc.JDBCWarpScriptExtension 
✔ Done

Create an extension

For security reasons, if you want to be a WarpFleet publisher, you have to be authenticated. Find more info here.

$ wf i
       ___       __                     _______________         _____
       __ |     / /_____ __________________  ____/__  /___________  /_
       __ | /| / /_  __ `/_  ___/__  __ \_  /_   __  /_  _ \  _ \  __/
       __ |/ |/ / / /_/ /_  /   __  /_/ /  __/   _  / /  __/  __/ /_
       ____/|__/  \__,_/ /_/    _  .___//_/      /_/  \___/\___/\__/
                                /_/                                        ™
? What do you want to develop? (Use arrow keys)
❯ Extension
  Macro package
  Plugin

Choose extension for example. Some indications:

  • group: must reflect a domain name you own (ie. com.mycompany)
  • artifact: your module name
? What do you want to develop? Extension
? Enter project's group: io.warp10.ext.example
? Enter assets's name: my-awesome-module
? Enter assets's version: 0.0.1
? Enter project's description: A great extension for Warp 10
? Enter author's name: Your Name
? Enter email address: your.email@server.com
? Enter license: Whatever
? Enter GIT repo url: https://github.com/pseudo/my-awesome-module
? Enter Maven repo url root: https://dl.bintray.com/myCompany/maven/
? Coma separated list of tags
? Is all OK?
{
    "type": "ext",
    "group": "io.warp10.ext.example",
    "artifact": "my-awesome-module",
    "version": "0.0.1",
    "description": "A great extension for Warp 10",
    "author": "Your Name",
    "email": "your.email@server.com",
    "license": "Whatever",
    "git": "https://github.com/pseudo/my-awesome-module",
    "tags": []
} (Y/n)

Confirm. You can change everything later. It is stored in src/main/resources/wf.json.

? Is all OK?
{
    "type": "ext",
    "group": "io.warp10.ext.example",
    "artifact": "my-awesome-module",
    "version": "0.0.1",
    "description": "A great extension for Warp 10",
    "author": "Your Name",
    "email": "your.email@server.com",
    "license": "Whatever",
    "git": "https://github.com/pseudo/my-awesome-module",
    "repoUrl": "https://dl.bintray.com/myCompany/maven/",
    "tags": []
} Yes
[INFO] Retrieving starter kit
[INFO] Cleaning starter kit
[INFO] Generating artifacts
[INFO] Generating WarpFleet files
? my-awesome-module/README.md already exists, do you want to overwrite it? Yes
[SUCCESS] Successful
[SUCCESS] Asset generated

You now have a bootstrapped Warp 10 extension.

Have a look at WarpFleet Synchronizer.