My Note

自己理解のためのブログ

tagprでPRベースでタグを管理する

はじめに 設定 実際に利用してみる tag発行をトリガーとして利用する さいごに はじめに githubでタグでバージョン管理するときにtag打ちとリリースノートの作成を手動で行うのは面倒だと思っていました。 tagprというOSSがリリースされてtag打ちとリリース…

GitHub-Actionsのworkflowについてまとめる

workflow実行時に選択式で値を渡す workflow実行時に入力式で値を渡す 三項演算子ライクに値を設定する set-envを使わずに環境変数に値をセットする repository_dispatch を利用して別のworkflowから実行する Composite Actionを使う 今回はgithub-actionsの…

Lambdaレイヤーを利用してラインタイムPython上でgoバイナリを実行 & レイヤーをバージョン管理する

Lambdaレイヤーとは 試してみる レイヤーをバージョン管理する 今回はLambdaレイヤーについて簡単な検証とレイヤーのバージョン管理について検証しました。 Lambdaレイヤーとは docs.aws.amazon.com Lambda レイヤーは、Lambda 関数で使用できるライブラリと…

APIGateway + Lambda + Go(Echo)をSAM(Serverless Application Model)でAWSとローカルにデプロイする

はじめに 前回、APIGW + Lambda + Go(Echo)のローカル環境をSAMで構築しました。 今回は、samでローカルではなく、AWS環境にデプロイをしました。ローカルも同じ設定で利用可能です。 yhidetoshi.hatenablog.com 本記事ではAWSにデプロイする部分にだけ記載…

APIGateway + Lambda + Go(Echo)で開発するためのローカル環境をSAM(Serverless Application Model)で再現する

はじめに ローカル環境構築 デプロイと動作確認 さいごに はじめに 前回の記事では、サーバレス環境をローカルに用意するためにserverless frameworkを利用しました。そこで今回はSAMを利用して同じ環境を構築してみます。 基本的にServerlessFrameworkを利…

APIGateway + Lambda + Go(Echo)で開発するためのローカル環境をServerlessFrameworkで再現する

はじめに 構成 ローカル環境 デプロイと動作確認 さいごに はじめに 以前の記事で APIGW + Lambdaで GoのフレームワークであるEchoを動かす検証を実施しました。 実際にデプロイすることができたので今回は開発を行うためにローカル環境をServerlessFramewor…

APIGateway(HTTP API) + Lambda環境に echo(Goのweb Framework) を ServerlessFramework でデプロイする

はじめに 変更部分 ServerlessFramework 動作確認 さいごに はじめに 前回の記事で APIGatewayの REST API で EchoをAWS Lambdaで簡単なAPIをデプロイしました。 今回は、APIGatewayの HTTP API に変更します。差分について記述していきます。 yhidetoshi.ha…

APIGateway(REST API) + Lambda環境に echo(Goのweb Framework) を ServerlessFramework でデプロイする

はじめに コード echoのコード ライブラリをざっくり確認 環境構築 ( ServerlessFramework ) 作成されるリソース Lambda APIGateway APIGWのリソース 動作確認 備考 さいごに はじめに 今回は goのwebフレームワークであるEchoをLambdaにデプロイして簡単なA…

個人開発中 ( 金融資産管理サイト) のここまでのまとめ ( Go Echo on GAE + PlanetScale(DB) + Upstash(Redis) )

はじめに システム システム構成図 システムの概要 機能 各ページ画面のスクリーンショット テーブル構成 データベース PlanetScale( DB ) Upstatsh (Redis) CI / CD について バッチ処理の実行について ログインパスワードの暗号化について ORマッパーにつ…

go-echartsを使ってグラフを描画する

はじめに グラフを描画する さいごに はじめに 今回は個人開発をしていてGoでグラフを描画したくて、何かいい方法がないか調べたときに go-echarts というOSSパッケージを見つけました。 スター数もかなり多く、サンプルコードも豊富だったので利用しました…

GoのWebフレームワーク Echoでの開発記録(bcryptを利用してログインパスワードを暗号化)

はじめに bcryptについて 確認 はじめに 今回は bcrypt を利用してログインパスワードを暗号化します。 今回は以前にまとめた内容のアップデート版。 yhidetoshi.hatenablog.com bcryptについて 説明については以下の記事がわかりやすく参照しました。 mediu…

GoのWebフレームワーク Echoでの開発記録 (GoのORM( GORM )でPaginationを利用する)

はじめに 個人開発中のWebアプリでPaginationのページを作成する機会があったので調べながらやってみました。 開発環境は Go1.6 + Echo + MySQLコンテナ + Redisコンテナで、ORマッパーに "gorm" を利用し、htmlのページは Goでレンダリングしています。 ■ G…

GoのWebフレームワーク Echoでの開発記録(Deep Health Checkパターンを追加)

