Pipelineを使ってみたGitLablambdaserverlessLambdaのコードだけ入れ替えしたいサーバーレスが気になって夜も6時間しか眠れないサーバーレス気になる人間「ながの」です。Lambdaですよね。Lambda使ってますか?Lambdaを使っているとコードだけ入れ替えたいなあってときありますよね?基本的にはAWSリソースはCloudFormationで管理していますが、ちょっとしたコードの変更なのにCloudFormation動かしたくないですね。CloudFormationを動かした事でリソースが予期せぬ変更をする可能性もないとは言えないですし。都度都度CLIでやるのも面倒ですし、コードをコピペして書き換えるのはもっといやですよね。すればいいんだー!?ってことでlambrollを使ってみました。以下で作者自身の紹介した記事が見れます。deployするとコードだけ入れ替わっているやってみましょう。現状のLambdaのコードの確認をします。lambrollを使います。既存のLambdaのコードをダウンロードします。function.zipfunction.zip内を確認しましょう。ソースコードであるtest-lambroll.pyがあるのがわかります。test-lambroll.pytest-lambroll.pyを編集します。「#lambrollから追加」を追記します。#lambrollから追加では、変更したソースコードをLambdaにアップロードします。completed実際にLambdaを見てみましょう。Runnerで利用するいい感じにコードだけ変更できましたが、これだけだと毎回手元でlambrollを実行しないといけません。そこで、LambdaのコードをせっかくGitLabで管理してるので、どうせだったらコードを編集してGitLabにプッシュしたらlambrollが起動してコードをデプロイしてくれればいいのでは?と思いました。とういうことで、試してみました。.gitlab-ci.ymlを書きます。CI/CDをクリックします。ここに.gitlab-ci.ymlを書いていきます。ymlに記載する内容は上記で手動実行した流れそのままです。今回は以下のような内容にしました。--src="."これで.gitlab-ci.ymlは完成ですが、追加で1つ設定があります。Runnerに実行させるためにクレデンシャル情報を設定に入れておきます。Variablesに記入します。これで準備は整ったはず。実際にコードを編集(「#GitLabから追加」を追記)してpushします。#GitLabから追加pushするとパイプラインが動き出しました!パイプラインがpassしたのでログを見てみましょう。succeeded正常に完了しているようです。Lambdaを確認してみましょう。コードが変更されていますね!!あとはテストこれでCDはできたと思いますが、このままだと問答無用にLambdaのコードが入れ替わってしまうので、テストを間に入れたいですね。そんなわけで、テストを勉強中です。Nagano@tnagano1981Follow株式会社スタイルズWEB・業務システム、インフラ構築・運用監視まで、幅広い開発実績と経験豊富なエンジニアによる自社開発体制で、スピーディかつ高クオリティのシステム開発を手掛けています。AWSをはじめ各種クラウドやベンダーパートナーとして総合的なITサービスや、独自移行ツールを使ったマイグレーション、サーバーレスなシステム構築、コンテナを利用したDevOpsコンサルティングなどを提供しています。upLoginユーザーは見つかりませんでした。