どうも!大阪オフィスの西村祐二です。 個人的にServerless Frameworkを使ってLambdaを管理することが多いです。 日々保守運用していると、Lambda上で動くコードのバグを修正したり、機能追加したり、または切り戻したり、特定のLambdaだけ更新したりなど、全Lambdaが同じバージョンで動いていない状況になるときがあります。 そんな中、何か異常があり調査したいときに、デプロイしたLambdaがどういった状態か確認するときにGitのコミットIDが紐付いていると調査時に役立つときがあります。 そこで今回はデプロイ時にコミットIDを環境変数に含める方法を備忘録を兼ねてブログにしたいと思います。 コミットIDを環境変数に含める方法 早速、結論ですが、 Serverless Frameworkではデプロイ前に設定したJSを実行することができるので、コミットIDを取得するJSを作
This guide explains how to avoid common issues when deploying a project using Prisma ORM to AWS Lambda. While a deployment framework is not required to deploy to AWS Lambda, this guide covers deploying with: AWS Serverless Application Model (SAM) is an open-source framework from AWS that can be used in the creation of serverless applications. AWS SAM includes the AWS SAM CLI, which you can use to
Serverless FrameworkでAppSyncを開発する基本的な方法や、ローカル開発のためにserverless-offlineと連携する方法、また、最近リリースされた、VTLを書かなくて済む、Direct Lambda Resolversを設定する方法についてメモ。 こちらの記事を参考にさせていただきました。 https://qiita.com/G-awa/items/095faa9a94da09bc3ed5 AppSyncをAWS上にデプロイするまで まずは、Serverlessのプロジェクトを作ります。 sls create --template aws-nodejs-typescript AppSync用のプラグインをインストールします。 yarn add serverless-appsync-plugin serverless.ymlにプラグインを追加します。 plug
はじめまして。株式会社GA technologies のService Development Division (開発部門) エンジニアの永冶といいます。 今後、この技術ブログを通して様々なことをアウトプットし、記事を閲覧する方の力に少しでもなれたらと思います。よろしくお願いします。 この記事を書いた経緯 弊社ではAWS Lambdaを 画像の圧縮 Slackへの通知 外部サービスとの連携 などで幅広く使用しています。数多くのLambda関数を管理する上で、設定の可視化とデプロイの自動化は避けては通れません。設定の可視化とデプロイの自動化を達成するために、弊社のいくつかのプロジェクトではserverless frameworkを使用しています。 社内で運用を続けていく上で、serverless frameworkを使用する時のオススメの設定やプラグインが洗練されてきました。 この記事を読
Serverless Frameworkでデプロイすると、デプロイ用のS3バケットが勝手に作成されます。勝手な作成を抑制する設定のメモです。 Serverless FrameworkはCloudFormationのテンプレートやLambdaに使うソースコードをS3バケットに保存してデプロイ処理します。バケット名は、「サービス名-ステージ名-英数字12文字」という名前になり、サービスやステージごとに作成されてしまいます。 バケットの中は「serverlss/サービス名/ステージ名/デプロイ日時/」というフォルダの中にjsonやzipファイルが置かれます。したがってServerless Framework用のバケットを1つ用意して、それを複数のサービスやステージで共有しても衝突はしません。 デプロイ用S3バケットの指定 バケット名を serverless.yml に以下のように書けばよいです。
Serverless Frameworkを検討したきっかけ業務で使うサーバーが、いつの間にかAWSになってから、毎日AWSを業務で利用しています。 AWSには、沢山のサービスがありますが、私のお気に入りはAWS Lambdaです。 理由は、とりあえずシンプルに作れるから! プロジェクトが始まると、切り出せそうな処理はどんどんLambda Functionとして作ってはデプロイを繰り返します。 結果、案件も終わりが見えた頃には、「Lambda Functionいっぱい問題」発生。 このパターンが日常的にあり、修正や管理のコストが大きくなることが多いです。 Lambda Function自体は便利ですが、以下の悩みがあります。 デプロイされているソース状態がわからない (パッケージサイズによるけど)数が多くなるとデプロイが大変。以下の手順を手動で何度も行うのは大変最新ソースをgitからclon
概要 CodePipelineでServerless Frameworkのデプロイを自動化する デプロイはCodeBuildから直接slsコマンドを実行する CodePipelineを使えば、リリースリーダー確認後の本番デプロイみたいな管理もできる(はず) 経緯 Serverless Frameworkで作ったアプリを以下のようなフローで管理してみたくなった。 masterブランチにPR masterブランチにマージ stg用環境をデプロイ 動作確認 リリースリーダー承認 prod環境にデプロイ Pipelineを作ってみた 流れとしては、以下の通り。 GitHubのリポジトリからソースを取得 CodeBuildがsls deploy --stage stgを実行 SNSからリリース担当者へメール or Slack通知 動作確認後、承認ボタンクリック CodeBuildがsls deplo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く