タグ

cartonとperlに関するamari3のブックマーク (9)

  • Carton考2014 | おそらくはそれさえも平凡な日々

    こうするのがいいかなーと思ってる。経緯は端折って大枠だけ。Webアプリケーションプロジェクトの場合です。 cpanfileちゃんと書いてコミット 今やどこでもやってますね。scan-prereqs-cpanfileも便利です。 開発者は各自carton installでモジュールをインストール。プロジェクトごとにPerlをビルドしたりしてる場合は、cpanm --installdeps .でも別に良い。 CI環境でcpanfile.snapshotを作る CI環境は必ず以下のとおりとする。 番環境と同じアーキテクチャ 番環境と同じバージョンのPerl まっさらな状態(Globalに何のモジュールも入っていない) CIにcarton installもさせて、必要なモジュールをlocal/に入れてテストさせる。毎回サラからcarton installしてたら時間かかるので、git pull

    Carton考2014 | おそらくはそれさえも平凡な日々
  • carton化を進めています - $shibayu36->blog;

    OrePAN的なやり方でモジュール管理していたプロジェクトのcarton化を進めているので、進捗をメモしてみる。 整合性が取れるまでcarton installを進める 現状のモジュールのバージョンを完全に固定したままで、carton installしたらあまりうまく行かなかった。プロジェクトにはテストがかなりあるので、まあ全部バージョン上がっても良いとして、carton installする。テストを走らせてみて、バージョンを固定しないと動かないようなモジュールはcpanfileに記述していった。 $ carton install $ # なんかおかしかったらcpanfileを編集 $ carton install cpanfileには以下の様な形でモジュールを固定していった。 requires 'HTTP::Message' => '<= 6.02'; またinstallが終わった後はc

    carton化を進めています - $shibayu36->blog;
  • carton と古い cpanm をくみあわせたら悲しい話 - tokuhirom's blog

    https://github.com/miyagawa/carton/issues/52 perlbrew install-cpanm でインストールした cpanm にパスがとおってる状態で、carton いれてつかおうとすると、carton は ~/perl5/bin/cpanm をつかおうとしてくれちゃってこまったという話。 cpanm は既知ではないオプションをスルーするので、--showdeps をサポートしてないバージョンだと、実際にそのモジュールを -L なディレクトリにサイレントにインストールしはじめてしまいます。 まあ僕の環境がわるいという話なんだけど、はまりそうなのでバージョンチェックしてくれたらうれしいな、とおもったのでした。

    amari3
    amari3 2013/08/22
    小一時間ほどはまった。。
  • Carton 1.0 時代の Web アプリケーション開発フロー - tokuhirom's blog

    Carton 1.0 がでたところで、Web アプリケーション開発のフローを一度見直しておきたい、そんな人も多いでしょう。 そんな方のために僕のやりかたをまとめました。各社、議論の叩き台にしていただければよろしいかと存じます。 もっとも重要なことは、、 Carton を使うときに、僕が最重要だと思うことは、できるだけ番環境と開発環境の環境をそろえるということです。CPAN モジュールが番と開発でバージョンちがうから挙動がちがってた!! なんてのは時間の無駄ですし、よくないことですからね。 ですから、各開発環境と番環境をできるだけそろえることを意識していきたいとおもいます。 DarkPAN は使ってない そんなに DarkPAN 的なのを使うほど、DarkPAN 的なオレオレモジュールがないので、git submodule で管理しています。 【201308061241update】

  • Carton 1.0 at OSCON 2013

    Introducing what's new in Carton at O'Reilly Open Source Convention 2013.

    Carton 1.0 at OSCON 2013
  • carton + 開発版の cpanm で、特定のバージョンのモジュールをつかいこなす! - tokuhirom's blog

    開発版の cpanm で、META file の version range がサポートされるようになりました。 CPAN の META spec v2.0 では、version range がサポートされていて、以下のような柔軟な指定が可能となっています。 Some fields (prereq, optional_features) indicate the particular version(s) of some other module that may be required as a prerequisite. This section details the Version Range type used to provide this information. The simplest format for a Version Range is just the vers

  • 開発メモ#3 : レガシーなCGIアプリケーションのリファクタリング - naoyaのはてなダイアリー

    開発メモその3です。今回は Perl のおはなし。 何年も前に作ったウェブアプリケーションのコードを開いてみたら黒歴史なコードが出てきて憂な気分になる、そんな経験ありませんか。私はあります。ずっとそんな現実から目を背けて生きてきました。 さて、先日 Perl + CGI で書いて Apache::Registry で高速化している、実行環境が Apache に癒着した CGIアプリケーションを発見しました。おえ〜っ。一から作り直したい気持ちをぐっと堪えて、これを Plack 化したりとリフォームしていくとしましょう。その過程を以下記します。劇的ビフォア・アフター! ・・・とかは期待せず、地道な変更を積み重ねていくのがコツです。 方針 いきなりコードをがりがり書き換えていくというよりは、試行錯誤のしやすい環境に移行させていきながらリフォームを進めます。遠回りですが、結果的にその後の運用が楽

    開発メモ#3 : レガシーなCGIアプリケーションのリファクタリング - naoyaのはてなダイアリー
  • perlbrew+Carton+Amon2+Test::mysqldみたいな - As a Futurist...

    モダンな感じで perl でウェブアプリ作りたいなーと思ってほげほげしてます。メモ書き。 最近の流行りでは、system perl なんてもう使わないわけで、自分で perl を make して入れるもの。それを簡単に管理できるのがperlbrew。で、アプリ毎に perl を入れてもいいなぁとは思ったんですが、さすがにそこまで仰々しくしたくはない。でも、CPAN モジュールについてはアプリ毎に依存が無いようにしたい(あるアプリが変にバージョンアップしちゃって他が動かないとか嫌)。 どうするのがいいかなーと色々考えたんですが、そういえば miyagawa さんのCartonというのが、依存関係やバージョンも含めて CPAN モジュール管理できるということでこれをアプリ毎に使うのが正統だろうなと思ったので使ってみた。 まずは perlbrew でインストール これは説明の通り。 $ curl

    perlbrew+Carton+Amon2+Test::mysqldみたいな - As a Futurist...
    amari3
    amari3 2011/12/28
    いいまとめ
  • Carton CPAN dependency manager

    From Tomcat to Java EE, making the transition with TomEEjaxconf

    Carton CPAN dependency manager
  • 1