読者です 読者をやめる 読者になる 読者になる

Engineer as a Lifestyle @tenkoma

tenkoma's testing blog

PHP BLT #7 でGitLab Review Apps の話でLTしました

2017/5/22 に株式会社メルカリで開催されたPHP BLT #7でLTしてきました。PHP BLT初参加です。

とりあえず参加登録後に過去の発表資料をチェックしたら、ほとんどPHPの話だったので、そういう縛りがあるのかーPHPネタは難しいな、と思ったのですが杞憂でした。 最近取り組んでいるGitLab CI を使った自動化の例として、レビュー環境を自動生成する話の(私が勉強中の)現状について紹介しました。

発表内容は、GItLab CI + Review Appsの簡単な紹介と .gitlab-ci.yml の設定例です。

CakePHPで自作したデプロイツール(gitリポジトリURLを指定すれば「デプロイ」ボタンを押すだけでレビュー環境が更新される、HTTP認証も設定できるというもの)を運用しているのですが、gitコマンドまわりでバグがあったり、push時に自動でデプロイする機能がまだなく使い勝手がまだまだです。しかし、Review Appsならそのあたりをイイ感じに解決できそう、という感想です。

LT中にでてくる唯一のPHP要素、 .htdigest ファイルを生成するワンライナーは以下の通りです。

php -r 'printf("%s:%s:%s\n", $argv[1], $argv[2], md5("{$argv[1]}:{$argv[2]}:{$argv[3]}"));' $HTTP_USER "$HTTP_REALM" $HTTP_PASSWORD >> $SRC_PUBLIC_DIR/.htdigest

紹介した設定ファイルのコードは以下で参照できます。

GitLabは使い方を覚えれば、できる自動化が増えていって楽しいですね。

プルリクメモ 4/15

CakePHP Cookbook修正のプルリクエスト

2年前に追加された説明を削除してシンプルにするものだったので丁寧な説明を心がけた。 検証もして、8時間くらいかかった。

説明は以下の順で構成した。

  • 何をするプルリクかを1行で説明
  • あらすじ、何が問題か
  • どう改善したか
    • 設定の記述を1つにまとめた。検証したらまとめられることがわかった。
    • この節はPretty URLを実現するためのRewrite設定の説明なので、直接的な部分だけ先に明示した。
  • 検証結果・メモ

nginx の設定で試行錯誤したので勉強になった。

第112回 PHP勉強会@東京 LT発表「CakePHP プロジェクトにプルリクを送り続けた僕は」

PHP勉強会では初LT! ここ半年でCakePHPプロジェクトに送ってるプルリクエストについて話し、何でプルリクエストしてるんだろう、と考えてみました。

Windows 7 on Bootcamp で Wifiが使えない(解決を断念?)

WiMAXWifiルーターを使っていて、USBで接続した時は使えるのにWifi経由で利用できない、ということがあった。 どうもWifi のドライバをインストールしてなかったらしい

前提条件

解決策

ディスクユーティリティで1GB以上の容量があるUSBメモリをFATでフォーマットする 以下のURLから、マシンに合ったBoot Camp Support Softwareを見つけ出し、USBメモリに展開する

アップル - サポート - ダウンロード

僕のは Macbook Air 13-inch, Late 2010なので Boot Camp Support Software 4.0.4033 みたい

ダウンロードしたzipファイルを展開してUSBメモリのルートにコピーする

f:id:tenkoma:20131123174808p:plain

こんな感じになる。再起動して、Windows 7を起動する

setup.exeを実行して表示されるメニューで修復を実行する。再起動を促されるので再起動する

・・・ってここまでやってみたけど結局Wifi使えず。 BootCampで使えないと困るほどでもないので、断念しようと思う。

Macのアプリをクラッシュさせるやつ

ブラクラ作れるかも?と思ったのでやってみた。(下のボタンをクリックするとMacのSafariChromeでクラッシュします。Mac OS X 10.8.2で確認)

※注意※ 以下のコードは不具合の影響を調べることを目的としたものであり、コンピュータやその利用者に被害を与えることを意図したものではありません。

window.prompt() を使うことで簡単にクラッシュできますね。またFirefoxはクラッシュしません。

ブラクラ作成がはかどる…