つばくろぐ @takamii228

知は力なり

開発支援ツールを導入・運用したときのつらみをまとめた

お仕事で開発支援ツール(チャット、チケット管理、Wikiなど)を複数のプロジェクトへ導入・運用してるのだけど、いろいろなアンチパターンや問題にぶつかったので、その経験を勉強会用にまとめました。

どこかで発表しようかと思ってたのですが、機会を逃してお蔵入りしそうになっていたので、せっかくなのでインターネッツに公開しました。

あるあるネタだと思うので共感される方も多いかと。

資料でも触れてますが、カイゼンジャーニーがエモすぎて涙がちょちょぎれました。みんなも読もう。

カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで

カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで

WordPress 4.9.x系で管理画面でのテーマ編集に失敗した(解決済み)

WordPress 4.9.x系で管理画面でのテーマ編集に失敗した

f:id:takamii228:20180319193448p:plain:w300

WordPressを4.9.4にアップデートしてから、管理画面からテーマファイルを更新しようとしたら以下の警告が出た。

f:id:takamii228:20180319191402p:plain

そのまま押し切って更新しようとしたら以下のエラーがでて失敗した。

f:id:takamii228:20180319191426p:plain

エラー文言は以下の通り。

日本語版

致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。SFTP を使うなど、他の手段で PHP ファイルの変更をアップロードする必要があります。

英語版

Unable to communicate back with site to check for fatal errors, so the PHP change was reverted. You will need to upload your PHP file change by some other means, such as by using SFTP.

どうやら4.9.x系で強化されてたファイルチェック周りが原因っぽい。

https://wpdocs.osdn.jp/Version_4.

安全のためのサンドボックス

真っ白な画面は非常に恐ろしいですね。WordPress 4.9はエラーがある状態で保存すると警告するので、テーマやプラグインに取り組んでいるときに白い画面を避けられるでしょう。夜はもっとよく眠れますね。

-

潜在的な危険を警告

テーマやプラグインを直接編集すると、WordPress 4.9はそれが危険なやり方だと警告します。そしてファイルを改変する前にバックアップするように勧めます。安全なルートを選べば、後から自分自身もチームと顧客もあなたに感謝することでしょう。

解決策

エラー文言でいろいろ調べたら どうやらwp-admin/includes/file.phpでファイルを更新するときに自分自身へリクエストを投げて正常終了するかどうか確認していた。

https://github.com/WordPress/WordPress/blob/master/wp-admin/includes/file.php

このリクエスト経路を見直してみたら、ポート番号がブラウザ(8000)コンテナ(8000→80)Apache(80)になってた。

WordPressのホスト名的には8000番ポートが入ってたのでApacheの8000番が空いてなくてエラーになったのが原因だった。

ブラウザ(8000)コンテナ(8000→8000)Apache(8000)になるように直したら無事更新できた。

WordPressは予約投稿や今回みたいな自分自身にリクエスト投げてきて処理をするやつが結構あるので、CDN・LB・リバプロ・IP制限などを間に挟んでいる構成ではその辺の経路がうまく通ってないとハマるので注意が必要だ。

qiita.com

よく使う開発ツールの連携方法をまとめた

お仕事で使う頻度の高い以下のツールの連携手順を備忘録としてQiitaにまとめました。

ツール一覧

連携手順

イメージ図

f:id:takamii228:20180315103656p:plain

他のツールでも似たような感じなのかな 🤔