web-dev-qa-db-ja.com

サーバーレス:1つの関数を削除する方法

サーバーレスを使用してAPIをAWSにデプロイしています。

サーバーレスでは、単一の機能をデプロイできます。

sls deploy -f <function name>

ただし、単一の関数を削除することはできません。

sls remove // will remove all functions.

他の機能に影響を与えない単一の機能を削除する方法はありますか?

10
Phong Vu

@ justin.m.chaseの提案:

Serverless.ymlの関数を削除してから、フルデプロイを実行します

sls deploy

関数は削除されました(Lambda + API Gateway)。パーフェクト!

15
Phong Vu

私はこの質問が1年以上前で終了していることを知っていますが、単一の関数を削除する正しい方法は、ほとんど持っていた名前で指定することです。

sls remove -f <function name>

0
Azkuma

Peter Phamが言ったように、serverless.ymlから関数を削除し、完全に実行します。

sls deploy

AWSで関数を手動で削除しようとすると、多くの問題が発生します。

0
Lane Wagner

私はそれが少し古いことを知っていますが、サーバーレスの展開の苦痛はまだ事です。

私は最近、AWS sam cliを利用して、AWSでマイクロサービスを構築できるcliを開発しました(そのため、cli名:Rocketsam)。

Cliは関数ごとのキャッシュを有効にします(関数コードが1つだけ変更された場合、マイクロサービスへの完全な展開は不要になります)。また、テンプレートファイルを関数ごとに分割する、関数間でコードを共有する、ログを取得するなどの追加機能もあります。

https://www.npmjs.com/package/rocketsam

現在、cliはpython 3.6でのみビルド機能をサポートしていますが、将来は需要に応じて簡単に拡張できます。

0
Nadav96