はじめに APIを追加 確認 はじめに 今回は Deep Health Checkパターンの healthcheck apiを追加します。webアプリ(Echo)のヘルスチェックするapiは作成していましが、DBへのコネクションも正常かどうかを 含めて確認できるようにします。 参考(Deep Health …

GoのWebフレームワーク Echoでの開発記録(DBのデータをmapにしてTemplate Rendering でページに表示する)

はじめに アプリのディレクトリ構成 やること はじめに 以前の記事で初めて Echoで Template Renderingを利用してページを作成しました。 今回はEchoで個人開発をしていてそのTemplate Renderingを利用した備忘録です。 yhidetoshi.hatenablog.com アプリの…

GoのWebフレームワーク Echo で CORS を設定する

はじめに CORSについて コード 動作確認 CORSを検証するための準備 検証 はじめに 最近、Echoで個人開発をしていて(最近の記事に記載)CORSの設定をまだしていなかったので今回追加しました。 CORSについても改めて整理。 CORSについて ■ CORSとは Cross-Or…

GoのWebフレームワーク Echo でJWT ( JSON Web Token )を使う

はじめに コード 動作確認 はじめに 前回はEchoで作成したwebアプリのセッション管理をRedisで行いました。 yhidetoshi.hatenablog.com 今回は JWT ( JSON Web Token ) を利用してAPIに認証をかけます。 ■ JWTとは https://e-words.jp/w/JWT.html JWTとは、J…

Go EchoのwebアプリのセッションをRedisで管理する

はじめに Redisコンテナの準備 コード 動作確認 さいごに はじめに yhidetoshi.hatenablog.com 前回の記事で Echoでサインアップ、ログインの機能を実装しました。 今回はその続きとしてセッションを管理を行いたいと思います。 セッションはwebサーバのスト…

ORMのgormを利用して Echo で サインアップとログイン機能を追加する

はじめに DBの利用 MySQLコンテナの用意 Migrationについて カラムの追加と削除 レコードの追加と削除 コード model view 実行結果 さいごに はじめに サーバーサイドについて実際に手を動かして勉強するために簡単なアプリケーションを作成しました。 今回…

GoのWebフレームワーク Echoの "Template Rendering" を利用してHTMLページを作成する

はじめに EchoのTemplate Renderingを使う 実行結果 さいごに はじめに 本ブログで goのwebフレームワーク "Echo" を利用して APIを作成してきました。Echoでいくつかページを作成したかったので"Template Rendering" を利用して htmlページを作成しました。…

GitHub Actionsで go test & lint(staticcheck)を実行する

はじめに Go Echoで APIを作成していて PullRequest時にテストを走らせたかったので github-actionsで用意しました。 go Echoで実装したAPIサーバーに対して httptestパッケージ を利用してテストコードを作成 - My Note "go test & lint" するコードは以下…

GoのWebフレームワークEchoで実装したAPIサーバーに対して httptestパッケージ を利用してテストコードを作成

はじめに テストコードについて テストする対象のコード テストの内容 JSONファイルの比較に testifyを利用 テストコード Testifyでテスト 備考 さいごに 参考 はじめに 今回は以前に書いた 仮想通貨の価格を取得するAPIに対してテストコードを作成しました…

【Google App Script】+【Google App Enginge ( Go )】+ Google Data Portal】 を利用して金融資産を可視化する

はじめに システムの構成図 GAEについて GAEを無料で使うために 貴金属の情報取得について 投資信託の情報取得について 仮想通貨の情報取得について Gogle App Script ( GAS ) Claspを用いた開発環境の設定 GASで情報を取得 GitHub GitHub Actions Google Da…

Echo ( GoWebフレームワーク ) on GAE で仮想通貨の価格を返すAPIを作成した

はじめに データの取得先 APIについて ソースコード デプロイについて はじめに 今回は自分のAPIサーバで仮想通貨の現在価格情報を返す機能が欲しかったので取引所のAPIを使って実装しました。 データの取得先 価格を取得するために、GMOコインとCoincheck …

Google App Script(GAS)で スクレイピングとAPIコール で情報を取得 & スプレッドシートのバックアップ を定期実行する

GAS

はじめに スクレイピングする サイトに直接スクレイピングする場合 GAEで実装したAPIをコールする場合 GASに機密情報を登録する シートを別のスプレッドシートにバックアップするコード GASのスクリプトを定期実行する はじめに Google App Scriptを確認あた…

Echo ( GoのWebフレームワーク ) on GAE で貴金属 ( 金 & プラチナ )の価格を返すAPIを作成した

はじめに データの取得先 スクレイピング APIについて ソースコード デプロイについて はじめに 以前に 貴金属の価格を取得して可視化する内容で記事を作成しました。 今回は Echo( Goフレームワーク ) でデータを取得する部分についてアップデートした部分…

Echo ( GoのWebフレームワーク ) on GAE で投資信託の基準価格を返すAPIを作成した

はじめに データの取得先とISINコード スクレイピング APIについて ソースコード デプロイについて はじめに 今回は金融資産のポートフォリオ可視化するために投資信託の情報を返してくれるAPIが欲しかったので 勉強も兼ねてEchoで作成してみました。 yhidet…

claspを利用してGitHub Actionsで Google App Script ( GAS )をデプロイする

はじめに Github Actions はじめに 前回の記事で、google app script (GAS) の開発環境を整えました。なので今回はGASを自動デプロイする環境をGithub Actionsで用意します。 yhidetoshi.hatenablog.com Github Actions 前回の記事にも記載していますが設定…

clasp で Google App Script ( GAS ) の開発環境を整えた

はじめに 設定 インストール Googleアカウントに認証する。 claspのセッティング claspのコマンド例 参考 はじめに Google App Script(GAS) でコーディングするにあたりローカルの開発環境をセッティングしたので備忘録です。 GASを実行するには、https://sc…

Goアプリを Google App Engine ( GAE ) に GitHub Actionsでデプロイする(Workload Identity 連携)

はじめに Google Cloudの設定( IAM と Workload Identity ) GitHub Actionsについて 参考 はじめに 前回の記事でGitHub ActionsでGoogle App Engine (GAE) にデプロイする時の認証にサービスアカウントの秘密鍵を利用しました。 そこで今回はOpenID Connect…

Goアプリを Google App Engine ( GAE ) に GitHub Actionsでデプロイする(秘密鍵を利用する場合)

はじめに 利用するGIthub-Actionsのライブラリ サービスアカウントを作成 GitHub Actionsについて はじめに 今回はGithub ActionsでGoogle App Engine ( GAE ) に デプロイします。認証にはサービスアカウントの秘密鍵を利用します。 後にOpenID Connect(OI…