Power Automate Desktopを導入したので試験的にいじってみる。まずはAWSの起動と停止から。
事前準備
事前準備として「Power Automate Desktop」の導入と、AWSへのIAMでのログイン設定が必要。
過去の記事参照
Power Automate Desktop フロー
新しいフローを適当な名前を付けて作成。
作ったフローは下記のようなもの。アクションの「AWS」→「EC2」にある機能をざっとつかってみた。EC2を起動して、停止してしまっているので、意味はない。起動だけの方が使い道はあると思う。
結果として「インスタンスを記述します」、「使用可能なEC2インスタンスを取得します」は利用する必要性が感じられなかった。
アクション:EC2セッションを作成します
これをすることでAWSのEC2の操作ができる。IAMのユーザに権限がついていることが重要。
アクセスキーIDとシークレットはAWSのIAMで設定したユーザのもの。リージョンのエンドポイントはEC2の作成されている場所を設定すればOK
アクション:インスタンスを記述します
インスタンスの情報を「EC2Instances」という変数に格納してくれる。変数の内容は「インスタンスの状態(RunningとかStoppedとか)」と「可用性ゾーン」。
設定値のEC2クライアントは前述のセッションの作成で得られる変数。「インスタンスID」、「可用性ゾーン」はEC2の設定から。(AWS側では「可用性ゾーンは「アベイラビリティゾーン」という名前)
アクション:使用可能なEC2インスタンスを取得します
使用可能なインスタンスの情報を「EC2InstancesInfo」という変数に格納してくれる。変数の内容は「EC2Instances」と同じ「インスタンスの状態(RunningとかStoppedとか)」と「可用性ゾーン」。
(インスタンスが複数ある場合にこっちは複数のインスタンス情報が表示されるものと思われる。)
設定値のEC2クライアントは前述のセッションの作成で得られる変数。「可用性ゾーン」はEC2の設定から。(AWS側では「可用性ゾーンは「アベイラビリティゾーン」という名前)
アクション:EC2インスタンスを開始する
指定したインスタンスIDのEC2サーバを起動する。
設定値のEC2クライアントは前述のセッションの作成で得られる変数。「インスタンスID」はEC2の設定から。(ここでフローを止めて、インスタンスがちゃんと起動していることを確認してみるとよいかも)
アクション:メッセージを表示
試験的に実施しているので、アクションで取得した変数の内容を表示してみたもの。
出力内容は下のようなものでした。最後の「StartingEc2Instances」は起動処理を仕掛けてすぐの状態らしく、まだ「pending」で起動はしきっていない状態となっている。
(何か待ちの処理で起動しきってから次に進む方がよさそうだが、ぱっと見ではどれかわからなかった。)
アクション:EC2インスタンスを停止します
指定したインスタンスIDのEC2サーバを停止する
設定値のEC2クライアントは前述のセッションの作成で得られる変数。「インスタンスID」はEC2の設定から。
アクション:EC2セッションを終了する
最初に開始したセッションを終了。
設定値のEC2クライアントは前述のセッションの作成で得られる変数。
終わりに
Power Automate DesktopでできるAWSの操作はある程度わかった。
AWS操作に関しては他は「スナップショット」しかないので、いまのところはそんなにできることはなさそう。まあ有料版ならもっと多機能なのかもしれないけど。
AWS以外のところでまた機能をみていこうかな。
コメント