Pocket

AWS Lambdaですが、今までは手動でzipに固めて、AWSコンソールからUpload、デプロイ!なんてことをしていたのですが、いい加減自動化したく、ささっとCircleCIで簡単に自動デプロイが実装できたのでご紹介したいと思います。言語はNode.jsになります。


Environment

  • Node.js 14.x
  • index.handler
  • aws-cli v2
  • 関数名:lambda-test

Repository

  • Lambda


自動化したいこと

  • リポジトリをクローン
  • npm install を実行
  • ZIP圧縮してAWS Lambdaにデプロイ

ちなみにLambdaにデプロイするためにはaws-cliaws lambda update-function-code を利用すればOKです。

https://awscli.amazonaws.com/v2/documentation/api/2.0.33/reference/lambda/update-function-code.html


CircleCI

  • .circleci/config.yml

今回は Orbsの aws-cli@2.0.0 コンテナを利用しました。Orbsを使えばaws-cliをわざわざインストールしなくて済みます。masterマージnodejs をインストール、 npm installzipコマンドでの圧縮、aws-cliでデプロイで完了でございます。

https://circleci.com/developer/ja/orbs/orb/circleci/aws-cli?version=2.0.2

なるほど circleci/aws-cli@2.0.2 出ていたのか….バージョンアップしましょう!


Deploy

AWS Lambdaのコンソール画面から Last modified が最新になっていればOKです!


まとめ

簡単!自動化最高!と言ってもシェル芸ですな。LambdaのCIとか作ってみようかな…
余談だけどSophosいいな。

Pocket

カテゴリー: AWSCircleCI

adachin

1989年生まれのSRE。ホスティングから大規模なアドテクなどのインフラエンジニアとして携わる。現在はサービスの信頼性向上、DevOps、可用性、レイテンシ、パフォーマンス、モニタリング、オブザーバビリティ、緊急対応、AWS/Azureでのインフラ構築、Docker開発環境の提供、Kubernetes保守、インフラコード化、新技術の検証、リファクタリング、セキュリティ強化などを担当している。個人事業主では数社サーバー保守とベンチャー企業のSREインフラコンサルティングやMENTAで未経験者にインフラのコーチング/コミュニティの運用を実施している。また、「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。

0件のコメント

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください