【Terraform】terraform_remote_stateでtfstateを分割するtfstateを分割したい Terraformはリソース数が多くなってくるとplanやapplyの実行時間が長くなってくる。 planやapplyの実行時間が長くなると手元での確認やCI/CDに時間がかかるようになり、開発効率や開発体験が悪くなる。 そのためtfstateを分割してそれぞれのtfstateを小さくし、planやapplyの実行時間を短くしたい。TERRAFORM 2025-01-13 2025-01-13
findコマンドだけで空フォルダを一括削除する(find -empty -deleteオプション)findコマンドだけで空フォルダを一括削除(-empty -deleteオプション) findコマンドを使って空フォルダを一括削除するには以下のようにする。 find /path/to/dir -type d -empty -delete オプションの意味は以下の通り。 -type d : ディレクトリを対象にする -empty : 空のディレクトリを対象にする -delete : マッチしたディレクトリを削除する 上記コマンドは/path/to/dir以下の空のディレクトリを再帰的に削除する。LINUX 2025-01-10 2025-01-10
【Terraform】JSONを構文エラーをplanの段階で検出したい(jsonencode)JSON文字列を必要とする引数 Terraformのリソースやデータソースの引数にはJSON文字列の指定必要とする場合がある。 例えばaws_iam_policyリソースのpolicy引数には以下のようなJSON文字列を指定する。TERRAFORM 2025-01-03 2025-01-03
【Terraform】map関数っぽい表現(for式)map関数っぽい表現 Terraformでlistやmapのようなコレクションのそれぞれの要素を変換した新たなlistやmapを作るにはfor式を使う。 list → list の場合 list型の値をlist型に変換する場合は以下のように書く。TERRAFORM 2025-01-03 2025-01-03
【Android】エミュレータのアニメーションを無効にして自動テストによるスクリーンショットをきれいに撮る自動テストで撮ったスクリーンショットが薄い Androidアプリの自動テストで画面キャプチャを取ると画面遷移の直後などで以下のように薄い画像を取得する場合がある。 これは画面遷移の直後でアニメーションの終了前にキャプチャを取得しているため。ANDROID 2024-12-22 2024-12-22
【PostgreSQL】ページャーを無効にして大量件数の結果でも一度に出力するpsqlでページャーが有効になっている場合 psqlコマンドでクエリを実行すると、結果が多い場合にページャーが有効になる。 例えば以下のように-cオプションで結果が多いクエリを実行する。 $ psql -d testdb -c "SELECT id FROM users;" id ----- 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 : 以上のようにページャーが有効になっており、末尾に:が表示される。DATABASE 2024-12-15 2024-12-15
【PostgreSQL】指定したテーブルのインデックスを確認するSQLでインデックスを確認する PostgreSQLで指定したテーブルのインデックスを確認するにはpg_indexesシステムカタログをSELECTする。 SELECT * FROM pg_indexes WHERE tablename = 'テーブル名'; 例えばusersテーブルのインデックスを確認するには以下のように実行する。DATABASE 2024-12-15 2024-12-15
【unzip】大きなzipファイルをunzipで展開する注意 展開後サイズが4GB以上のzipファイルをunzipファイルで展開できないのはzip bombの可能性を考慮しているため。 以降のコマンドの実行は自分で作ったzipファイルであるなど信頼できる場合に限ること。 大きなzipファイルをunzipで展開した場合のエラー 展開後サイズが4GB以上のzipファイルをunzipファイルで展開しようとすると以下のようなエラーが発生する。LINUX 2024-12-13 2024-12-13
【Android】コマンドでApp Bundle(aab)をapksに変換してエミュレーターにインストールする(bundletool)bundletool bundletool はApp Bundle(aab)ファイルを.apksファイルへ変換できる。 さらにエミュレーターや接続された端末に.apksファイルをインストールできる。ANDROID 2024-12-13 2024-12-13
Android Studioで動作しているgradleタスクをコマンドで停止する(Timeout waiting to lock artifact cache...)gradleタスクを停止するコマンド Androidプロジェクトでgradleタスクを停止するにはgradlewコマンドに--stopオプションを指定する。 $ ./gradlew --stop Android Studio で実行中にコマンドでgradleを実行したときに起きるエラー Android Studioでgradleタスクを実行中にコマンドでgradleを実行すると以下のようなエラーが発生する。ANDROID 2024-12-12 2024-12-12