echo("備忘録");

IT技術やプログラミング関連など、技術系の事を備忘録的にまとめています。

【AWS】cfn-diagramでCloudFormationテンプレートをプレビューする

はじめに 以前、以下の記事で「VS Code Conference Japan」で登壇したということを書きました。 makky12.hatenablog.com その際の登壇資料の「Azure Template Viewer」のスライド(14ページ)で、「CloudFormationにも、こういう拡張機能が欲しい...」と発表し…

【Serverless Framework】Serverless Framework + TypeScript + JestでAWS Lambdaの開発&テスト環境を構築する その1

はじめに 皆さん、先日はVS Code Conferenceの視聴、ありがとうございました。 ※見てない人は下のURLから視聴できます。 VS Code Conference Japan - YouTube 今年はVS Codeで登壇を結構させて頂きましたが、肝心の&僕が愛してやまないServerless Framework…

【VS Code】VS Code Conference Japanで発表しました

はじめに 2020/11/21(土)に、Visual Studio Code5周年記念として、「VS Code Conference Japan」というイベントがオンラインで開催されました。 vscode.connpass.com この中で、「アプリ開発&チーム管理で役立った拡張機能など」という内容で30分セッション…

【Serverless Framework】IAM Roleを共有し複数プロジェクトでリソース毎に割り当てする

概要 AWS のIAM Role(≒実行権限)を共通プロジェクトでまとめて作成しておき、後で別の複数プロジェクトで使用する(=共有する)方法です。 経緯 先日Twitterをしていたら、こんなツイートを見つけました。 一つのterraformプロジェクトで一元管理してたリソー…

【Serverless Framework】API Gatewayを複数プロジェクト(serverless.yml)で共有する(Share API Gateway and API Resources)

今回の内容 Serverless Frameworkを使用して、API Gatewayを複数プロジェクト(serverless.yml)で共有する(=あるプロジェクトで作成したAPI Gatewayを別のプロジェクトでも使いまわす)方法です。 Serverless Framework公式ページ 詳細 Serverless Frameworkで…

【Serverless Framework】Serverless Jest Pluginで始めるLambdaテストの第一歩

はじめに 前々回の【AWS】単体テストを考慮したLambdaの構成を考えたで、単体テストについて少し触れました。 で、今回はそこから一歩踏み込んで「実際にテストを導入してみよう!」という内容になります。(なぜ前回書かなかったのかは置いといて) また、ど…

【Serverless Framework】Serverless Step FunctionsプラグインでStep Functionsを定義する

本題 皆さん、Step Functions使ってますか? ...僕は使ってません。(仕事では) でも、プライベートでは使っておりまして「これは一連の処理(=ワークフロー)を実行するのに、すごく便利な機能だ!」と思ってます。(てか、業務に導入したい...) で、今回はその…

【AWS】単体テストを考慮したLambdaの構成を考えた

概要 Lambdaのソースコードを書いた際に、ローカル環境で単体テストを実施する場合があると思います。 実は今まで業務では、そこまで単体テストを書いていなかったのですが*1、一度書いてみたら「こりゃ便利だ」と感じ、本腰を入れて単体テストを勉強し始め…

【JavaScript】awaitの使い方を復習する

はじめに JavaScriptの非同期処理(Promiseとかasync/await)について、今年の1月に、下記のブログを書きました。 makky12.hatenablog.com が、最近AWS Lambdaの非同期処理をJavaScriptで書いていて、ちょっとこんがらがってしまったことがあったので、備忘録…

【Serverless Framework】Serverless Frameworkのダッシュボード上でCI/CDを実現する方法(各種設定など)

はじめに 前回の記事で、Serverless FrameworkのダッシュボードからGitHubレポジトリ/ブランチと連携して、CI/CDを実現する方法を記載しました。 今回は、前回書ききれなかった詳細設定などについて記載したいと思います。 ※Serverless Framework公式サイト …

【Serverless Framework】Serverless Frameworkのダッシュボード上でCI/CDを実現する方法

はじめに AWSにしろAzureにしろ、クラウドベースの開発でよく「CI/CD」(継続的インティグレーション/継続的デリバリー)が取り入れられていると思います。 そして、Git連携(=gitの特定リポジトリ/ブランチにpushしたら、連動してデプロイが実施される)を導…

【Serverless Framework】Lambda Destinations機能をServerless Frameworkで実装する

はじめに 昨年11月末にAWSから「Lambda Destinations(Lambda非同期呼び出しの宛先指定)」機能が発表されました。 そしてこの機能について、3月中旬に「Serverless Frameworkが正式サポート」したと公式ブログで発表がありました。 そこで、早速この機能をSer…

【Serverless Framework】メモリ不足でデプロイができない場合の対処方法

概要 Serverless Frameworkでパッケージングやデプロイを行う際に、メモリ不足で失敗することがあります。その場合の対象方法です。 serverless.com 現象 先日、業務で開発したサーバーレスSPAをServerless Frameworkでデプロイしようとしたら、パッケージン…

【Serverless】Serverless Meetup Tokyo #16で発表した感想

経緯 先日、サーバーレスの勉強会イベントである「Serverless Meetup Tokyo #16」がオンラインで開催されました。 serverless.connpass.com そしてこのイベントで、「AWS x Serverless Framework x QuickSightでIoTデータ可視化」という内容で、発表を行いま…

【PowerApps】PowerAppsアプリで撮影した画像をS3バケットにアップロードする【Serverless Framework】

はじめに Micorsoft の製品の一つ、Power Platform。 中でもPower AppsやPower Automateは、ノーコーディング(またはローコーディング)でかなり本格的なアプリが簡単に作れる、画期的な製品です。 また簡単なアプリならコーディングなしでサクッと作れてしま…

