Discover the Warp 10 artifacts repository. Share your plugins, extensions and macros. Level up your Warp 10 instance with new capabilities.
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.
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
(out) ___ __ _______________ _____
(out) __ | / /_____ __________________ ____/__ /___________ /_
(out) __ | /| / /_ __ `/_ ___/__ __ \_ /_ __ /_ _ \ _ \ __/
(out) __ |/ |/ / / /_/ /_ / __ /_/ / __/ _ / / __/ __/ /_
(out) ____/|__/ \__,_/ /_/ _ .___//_/ /_/ \___/\___/\__/
(out) /_/
(out)Usage: wf [options] [command]
(out)
(out)WarpFleet Command Line Interface
(out)
(out)Options:
(out) -v, --version output the version number
(out) -d, --debug Debug mode
(out) -h, --help output usage information
(out)
(out)Commands:
(out) init|i [options] Initialize a new Project
(out) list|l [group] [artifact] List available artifact and/or versions
(out) info [version] Get information about a specific artifact
(out) install [options] [wfFile] Install your dependencies into your Warp 10
(out) get|g [options] [artifact] [version] Retrieve the packed macros, plugin or extension archive. If no version is specified, the most recent one is retrieved.
(out) publish|p [options] [version] [path] [repoUrl] Publishes a plugin, macro or extension against WarpFleet
(out) unpublish|u [options] [version] [path] [repoUrl] Unpublishes a plugin, macro or extension against WarpFleet
Retrieve an artifact
You must specify 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 -w /path/to/warp10 io.warp10
(out) ___ __ _______________ _____
(out) __ | / /_____ __________________ ____/__ /___________ /_
(out) __ | /| / /_ __ `/_ ___/__ __ \_ /_ __ /_ _ \ _ \ __/
(out) __ |/ |/ / / /_/ /_ / __ /_/ / __/ _ / / __/ __/ /_
(out) ____/|__/ \__,_/ /_/ _ .___//_/ /_/ \___/\___/\__/
(out) /_/
(out)? Which asset do you want to retrieve? (Use arrow keys)
(out)❯ warp10-ext-barcode
(out) warp10-ext-jdbc
(out) warp10-ext-pcap
(out) warp10-ext-pmml
(out) warp10-ext-polyglot
(out) warp10-ext-s3
(out) warp10-ext-tensorflow
(out)(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 -w /path/to/warp10
(out) ___ __ _______________ _____
(out) __ | / /_____ __________________ ____/__ /___________ /_
(out) __ | /| / /_ __ `/_ ___/__ __ \_ /_ __ /_ _ \ _ \ __/
(out) __ |/ |/ / / /_/ /_ / __ /_/ / __/ _ / / __/ __/ /_
(out) ____/|__/ \__,_/ /_/ _ .___//_/ /_/ \___/\___/\__/
(out) /_/
(out) ✔ ext io.warp10:warp10-ext-pmml#0.2.0 retrieved
(out) ✔ ext io.warp10:warp10-ext-jdbc#0.1.0 retrieved
(out) ✔ ext io.warp10:warp10-ext-barcode#0.2.0 retrieved
(out) ✔ ext io.warp10:warp10-ext-s3#0.2.0-uberjar retrieved
(out) ✔ Download successful: gradle-wrapper.jar
(out) ✔ Download successful: gradlew
(out) ✔ Download successful: gradlew.bat
(out) ✔ Dependency commons-math3-3.6.1.jar successfully deployed
(out) ✔ Dependency core-3.3.3.jar successfully deployed
(out) ✔ Dependency guava-27.0-jre.jar successfully deployed
(out) ✔ Dependency pmml-agent-1.4.8.jar successfully deployed
(out) ✔ Dependency pmml-evaluator-1.4.6.jar successfully deployed
(out) ✔ Dependency pmml-model-1.4.8.jar successfully deployed
(out) ✔ Dependency warp10-ext-barcode-0.2.0.jar successfully deployed
(out) ✔ Dependency warp10-ext-jdbc-0.1.0.jar successfully deployed
(out) ✔ Dependency warp10-ext-pmml-0.2.0.jar successfully deployed
(out) ✔ Dependency warp10-ext-s3-0.2.0-uberjar.jar successfully deployed
(out) ✔ Please add this conf entries to /opt/warp10-1.2.11-rc4/etc/conf-standalone.conf
(out) warpscript.extension.jdbc=o.warp10.script.ext.jdbc.JDBCWarpScriptExtension
(out) ✔ 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
(out) ___ __ _______________ _____
(out) __ | / /_____ __________________ ____/__ /___________ /_
(out) __ | /| / /_ __ `/_ ___/__ __ \_ /_ __ /_ _ \ _ \ __/
(out) __ |/ |/ / / /_/ /_ / __ /_/ / __/ _ / / __/ __/ /_
(out) ____/|__/ \__,_/ /_/ _ .___//_/ /_/ \___/\___/\__/
(out) /_/
(out)? What do you want to develop? (Use arrow keys)
(out)❯ Extension
(out) Macro package
(out) Plugin
Choose extension for example. Some indications:
group
: must reflect a domain name you own (ie. com.mycompany)artifact
: your module name
(out)? What do you want to develop? Extension
(out)? Enter project's group: io.warp10.ext.example
(out)? Enter assets's name: my-awesome-module
(out)? Enter assets's version: 0.0.1
(out)? Enter project's description: A great extension for Warp 10
(out)? Enter author's name: Your Name
(out)? Enter email address: your.email@server.com
(out)? Enter license: Whatever
(out)? Enter GIT repo url: https://github.com/pseudo/my-awesome-module
(out)? Enter Maven repo url root: https://dl.bintray.com/myCompany/maven/
(out)? Coma separated list of tags
(out)? Is all OK?
(out){
(out) "type": "ext",
(out) "group": "io.warp10.ext.example",
(out) "artifact": "my-awesome-module",
(out) "version": "0.0.1",
(out) "description": "A great extension for Warp 10",
(out) "author": "Your Name",
(out) "email": "your.email@server.com",
(out) "license": "Whatever",
(out) "git": "https://github.com/pseudo/my-awesome-module",
(out) "tags": []
(out)} (Y/n)
Confirm. You can change everything later. It is stored in src/main/resources/wf.json
.
(out)? Is all OK?
(out){
(out) "type": "ext",
(out) "group": "io.warp10.ext.example",
(out) "artifact": "my-awesome-module",
(out) "version": "0.0.1",
(out) "description": "A great extension for Warp 10",
(out) "author": "Your Name",
(out) "email": "your.email@server.com",
(out) "license": "Whatever",
(out) "git": "https://github.com/pseudo/my-awesome-module",
(out) "repoUrl": "https://dl.bintray.com/myCompany/maven/",
(out) "tags": []
(out)} Yes
(out)[INFO] Retrieving starter kit
(out)[INFO] Cleaning starter kit
(out)[INFO] Generating artifacts
(out)[INFO] Generating WarpFleet files
(out)? my-awesome-module/README.md already exists, do you want to overwrite it? Yes
(out)[SUCCESS] Successful
(out)[SUCCESS] Asset generated
You now have a bootstrapped Warp 10 extension.
Read on with WarpFleet Synchronizer and WarpFleet for all. |
Read more
What's new in the Warp 10 Ecosystem
WarpStudio 2.0.6
Warp 10 and the WarpScript/FLoWS dev in your CI/CD pipeline
Senior Software Engineer