Automation Anywhere Automation360 で、複数環境を利用している際に楽になるバッチ
注意:本投稿は、A2019の頃に作成したものであり、Automation 360で稼働するかどうかは確認しておりません。
Automation Anywhere Automation360 を利用しているユーザーは、複数のControl Room環境を切り替えながら作業することが多いと思います。
その理由としては、
・3CR環境(開発、ステージング、本番環境)によるBLM(Bot Lifecycle Managment)の利用が推奨されている。
・国や部署毎に別環境が用意されている。
・社内の環境と、Community Editionを利用。
等など。
v11の名残なのか分かりませんが、一般的に、Control Roomの切り替えは、
- Bot Agentのアンインストール
- 新規Control Roomでのデバイス追加
- Bot Agentのダウンロードとインストール
という流れがあり、これが正直めんどくさいです。
ドキュメントサイトを見ると、A2019の接続先CRの変更時にアンインストールは不要でプロパティファイルを消せと書いてありますが、このファイルをいちいち見つけて消しに行くのも、めんどくさい。
https://docs.automationanywhere.com/bundle/enterprise-v2019/page/enterprise-cloud/topics/control-room/devices/cloud-bot-agent-manual-upgrade.html
ということで、下記バッチファイルです。
使い方としては、
- バッチファイル実行(管理者権限で)
- 移動先Control Roomでデバイス登録
- 必要があれば認証情報更新
という流れになります。
尚、管理者権限が必要な理由ですが、少し前までのバージョンでは、サービスの停止は入れなくて良かったのですが、
最近のバージョンでは怒られるようなので一旦止めて、プロパティファイル削除後に再起動するようにしています。
また、一応プロパティファイルはファイルを変更して保持するようにしていますので誤って消してしまった場合は、
手動でファイルを戻すことが可能です。(再度デバイス登録してしまったほうが早いかもしれませんけど。)
chcp 65001
@ECHO OFF
:GET_INPUT
SET /P INPUT_STR="A2019 Bot Agentの登録ファイルを消去してよろしいですか?(Y/N): "
IF "%INPUT_STR%"=="Y" (
GOTO :PROCESS
) ELSE IF "%INPUT_STR%"=="y" (
GOTO :PROCESS
) ELSE (
GOTO :END
)
:PROCESS
net stop "Automation Anywhere Bot Agent"
set yyyy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
set time2=%time: =0%
set hh=%time2:~0,2%
set mn=%time2:~3,2%
set ss=%time2:~6,2%
set filename=%yyyy%-%mm%%dd%-%hh%%mn%%ss%
CD C:\Windows\System32\config\systemprofile\AppData\Local\AutomationAnywhere\
REN registration.properties registration.properties_%filename%
net start "Automation Anywhere Bot Agent"
ECHO "--------------------------------------------"
ECHO " 登録ファイルを削除しました。 "
ECHO " 利用したいA2019環境で登録を行ってください。 "
ECHO "--------------------------------------------"
:END
PAUSE