最近のアップデート

今回は最近の細かいアップデート内容についてご説明したいと思います。

ノードのバージョンアップ・ダウン

フローで使用してるノードのバージョンのアップやダウンができるようになりました。

これはどういう意味か少し、かいつまんでご説明します。

enebularのエディターでオープンソース上で公開されているノードを使いたい時は、右上のメニューの「パレットの管理」からノードをインストールします。これはNode-REDユーザであればお馴染みの操作です。

フローを作ったときから、ノードがバージョンアップしている場合、ユーザーは、パレットの管理から更新ボタンを押すのが一般的なNode-REDの操作です。

パレットの管理
パレットの管理でのノードの更新

しかし、enebularではその操作方法に対応できません。(え?できなかったの?と思われるかも知れませんが、これまでは一度ノードを削除しなければなりませんでした。理由は、enebularのコンセプトや動作に起因しているのですが、長くなりそうなので、また今度ご説明します。)

そのため、ユーザーが自由にノードのバージョンをコントロールできるように、enebularのフローの画面から直接バージョンを指定する様に変更しました。

外部パッケージバージョン
フローの設定タブの外部パッケージバージョン

操作は、フローの設定タブの「外部パッケージバージョン」からできます。

通常のNode-REDの場合はノードは最新のバージョンへの更新のみに対応しています

enebularでは、存在しているバージョンであれば、バージョンアップ(例:0.9.1から0.9.2)、バージョンダウン(例:0.9.1から0.9.0)どちらにでも更新可能です。

アップデートが頻繁に発生する開発頻度の高いノードの場合はとても便利になったと思います。

バージョンを下げる場合はあまりないのかもしれませんが、本番運用しているシステムの場合、安定稼働していた前のバージョンに切り戻したいケースもあるかもしれません。

エージェント実行環境のenebular editorのリモートモード対応

まず、エージェント実行環境というのは、簡単に言うと、enebularとデバイスを紐付ける仕組みのことです。例えば、ラズパイにenebular-agentをインストールすると、エネブラーの画面でそのデバイスで動いているフローの状態やログを見ることができます。

参考:enebular blog

エージェント実行環境を作ると、設定タブにインストールコマンドが出てくるので、コピーして、そのコマンドの後ろに --dev-modeというオプションを付けてラズパイのCUIで実行します。

エージェント実行環境の設定タブ
エージェント実行環境の設定タブ

例えば、こんな風なコマンドになります。

wget -qO- https://enebular.com/agent-install | sudo -E bash -s -- --user=enebular --install-key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --dev-mode

--dev-modeオプションは、ノーマルモードでの起動であれば省略し、開発者モードの場合のみ指定します。
--userオプションは、ラズパイの場合はpiに変えた方が良いでしょう。

すると、enebular-agentは開発者モードで起動するようになります。

開発者モードでは、PC上のenebular editorから同じLAN上のラズパイにアクセスして、直接ラズパイ上のフローを編集できるようになります。

デバイスにつなげたセンサーデータを直接デバッグするときなど便利です。

注意開発者モードはあくまで開発用なので、そのデバイスを本番環境でも使用する場合は、セキュリティ上、必ずノーマルモードに変更してください。

エージェント実行環境の環境変数を設定できるようにする

エージェント実行環境の環境変数を設定できるようにする。

以前、こちらの記事でご紹介したのは、クラウド実行環境上でのことでした。
エージェント実行環境でもフローの中で環境変数を使えるようになりました。

環境変数を設定するとフローが自動的に再起動するので、その際にエージェント実行環境に反映されます。

以上が、最近のenebularのアップデートの内容です。