Fool Pool

ハマった記

Subversion + Jenkins コミットしたタイミングでビルドする

しくみ: Jenkins: 特定のページを GET したらビルドプロセスが走るようにする。 Subversion :コミット後に Jenkins の特定のページを GET するように仕掛ける。 Jenkins でビルド・トリガの設定 設定 => ビルド・トリガ => 「SCMをポーリング」にチェック。 …

Perl + Jenkins テストの書き方

先に構築した CI 環境( Jenkins + Perl + Suvbersion で CentOS に CI 環境の構築 - Fool Pool )では「TAP::Formatter::JUnit」を使っている。モジュールの説明 TAP::Formatter::JUnit => Perl の TAP::Harness の出力結果を JUnit の出力形式に変換する TAP…

Jenkins + Perl + Suvbersion で CentOS に CI 環境の構築

jenkins, plenv インストール 以下のサイトで「plenvのインストール」まで実施Jenkins + plenv で、ブランチ毎のテスト実行環境を構築する - QiitaPerl のバージョン: 5.18.2 必要なモジュールのインストール $ su - jenkins $ cpanm Storable $ cpanm Diges…

"Expected FS format between '1' and '4'; found format '6'"

発生契機 Subversion コミット後、post-commit hook で Jenkins の Build プロセスを起動させようとした。 エラーメッセージ Warning: post-commit hook failed (exit code 8) with output: svnlook: Expected FS format between '1' and '4'; found format …

C++ 条件を満たすオブジェクトを検索する

※ 注: このエントリにあるコードを動かすには、C++11 が必要。仕事で C++ のコードを保守することになり、かれこれ5年ぶりに C++ のコードを読んだ。 そしたら、次のようなコードに行き当たって衝撃を受けた(悪い意味で)。コード1: まずいコード #include <iostream></iostream>…

Vimを開発で使うためのカスタマイズTips

vim

行番号を表示する これがないとデバッグできないし。 set number シンタックスハイライト テキストに色をつける。 syntax on set nohlsearch set cursorline オートインデント タブストップはスペース4つ分が基本。 set tabstop=4 set autoindent set expand…

正規表現の練習 -- XMLの閉じタグ補完

概要 開きタグのみ記述されたXMLコードの閉じタグを補完する。例) [入力データ] <day id="05">5日 <month>4月[出力データ] <day id="05">5日</day> <month>4月</month> 要件 タグの階層は1つのみ(入れ子は考えない) タグの属性(id属性など)はあってもよい。 実装 [sample.in] <day id="01">5日 <month>4月[tag_complete.pl] @in_tex</month></day></month></day>…

Perl で Javascript のようにプログラミングする — プロトタイプチェーンの実装

JavascriptでできることはたいていPerlでもできる。 Perl にはコードレフやハッシュリテラル記法があるので、見た目はともかく(javascriptならドット一つで済むところを、Perlだと毎回アローとブレースを書く必要がある)、機能的には Perl でも javascript…

シェルスクリプトによるデータフロープログラミング(1) -- カッコ対応チェック

概要 以前の投稿[1]で実装したカッコ対応チェックのプログラムをデータフローの処理[2]として実装する。 仕様 プログラムの第一引数にチェックするコード(テキストファイル)を指定する コードのカッコの対応がとれている場合は、「Hey, your code is perfe…

マッチした部分のハイライト表示 in Perl

概要 入力ファイル中のパターンを検索し、マッチしたパターンをハイライト表示させる実行例) [sample.in] 吾輩わがはいは猫である。名前はまだ無い。 どこで生れたかとんと見当けんとうがつかぬ。 何でも薄暗いじめじめした所でニャーニャー泣いていた事だ…

Perlでカッコの対応をチェックする

新しい言語を学ぶ上で、最も学習効率が高い方法は、失敗しながら学ぶこと。そのためには、自分で実際にコーディング課題を設定して、それをクリアしていくことがベストだ。今回は初級プログラミング定番のカッコ対応チェックを実装する。個人的なこだわりと…

Haraka -- アウトバウンド転送サーバーの設定

Harakaから直接外にメール送れるのかと思っていたが、どうやら違うらしい。 SMTPサーバには2つの役割があって、 外から送られてきたメールをインバウンドに転送する ドメイン内から来たメールを、アウトバウンドに転送する デフォルトの Haraka は 1 の機能…

Haraka -- Node.jsで実装された軽快なSMTPサーバー

Haraka(http://haraka.github.io/) は、Node.jsで実装された、SMTPサーバーのこと。 Node.jsなのでノートパソコンから動かすことができるのが便利だ。 インストール $ npm install -g haraka 使い方 $ haraka -i /path/to/haraka_project $ haraka -c /path/…

Mac OS X Lion のデフォルトのドキュメントルート

$ view /private/etc/apache2/httpd.conf 170行目: DocumentRoot "/Library/WebServer/Documents"

npmのプロキシ設定

$ npm config set proxy http://proxy.company.com:8080 $ npm config set https-proxy http://proxy.company.com:8080 設定をクリアするときはキーを削除 $ npm config delete proxy $ npm config delote https-setting

Express使ってみた。

この前はクラウド上で Node.js を使ったので、今度はローカルで構築してみる。 構築と行っても、コマンドで自動的にインストールできるのが現代のフレームワークの良い所。 Nvm のインストール Nvm -- Node Version Manager いろんなバージョンのノードを管…

Node.js on heroku -- コードについて

せっかくなので、コードについてもまとめて載せておく. (出所はここhttps://devcenter.heroku.com/articles/getting-started-with-nodejs) web.js var express = require("express"); var logfmt = require("logfmt"); var app = express(); app.use(logf…

Node.js プロジェクトを heroku で動かす

heroku 公式 Tutorial 写経の第二弾。 heroku 公式ドキュメント: https://devcenter.heroku.com/ Getting Started with Node.js on Heroku: https://devcenter.heroku.com/articles/getting-started-with-nodejs 1) Node.js のインストール(Client) ここか…

Scala + heroku 公式チュートリアルどおりにやればうまくいった。

Play のプロジェクトは heroku でうまく動かなかったが、単純な Scala のプロジェクトは heroku 上で動かせるようだ。 heroku 公式チュートリアル https://devcenter.heroku.com/articles/getting-started-with-scala このチュートリアルでは、Project ファ…

Sbt でコンパイル中に Ctrl+C で強制終了してしまったときの対処法

sbt でコンパイル中に、Ctrl+C で終了させてしまった場合、 $ sbt compile stage こんなエラーメッセージが表示される: Error: Invalid or corrupt jarfile: sbt-launch.jar これは、コンパイルで jar ファイルを生成途中にコンパイルを強制終了したため、j…

Play+ScalaのプロジェクトをHerokuにアップしようとするとハマる。。

HerokuでScalaのプロジェクトをアップできると聞いて、早速環境構築を試みた。 Play+Scalaのプロジェクトをherokuにアップするまでの手順は、この辺が参考になる。 http://www.slideshare.net/mollifier/scala-lt-18717003 プロジェクトの作成、コンパイル、…

『Node.js+Socket.IOでつくるリアルタイムWEBアプリケーション入門』 勉強会レジュメ

(株式会社ニューロマジックさん主催で 2014年3月19日に築地のオフィスで開催していただいた勉強会 http://atnd.org/events/48579 の内容をもとに、私がまとめたものです。) Node.js の特徴 即時反映 ex. ハングアウト,ニコニコ生放送 Webサーバ + アプリ…