タグ

ブックマーク / qiita.com/ngyuki (25)

  • PHPUnit 3.7~4.3 で追加された機能 - Qiita

    PhpStorm 7 が PHPUnit 4 をサポートしていなかったので少し前まで PHPUnit は 3.7 を使っていましたが、9 月に PhpStorm 8 がリリースされ、PHPUnit 4 も動作するようになったので、そろそろ使っていこうかと思います。 なお、PhpStorm 7 で PHPUnit 4 が使えなかったのは次の理由だそうです。 PHPUnit マニュアル – 付録D アップグレード PHPUnit_Framework_TestListener インターフェイスに addRiskyTest() が追加されました。 PHPUnit_Framework_TestListener インターフェイスを実装するクラスは、新たにこのメソッドを実装する必要があります。 たとえば PHPStorm 7 で PHPUnit 4 が使えないのは、これが原因です。 PHPUnit 3.

    PHPUnit 3.7~4.3 で追加された機能 - Qiita
    kasumani
    kasumani 2014/12/14
    PHPUnit 3.7~4.3 で追加された機能 PhpStorm 7 が PHPUnit 4 をサポートしていなかったので少し前まで PHPUnit は 3.7 を使っていましたが、9 月に PhpStorm 8 がリリースされ、PHPUnit 4 も動作するようになったので、そろそろ使っていこうか
  • MySQL の GRANT にはワイルドカードが使える・・・意図せずに - Qiita

    $ mysql -u ore -e 'create database oreore' $ mysql -u ore -e 'show databases' +--------------------+ | Database | +--------------------+ | information_schema | | oreore | +--------------------+ $ mysql -u ore -e 'drop database oreore' $ mysql -u ore -e 'show databases' +--------------------+ | Database | +--------------------+ | information_schema | +--------------------+

    MySQL の GRANT にはワイルドカードが使える・・・意図せずに - Qiita
    kasumani
    kasumani 2014/12/09
    MySQL の GRANT にはワイルドカードが使える・・・意図せずに データベースへの GRANT があると、データベースそのものを作成したり削除したりもできます。 ワイルドカードと言っても、これ → *.* ← のことではありません。
  • cloud-init を None データソースで動作確認する - Qiita

    AWS の CentOS 6 に cloud-init をインストールしていろいろ試してみようと思ったのですが、動きを確認するためにいちいちインスタンスを起動していたのではたまらんわーっと思いました。 そこで、None データソースを使ってローカルの環境で簡単に確認できるようにしてみました。 http://cloudinit.readthedocs.org/en/latest/topics/datasources.html#fallback-none インストール yum でインストールします。 cloud.cfg datasource_list で None データソースだけを指定し、datasource でメタデータとユーザーデータを指定します。 ユーザーデータは #include で /etc/cloud/user-data を読み込むようにします。 cloud_***_module

    cloud-init を None データソースで動作確認する - Qiita
    kasumani
    kasumani 2014/11/17
    cloud-init を None データソースで動作確認する AWS の CentOS 6 に cloud-init をインストールしていろいろ試してみようと思ったのですが、動きを確認するためにいちいちインスタンスを起動していたのではたまらんわーっと思いま
  • mod_php だと .htaccess の SetEnv は環境変数にならない - Qiita

    <?php var_dump(getenv('http_proxy')); // "http://192.0.2.123:8080" var_dump(trim(`env|grep http_proxy`)); // "" putenv('http_proxy=http://192.0.2.123:8080'); var_dump(getenv('http_proxy')); // "http://192.0.2.123:8080" var_dump(trim(`env|grep http_proxy`)); // "http_proxy=http://192.0.2.123:8080" putenv より前の場合、.htaccess の SetEnv の値が getenv なら取得できるにも関わらず /usr/bin/env の結果に http_proxy が含まれません。 putenv

    mod_php だと .htaccess の SetEnv は環境変数にならない - Qiita
    kasumani
    kasumani 2014/10/25
    mod_php だと .htaccess の SetEnv は環境変数にならない Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket October 25, 2014 at 01:18AM via IFTTT
  • composer で入れた phpunit で少し楽をする - Qiita

    最近は phpunit も composer で入れるのが流行っているらしいです。 Before composer で phpunit を入れると(標準では)vendor/bin/phpunit に置かれるので次のように実行します。 テストが置いているディレクトリは phpunit.xml.dist や phpunit.xml に記述しているのでこれだけで OK です。 最近はプロジェクトルートに置くファイルが多くなってきたので phpunit.xml はプロジェクト直下ではなく tests/ ディレクトリに置くのがマイブームです。 なので次のようになります。

    composer で入れた phpunit で少し楽をする - Qiita
    kasumani
    kasumani 2014/10/23
    composer で入れた phpunit で少し楽をする テストが置いているディレクトリは phpunit.xml.dist や phpunit.xml に記述しているのでこれだけで OK です。 最近はプロジェクトルートに置くファイルが多くなってきたので phpunit. Tags: ifttt,
  • インフラエンジニアじゃないけど H/W の情報を見るために稀に使うコマンド集 - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    インフラエンジニアじゃないけど H/W の情報を見るために稀に使うコマンド集 - Qiita
    kasumani
    kasumani 2014/10/23
    インフラエンジニアじゃないけど H/W の情報を見るために稀に使うコマンド集 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket October 23, 2014 at 09:45AM via IFTTT
  • AWS CLI の --query で複数のタグでインスタンスを検索 - Qiita

    例えば Name=hoge かつ Role=fuga のインスタンスの ID と AZ を表示する場合。 見やすくするために無理やり改行を入れています。 aws ec2 describe-instances --query 'Reservations[].Instances[] '\ '| [? Tags[?Key==`Name`][] | [?Value==`hoge`] ] '\ '| [? Tags[?Key==`Role`][] | [?Value==`fuga`] ] '\ '| [][InstanceId,Placement.AvailabilityZone]' aws ec2 describe-instances --query "$(echo 'Reservations[].Instances[] | [? Tags[?Key==`Name`][] | [?Value==`

    AWS CLI の --query で複数のタグでインスタンスを検索 - Qiita
    kasumani
    kasumani 2014/10/22
    AWS CLI の --query で複数のタグでインスタンスを検索 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket October 22, 2014 at 08:43PM via IFTTT
  • Composer でパッケージの削除は composer remove が良いと思ったらそうでも無かった - Qiita

    Composer で複数のパッケージをインストールしていて、開発を進めるうちにそれらの一部が不要になること、あると思います。そんなとき、どうやって不要になったパッケージを削除しているでしょうか? 幾つか方法はあると思うので、それらの動作を確認してみます。 まず、実験のために composer.json を a b c d の 4 つのディレクトリに作成します。それぞれ下記の内容です。

    Composer でパッケージの削除は composer remove が良いと思ったらそうでも無かった - Qiita
    kasumani
    kasumani 2014/09/28
    Composer でパッケージの削除は composer remove が良いと思ったらそうでも無かった Composer で複数のパッケージをインストールしていて、開発を進めるうちにそれらの一部が不要になること、あると思います。そんなとき、どうや
  • ssh などの引数がコマンドとして解釈されるコマンドに文字列を渡す - Qiita

    次のように書くと ssh には $HOME という文字が渡されます。が、ssh はシェル経由でコマンドを実行するのでリモート側で環境変数が展開されます。

    ssh などの引数がコマンドとして解釈されるコマンドに文字列を渡す - Qiita
    kasumani
    kasumani 2014/09/26
    ssh などの引数がコマンドとして解釈されるコマンドに文字列を渡す 次のように書くと ssh には $HOME という文字が渡されます。が、ssh はシェル経由でコマンドを実行するのでリモート側で環境変数が展開されます。 Tags: ifttt
  • 続:ParaTest と Docker で PHPUnit を並列実行する試み - Qiita

    少し前に ParaTest と Docker を使って PHPUnit を並列実行してみたのですが、 ParaTest と DockerPHPUnit を並列実行する試み - Qiita 1プロセスで実行したときよりも十倍近く遅くなりました。 改善点として次のようなものを考えていました。 ParaTest を弄って Docker コンテナが並列数だけしか起動しないようにする RAID0 とかでディスクの I/O を良くする もう少しマシな性能(CPU やメモリ)のサーバでやる 今のご時世 AWS などの IaaS を使えばそれなりの性能のサーバがすぐに使えるので AWS EC2 で試してみました。 並列にテストを実行するためのスクリプト 前回は phpunit コマンドのラッパーでコンテナの起動と削除を行ったため、コンテナの起動と削除が何度も繰り返されてとても時間がかかっていました。

    続:ParaTest と Docker で PHPUnit を並列実行する試み - Qiita
    kasumani
    kasumani 2014/09/25
    続:ParaTest と Docker で PHPUnit を並列実行する試み 今のご時世 AWS などの IaaS を使えばそれなりの性能のサーバがすぐに使えるので AWS EC2 で試してみました。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket September 25, 2014 at
  • runkit で time() 関数をアレするやつ - Qiita

    PHP の暗黒面に堕ちました。 . . . time() 関数をベタ書きしているコードをテストするために sleep() して time() 関数の戻り値を無理やり制御している箇所があり、無駄にテストの実行時間が増えていたのでこれをどうにかするために CI 環境に runkit をインストールしました。誰だこんなコード書いたのは、俺か。 runkit のインストール PHP は CentOS 6 の PHP-5.3.3 なのですが、epel から yum install php-pecl-runkit で入れるとセグりまくりました。 pecl install runkit-0.9 で入れようとすると今度はビルドが通りませんでした。 GitHub からソースを持ってきたら、ビルドも通るしセグりもしませんでした。 $ git clone https://github.com/zenovich/

    runkit で time() 関数をアレするやつ - Qiita
    kasumani
    kasumani 2014/09/15
    runkit で time() 関数をアレするやつ PHP の暗黒面に堕ちました。 time() 関数をベタ書きしているコードをテストするために sleep() して time() 関数の戻り値を無理やり制御している箇所があり、無駄にテストの実行時間が増えてい
  • MySQL が range じゃなくて ref を選択するのが解せない - Qiita

    drop table if exists t; create table t ( id int not null primary key, no int not null, str text ); time seq 10000000 | mysql test -e " load data local infile '/dev/stdin' into table t (@seq) set id = @seq, no = floor(rand() * 3), str = repeat('x', 100) "

    MySQL が range じゃなくて ref を選択するのが解せない - Qiita
    kasumani
    kasumani 2014/08/27
    MySQL が range じゃなくて ref を選択するのが解せない 次のようなテーブルがあったとします。 drop table if exists t; create table t ( id int not null primary key, no int not null, str text ); 1000 万件ぐらい適当なデータを突っ込みます。 time seq 1000
  • C++のラムダ式の参照キャプチャは危険がいっぱい? - Qiita

    function get_func() { var val=0; return function(){ return ++val; }; } var a = get_func(); var b = get_func(); console.log(a()); // 1 console.log(a()); // 2 console.log(b()); // 1 console.log(b()); // 2 #include <iostream> #include <functional> std::function<int()> get_func() { int val = 0; return [&]() -> int { return ++val; }; } int main() { auto a = get_func(); auto b = get_func(); std::cout <<

    C++のラムダ式の参照キャプチャは危険がいっぱい? - Qiita
    kasumani
    kasumani 2014/08/06
    C++のラムダ式の参照キャプチャは危険がいっぱい? クロージャーじゃないので get_func() 関数を抜けた時点で val は無くなっており、ラムダ式が参照キャプチャしている val は不正な位置を指しているからです。 Tags: ifttt, kasum
  • CentOS 7 で SSH VPN - Qiita

    いつか役にたつかもしれないので CentOS 7 で SSH VPN をしてみます。 SSH VPN とは OpenSSH で作る簡易な VPN です。ググると情報は色々ありますが、iproute2 や NetworkManager での設定方法はあまり見つかりませんでした。 構成 hostB と hostC と hostX が同じネットワークに属しています hostA からはグローバルの 9876 ポートを指定して hostX に ssh できます hostA から hostX を経由して hostB に ssh できます hostA から hostB に ssh で VPN を張って hostA から hostC に透過的にアクセスします 例えば次のような IP アドレスだとします。 hostA 192.168.8.123 ※VPN の端点 hostB 192.168.0.100 ※V

    CentOS 7 で SSH VPN - Qiita
    kasumani
    kasumani 2014/07/27
    CentOS 7 で SSH VPN SSH VPN とは OpenSSH で作る簡易な VPN です。ググると情報は色々ありますが、iproute2 や NetworkManager での設定方法はあまり見つかりませんでした。 例えば次のような IP アドレスだとします。 Tags: ifttt, kasumaniのス
  • インターネットに直接出れないホストで yum する方法 - Qiita

    +-----+ | gw | +--+--+ | +---+---+ | +-------+ +-------+ | hostA |--+--| hostB |----| hostC | +-------+ +-------+ +-------+ hostA からは直接インターネットに出れる hostC からは直接インターネットには出られない hostA から hostC には hostB を経由しなければアクセスできない この状況で hostC で yum する方法。 ProxyCommand hostA から hostC へは ProxyCommand を使えば簡単に接続できます。ググるといろいろ情報は出てきます。

    インターネットに直接出れないホストで yum する方法 - Qiita
    kasumani
    kasumani 2014/07/23
    インターネットに直接出れないホストで yum する方法 まれによくある次のような構成。 +-----+ | gw | +--+--+ | +---+---+ | +-------+ +-------+ | hostA |--+--| hostB |----| hostC | +-------+ +-------+ +-------+ hostA からは直接インターネットに出れる hos
  • Bootstrap で Modal の中身だけ印刷 - Qiita

    <!doctype html> <html> <head> <meta charset="utf-8"> <title></title> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"> <link rel="stylesheet" href="style.css"> <style> footer { margin: 20px; padding: 10px; border-top: 1px solid #cccccc; text-align: center; } </style> </head> <body> <nav class="navbar navbar-default"> <div class="container-fluid"> <div c

    Bootstrap で Modal の中身だけ印刷 - Qiita
    kasumani
    kasumani 2014/07/13
    Bootstrap で Modal の中身だけ印刷 Bootstrap で Modal が表示されているときは body に .modal-open というクラスが追加されます。 なので、次のように . Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket July 13, 2014 at 02:05AM via IFTTT
  • LTSV から特定の項目を特定の並び順で TSV にするワンライナー - Qiita

    ワンライナーと言っても ruby ですが。 ltsv.log から ipaddr と status と time をこの並び順で取り出して TSV にする。 $ cat ltsv.log|ruby -F"\t" -nae '$F.map!{|v|v.split":",2};puts %w{ipaddr status time}.map{|v|($F.assoc(v)||[])[1]}.join"\t"'

    LTSV から特定の項目を特定の並び順で TSV にするワンライナー - Qiita
    kasumani
    kasumani 2014/06/19
    LTSV から特定の項目を特定の並び順で TSV にするワンライナー 2 ストック 0 コメント この投稿をストックする ワンライナーと言っても ruby ですが。 ltsv.log から ipaddr と status と time をこの並び順で取り出して TSV にする。 $ ca
  • プロセスの多重起動をアドバイザリロックで防止する for PHP - Qiita

    <?php function single() { static $fp; $fp = fopen(__FILE__, "r"); if (is_resource($fp) == false) { throw new \RuntimeException("unable open self"); } $wouldBlock = false; if (flock($fp, LOCK_EX|LOCK_NB, $wouldBlock) == false) { if ($wouldBlock) { return false; } throw new \RuntimeException("unable lock self"); } return true; } if (single() == false) { echo "process is running.\n"; exit(); } $pid =

    プロセスの多重起動をアドバイザリロックで防止する for PHP - Qiita
    kasumani
    kasumani 2014/06/03
    プロセスの多重起動をアドバイザリロックで防止する for PHP この方法なら後処理のことはなにも考えなくてもカーネルがよきに計らってくれます。kill -KILL $pid で殺されても大丈夫です。 Tags: ifttt, kasumaniのストックした投稿
  • PHP で Server::Starter を使ってみた - Qiita

    さっき Server::Starter というものを知ったので PHP でも使ってみました(そもそも PHP で TCP サーバなんて作らないというツッコミは無しの方向でお願いしますm(__)m)。 私家版のgoでホットデプロイの仕組み、もしくは椅子もマサカリも投げられたくないときの気遣い : D-7 <altijd in beweging> Server::Starterから学ぶhot deployの仕組み - $shibayu36->blog; Server::Starter をインストール Server::Starter をインストールします。 自分でも、いつ、どうやって入れたのか覚えていないのですが cpanm というコマンドが使えたので cpanm で入れました。 Test::SharedFork は、理由はわかりませんがこいつがいないと Server::Starter のインス

    PHP で Server::Starter を使ってみた - Qiita
    kasumani
    kasumani 2014/05/03
    PHP で Server::Starter を使ってみた さっき Server::Starter というものを知ったので PHP でも使ってみました(そもそも PHP で TCP サーバなんて作らないというツッコミは無しの方向でお願いしますm(__)m)。 Tags: ifttt, kasumaniのストッ
  • PHP で freeze で Immutable になるオブジェクト - Qiita

    オブジェクトの作成時は可変で freeze で不変になる 実際には同じプロパティを持つ新しいオブジェクトを作成している 不変オブジェクトはできるだけピュアなオブジェクトにする 余計なプロパティを持たせなくない 例えば $freezed みたいなフラグとか DocComment を書けば入力補完を効かせられる __get と __set 以外のマジックメソッドは定義していない ただの手抜き <?php trait ImmutableTrait { public function __get($name) { if (!property_exists($this, $name)) { $class = get_class($this); throw new \LogicException("Undefined property \"$class::$name\"."); } return $t

    PHP で freeze で Immutable になるオブジェクト - Qiita
    kasumani
    kasumani 2014/04/28
    PHP で freeze で Immutable になるオブジェクト 3 ストック 0 コメント この投稿をストックする PHP で freeze で Immutable になるオブジェクト オブジェクトの作成時は可変で freeze で不変になる 実際には同じプロパティを持つ新しい