クリスマスイブの記事です。前談(The・前談)クリスマスイブですね。恋人との関係も冷えてしまった過去が?ざまあみ(ry※私はサーバにはなんの思い出もないです。いうことで、今回は会社の開発合宿で先輩エンジニアに手取り足取りしていただきながら、サーバレスの環境でbatch処理を行った話を書いていきます。アラートあげるbotです。割引価格で購入できるものです。マシンタイプやコア数、適用期間などを指定したコミットメントというものを購入すると、その分の利用分は確約利用割引が適用されるというものです。雑な説明にはなりますが、年間パスポートのようなものです。最初に一括で代金をを支払うわけではないので、通常の年間パスポートとは少し違いますが、下記の例を見るとだいたい年間パスポートみたいなものだという計算になると思います。4コア分は通常料金で請求される詳しくは公式のドキュメントでご確認ください。アラートあげるbotを作るにあたって、実現したいことの認識合わせを先輩としました。契約している確定利用割引の更新日が近づくと、メールでのアラートは来るけど見落としそう見落として更新を忘れると通常価格での支払いとなり、損してないけど損した気分になるので嫌だ実現したいこと契約している確定利用割引の更新日が近づくと、Slackで通知させたい!某総理大臣と某大統領のごとく、直接会談の結果、完全に認識が一致しました。次に、実現方法について考えました。下記のように、私は考えました。こんな感じで考えてるんですけど、どこのサーバに置きますか?てか、新しいサーバを立てますか?」1先輩「なるほど、君はどこのサーバにアプリを置くか迷っているようだけど、全てが違う。Runでしてみない?」だった気もします。いうことで、今回はサーバレス環境で実装することになりました。取得したコミットメントの終了日が近いかの確認の部分を実装したので、その辺り中心に書こうと思います。今回はgo言語で実装しました。importは省略しています。愚直に公式のExamplesに沿って認証を通していきます。Credentialsを利用したサンプルです。日付型を整えた上で、アラートを出すべき日かを確認する。atr})}※特にmain.goの方で、ネストが深くなっていたり、無理やりな部分があり、見苦しく申し訳ないです。最後に今まではPHPでコードを書いて、すでに構築されているk8sの環境にリリースしたことぐらいしかなく、go言語もサーバレス環境も全てが新鮮でとても勉強になりました。PubSubにメッセージを公開する部分は、ほとんど先輩に教えていただきました。実装をGCRにあげるところや環境周りでも大変お世話になり、とても感謝しております。ありがとうございました。私の妄想上での発言です。upLoginユーザーは見つかりませんでした。