Skip to content

Rebar3 plugin

To enhance the workflow for our users, our team developed a dedicated Rebar3 plugin for GRiSP.io.

This page provides detailed instructions on installing the plugin and a comprehensive description of its commands.

Installation

To install the plugin globally, add it to your "plugins" list in ~/.config/rebar3/rebar.config

For example:

erlang
{plugins, [
    rebar3_hex,
    rebar3_grisp,
    rebar3_grisp_io
]}.

Afterward, to update it to the latest version, you need to update the Hex index and then the plugin:

shell
rebar3 udpdate
rebar3 plugins upgrade rebar3_grisp_io

To verify that everything works correctly you can check the version of the plugin by calling:

shell
rebar3 grisp-io version

Commands

rebar3 grisp-io auth

This command allows you to authenticate to grisp.io and request an API token.

shell
rebar3 grisp-io auth
===> Analyzing applications...
===> Compiling rebar3_grisp_io

Username > <Username>
Password > <Your grisp.io Password>
Authentication successful - Please provide new local password
Local password > <LocalPassword>
Confirm your local password > <LocalPassword> % Must be the same
Token successfully requested

⚠️ Warning

This command encrypts the token locally using your password. The token is never stored in plain text.

If you lose your password, you must request a new token.

rebar3 grisp-io deploy

📌 Note

Before running this command, ensure you have a local token obtained through the authentication.

This command allows you to deploy an update on a GRiSP board using a package previously uploaded on grisp.io

The command has 2 options:

  • --device or -d (mandatory): This option specifies the serial number of the target device
  • --package or -p (optional): This option specifies the full name of the package that needs to be deployed

If no package name is specified, it will use the information contained in your rebar.config to deduce the package name

rebar3 grisp-io upload

📌 Note

Before running this command, ensure you have a local token obtained through the authentication.

This command allows you to upload a release package on grisp.io

A release package is identified by 3 elements:

  • The platform name (by default grisp2)
  • The application name
  • The release version in SemVer fashion (by default 0.1.0)

These elements are deduced from the rebar.config file of your application.

The command has 2 options:

  • --force or -f: This option will force an overwriting of the local and remote files of a given project and release package
  • --no-pack or -p: With this option enabled, the command won't run internally the command rebar3 grisp pack

rebar3 grisp-io validate

📌 Note

Before running this command, ensure you have a local token obtained through the authentication.

This command allows you to validate an update that has been deployed on a device

This command has 1 mandatory option:

  • --device or -d: Used to specify the serial number of the device on which you want to validate the update
shell
rebar3 grisp-io validate -d SERIAL_NUMBER