【Serverless Framework】201個以上のリソースをデプロイする方法

はじめに Infrastructure as Code(IaC)の代表格の1つである、AWS CloudFormation。 僕も業務でよく使うのですが、CloudFormationで1度にデプロイできるリソースの数(=1スタックのリソース数)は、「最大200個」と決められています。 なので当然、Serverless F…

【AWS】DynamoDBのキーとソートとフィルタについて

きっかけ 先日、とあるサーバーレスアプリを作っていた際、DynamoDBについて下記のツイートをしました。 ここに来て、DynamoDBの構成を変えなきゃいけない可能性が。てかプライマリキー、完全一致検索しかできないの?— Masaki Suzuki@フリーランスクラウド…

【Serverless Framework】Serverless Frameworkで外部ファイルの値を読み込み(YAML/JSON/JavaScript)

概要 Serverless Frameworkでは、serverless.ymlだけでなく、外部ファイルに定義を設定して読み込むことも可能です。 そのやり方についてです。 なお、読み込み可能なファイルは、以下の通りです。 YAML(*.yml) JSON(*.json) JavaScript(*.js) serverless.co…

【JavaScript】「とりあえずawait」は卒業しよう

概要 先日、非同期処理に関して、下記のようなツイートをしました。 ・非同期処理A〜Cの3つ・全て成功した場合のみ処理Dを実行・A〜Cは依存関係なし上記ケースで、お約束かのようにawait Aawait Bawait Cと書く事がないように、若手を指導しなければなあ。— …

【Serverless Framework】Serverless FrameworkからAWS Lambdaのテストを実施する

前回の更新が2019/10/12...ずいぶん間が空いてしまったなあ。 実際のところ、前回から 本番リリース 遅い夏休み(お遍路結願) 謎の体調不良(1か月ほど) で、全然ブログもスキルアップ活動も勉強会参加もできませんでした。 が、ようやく回復してきたので、リ…

【AWS】Cognitoによる認証を実装する(その2)

概要 その1で、Cognitoユーザープールの説明の前半部分を書きましたが、今回はその後半になります。 アプリクライアントの作成 このユーザープールを使用して認証を行うアプリの設定をします。 設定項目は下記の通り。 項目名 説明 備考 アプリクライアント…

【.net Core】Blazorアプリを作成する&Azureで公開する

概要 先日9/23に、ついに.net core(ver3.0)がメジャーリリースされました。(LTSはver3.1だそうですが) そして、9/26(木)にマイクロソフトで開催された、下記イベントに参加してきました。 この中で、マイクロソフトの井上さん(チャックさん)が話された、.net…

【AWS】Cognitoによる認証を実装する(その1)

概要 今まではServerless FrameworkやCloudFront周りのネタでしたが、今回からはしばらくCognito関連のお話。 今回はユーザープール&IDプールによる、認証基盤作成について。 ※ちなみに次回以降は、下記ネタの予定。 Amplify/Authを利用した認証処理 認証処…

【Serverless Framework】package設定について&パッケージが終わらない場合の対策

概要 以前、簡単デプロイとserverless.ymlの記載についてでServerless Framework(以下SFW)のserverless.ymlファイルについての記事を書きました。 今回はその中の「package」項目(=デプロイパッケージの設定)に関する内容です。 Serverless Framework公式サ…

【Xamarin】JXUGC #25 最新情報アップデート&LT 大会に参加しました

概要 昨日(2019/8/31)、マイクロソフト東京本社で開催された、「JXUGC #25 最新情報アップデート&LT 大会」に参加してきました。 その内容になります。 (参考までに)僕のXamarin履歴 2016(4月か10月くらい) : Xamarinイベント&JXUG初参加 3年~3年半のキャ…

【Serverless Framework】Azureにサービスをデプロイする

概要 以前、【Serverless Framework】簡単デプロイとserverless.ymlの記載についてで、Serverless Framework(以下SFW)を使ってAWSにサービスをデプロイする方法を書きました。 今回はその続きとして、最近おざなりになっていたSFWを使用した、Azureへのサー…

【AWS】Web ACLを設定する方法&CloudFormationでの注意点

概要 前回&前々回と、CloudFrontに関する記事でしたが、今回もCloudFrontです。 今回は前々回に触れられなかった、WAF Web ACL(※)の作成について。 ※Web Application Firewall - Web Access Control Listの略。WAFと同じもの...という認識でOK。 やること W…

【AWS】API Gatewayのエンドポイントに独自ドメインでアクセスする

概要 前回CloudFrontを使った独自ドメインによるSPAの公開を記事にしましたが、今回はその第二弾で、API Gatewayに独自ドメインでアクセス方法に関する記事です。 触れること CloudFrontとAPI Gatewayの連携方法(てか、これしかない) 触れないこと API Gatew…

【AWS】CloudFrontを用いてサーバーレスSPAを独自ドメインで公開する

概要 Vue.jsによるサーバーレスSPAをCloudFront(AWSのCDNサービス)を用いて、独自ドメインで公開する方法です。 ※必要最低限しか書いてないので、後日追加するかもしれません。 ※2019/7/29 画像&一部説明を追加しました。 前提条件 Vue.jsのサービスをデプ…

【Vue.js】子コンポーネントの埋め込み方法+各種プロパティ設定方法(2021/12/03:一部加筆修正)

経緯 最近、仕事でVue.jsを触っており(AWSによるサーバーレスSPA)、何とか一週間で他のメンバが開発をできる土台(フレームワーク的なもの)をVue.jsで作成する...程度はできるようになりました。 その中で、コンポーネント(*.vue)の扱いでよく使いそうな、子…