LoginSignup
0
0

More than 5 years have passed since last update.

コマンドラインからAlexaスキルをデプロイするときのLambda関数名を変更する方法

Posted at

はじめに

こちらの記事でコマンドラインからAlexaスキルをデプロイする手順について書きました。
その中で、AWS Lambdaにデプロイされる関数名が以下のようにいくつかの情報が付与された形式で作成され、それを変更する方法があると述べました。

今回は、その方法についてです。

手順紹介

スキルのプロジェクトフォルダに移動してください。

その中に「.ask」というフォルダがあるので、移動してください。

「.ask」フォルダ内のconfigファイルをテキストエディタで開いてください。

configファイルの中身は、デプロイしたことがあるかないかで変わります。

また、以下の説明はスキル作成時に以下のコマンドで作成したことを前提としています。

> ask new --skill-name MyFirstSkill --lambda-name alexa-skill-MyFirstSkill

まだ一度もデプロイしたことがない場合

configファイルの中身は以下のようなJSON形式のデータになっています。

{
  "deploy_settings": {
    "default": {
      "skill_id": "",
      "was_cloned": false,
      "merge": {
        "manifest": {
          "apis": {
            "custom": {
              "endpoint": {
                "uri": "ask-custom-alexa-skill-MyFirstSkill-default"
              }
            }
          }
        }
      }
    }
  }
}

この中で"uri"の項目が、AWS LambdaにLambda関数が配置されるときの名前になります。
ここを希望の名前に変更すればOKです。
例えば以下のように。

{
  "deploy_settings": {
    "default": {
      "skill_id": "",
      "was_cloned": false,
      "merge": {
        "manifest": {
          "apis": {
            "custom": {
              "endpoint": {
                "uri": "ask-alexa-skill-MyFirstSkill"
              }
            }
          }
        }
      }
    }
  }
}

それではデプロイしてみましょう。

> ask deploy

AWS Lambdaを確認してみると、関数名が指定したとおりになっていますね。
image.png

注意:
頭にask-をつけたままにしてあるのは、ask cliから利用する際に用いるユーザーのLambdaに関する権限設定において、以下のような制限をかけているからです。

image.png

ask-*

この辺の権限を緩めればより自由な変更を加えることができます。
しかし、権限の設定は慎重に行ってください。

デプロイ済みの場合

後ほど。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0