Draft: Publish Plugin to Cloud - Labs

From MOD Wiki
Revision as of 23:24, 20 October 2018 by Alercunha (talk | contribs) (Created page with "== Introduction == Every MOD Duo has a Plugin Store which is connected to the cloud API. So when a new plugin is published by the MOD Team any user can install it directly fr...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Introduction

Every MOD Duo has a Plugin Store which is connected to the cloud API. So when a new plugin is published by the MOD Team any user can install it directly from the MOD UI. As part of the MOD Labs initiative a new environment has been created to allow developers to publish their creations so MOD Duo users can also install and use them.

This article will explain how developers can publish plugins in the labs cloud environment and also how users can change their Duo configuration to consume them.

Basics

In order to create a plugin you have to:

  • Develop the source code of an LV2 plugin
  • Add a GUI
  • Compile it
  • Publish to your Duo (locally)

If you're not familiar with some of the steps above you can look at How To Build and Deploy LV2 Plugin to MOD Duo.

Compile and Publish

MOD command line interface (modcli)

First you'll need install a small python tool that will communicate with the cloud API and ease the process of building and publishing your plugin. Simply follow the instructions from the mod-devel-cli project.

Once installed you can check the status:

$ modcli status
Active environment: labs
Authenticated in [labs]: No
Registered environments: ['dev', 'labs']

If your active environment is not labs' then you have to change it:

$ modcli set_active_env labs
Current environment set to: labs

Next you need to authenticate. The modcli tool will authenticate using SSO against [MOD Forum]. So make sure you register for an account first. Then:

$ modcli auth login_sso
SSO login requires you have a valid account in MOD Forum (https://forum.moddevices.com).
If your browser has an active session the credentials will be used for this login. Confirm? [y/N]: y
Logging in to [labs]...
You're now logged in as [xxx] in [labs].

Getting ready to publish

Now you need to create a