Madogiwa Blog

主に技術系の学習メモに使っていきます。

CI

`heroku-docker-deploy`を使ったGitHub ActionでのHerokuへのデプロイが`TypeError: Cannot read properties of undefined (reading 'statusCode') `が発生して失敗するメモ📝

表題の通り1週間前ぐらいからheroku-docker-deployを使ったGitHub ActionでのHerokuへのデプロイがTypeError: Cannot read properties of undefined (reading 'statusCode')が発生して失敗するようになり、一旦デプロイできるように対応したのでメモ 個人の…

ESLintで任意のディレクトリ配下は、特定のパスからのインポートを禁止するメモ📝

コンテナ・プレゼンテーションパターンを採用している等、 zenn.dev 特定のパスに集約したロジックはimportを禁止にし静的解析レベルで担保したいケースでESLintのno-restricted-importsを使うと実現できそうだったのでメモ eslint.org 結論 「no-restricted…

`actions/upload-artifact`で隠しファイル(`.`始まりファイル)をartifactに格納する方法メモ

actions/upload-artifactで存在するはずのファイルが以下のエラーが発生しファイルが見つからずにアップロードできない状態でハマったのでメモ No files were found with the provided path: path/.file. No artifacts will be uploaded. github.com 結論と…

HerokuにGitHub ActionでImage Buildしてデプロイする

Herokuにはheroku.ymlを使って簡単にpush時に自動デプロイする機能がありますが、 devcenter.heroku.com 簡単にできる反面、以下のようにRuntimeで設定される環境変数は利用できず、動的な値や秘匿値をセキュアにビルド時に設定するようなことはできません。…

`typescript-eslint`のv8を使ってESLint v9にアップデートしたのでメモ📝

以下の通り、まだ正式リリースではないですが、ESLint v9対応が入ったtypescript-eslintのv8使ってESLint v9にアップデートしたので必要だった対応等をメモ typescript-eslint.io 前提として以下の記事に記載したFlat Configに移行済みのTypeScript, Vue.js…

Ruby on Rails: Capybaraでスクリーンショットを取得してreg-cliで画像比較する簡単なVRT的なのを作るMEMO

Ruby on Railsのsystem specで画面ショットを取りつつmasterとの画像比較してVRT的なことできないかなーと思っていたのですが、Capybaraのpage.save_screenshotとreg-cliを使うと実現できそうだったのでメモ ちなみにPlaywrightでは以下の通りtoHaveScreensh…

VitestのcacheをCIで利用するメモ📝

以前書いたJestのCacheをCIで利用して高速化するのをVitestでも出来ないか調べたら出来そうだったのでやり方をメモ madogiwa0124.hatenablog.com ちなみにVitestでもdefaultでcacheが使われるようです。 cache Type: false | { dir? } Options to configure …

dependabotでterraform providerのバージョンアップを行うMEMO

dependabotでterraform providerのバージョンアップを行うようにしたのでやったことととかをメモ (ほぼ以下の記事の通りですが) qiita.com dependabot用のyamlを用意する 記事の通りに以下のようなyamlを.github/dependabot.ymlに配置してあげるだけでOKでし…

CircleCI: circleci tests globの結果から任意のファイルをexludeする方法MEMO

CircleCIでテストを分割して並列実行する場合に以下のドキュメントに記載されているようなcircleci tests glob "foo/**/*"のようなコマンドを実行すると思います。 circleci.com このときに任意の複数のディレクトを対象にするのはcircleci tests glob {foo,…

JestのcacheをCIでも利用して高速化するメモ📝

Jestはデフォルトでcacheを利用するのですが、CIでも利用できるようにしとくと高速化できそうだったのでやり方をメモ Whether to use the cache. Defaults to true. Disable the cache using --no-cache. Jest CLI Options · Jest jestでcacheを保存するパス…

eslint/stylelintの実行結果をcacheして実行時間を削減するメモ

eslint、stylelintにもcache用のオプションがあって差分のあったファイルだけ実行して時間を削減できることを知らなかったのでやり方とかをmemo eslintでcacheを利用する CIでeslintのcacheを利用する stylelintでcacheを利用する CIでstylelintのcacheを利…

GitHub Actionの`on: pull_request`と`on: pull_request_target`の違いMEMO

最近GitHub Actionを触っていて、タイトル通りon: pull_requestとon: pull_requestの実行コンテキスト等の違いによって、 大分ハマったので、それぞれの違いとかを調べてみたのでMEMOしておきます。 https://github.com/features/actions on: pull_requestと…