プログラマでありたい

おっさんになっても、プログラマでありつづけたい

構成管理

自動化した仕組みのリファクタリングも大事 〜DevLove関西主催の自動化入門講座に行って来ました #DevKan

DevLove関西主催の自動化入門講座に参加して来ました。最近、自動化といったらChefでしょうという世界にどっぷりとハマっているので、久々に聞くアプリケーションレイヤーでの自動化の話は楽しかったです。特に印象的なのは、@kazuhito_mさんのテンションの…

サーバ構築・デプロイの自動化の話。或いはChefとCapistranoの素敵な関係

最近のChefのブレイクで、サーバの構築も自動化でという潮流になっています。そんな中でチラホラ見受けられるのが、アプリのリリースもChefでという考え方です。私は微妙に違うのではないかなぁと思っているので、ちょっと考えを整理してみました。併せてCap…

第5回Jenkins勉強会に行って来ました #jenkinsstudy #jenkins

昨日、第5回Jenkins勉強会に行って来ました。初めて行ったのですが、規模も大きく内容も盛り沢山でかなり勉強になりました。今までJenkinsは余りコアな使い方をしていないので、しばらく勉強してレベルアップしたいと思います。発表は全部で3つで、コアな話…

運用視点でChef ServerかChef Solo + Knife Soloのどちらが良いか考えてみた

ChefとFabric、どちらが良いか悩んでいるうちに、Chefが一気にブレイクしてしまった今日この頃です。と言うことで、Chefを中心に今後のサーバ構築・運用について考え中です。そこでまず出てくる問題が、Chef Server+ClientとChef Solo + Knife Solo、どちら…

Amazon SNSとSQSの素敵な関係。或いは、Jenkinsからパトライトを光らせる。

以前ご紹介しましたが、Amazon SNSはプッシュ型の通知サービスで幾つかのプロトコルに通知を送ることが出来ます。一方、Amazon SQSはPull型のサービスです。真逆のサービスに見えますが、この2つを組み合わせることにより応用範囲が劇的に広がります。今回は…

JenkinsとSelenium WebDriverでUI層のテストも自動化&永続化する

思い立ったようにJenkins特集をしておりますが、今回はJenkinsとSelenium WebDriverでUI層のテストの自動化をする話です。Seleniumは面倒臭い画面のテストを自動実行してくれるツールで、出てきてからもう7〜8年がたちます。Web系の開発に携わっている人で…

Jenkinsでビルド・パイプラインを構築する

前回、Jenkinsのインストールについて書きました。今回は、Jenkinsでビルド・パイプラインを構築する話です。 ビルド・パイプラインとは? ビルド・パイプラインとは、ビルドのプロセスを分割して順番に実行していくことです。例えばビルドの流れとして、コ…

Amazon Linux AMIにRuby用にJenkinsをインストールする

HudsonもといJenkinsは昔からよく使っていますが、全くそれに関するエントリーをあげていないことに気がつきました。ということで、暫くJenkins強化週間です。まずはお決まりのインストールメモから。Java用だと一瞬で終わってしまうので、Rubyで使用するこ…

Capistranoのタスク一覧

Capistranoのタスクが、具体的にどのように動くか調べてみました。最初は下記のドキュメントを参考にしていたのですが、結局ソースを見たほうが10倍簡単に理解できました。コード中のrecipes/deploy.rb辺りを一度読むことを強くお勧めします。 Capistrano re…

今更聞けないCapistranoでリリースの自動化

ここ数年で開発の現場でAgile開発の文化や手法が、ずいぶんと取り入れられるようになってきているようです。アジャイル開発はその根底に文化が大事ですが、それを支えるツールというのも重要になってきます。ソース管理やビルド管理、テストの自動化と色々あ…

Cargo Maven2 PluginでTomcatにリモートデプロイ

前々から使いたいと思っていたCargo Maven2 Plugin。先日時間があったので設定してみました。使ってみたら思いのほか簡単に設定できました。ほとんどpom.xmlを編集するだけで対応可能です。これは中々便利です。Hudson等の構成管理でビルドからデプロイ、再…

MavenのLifecycle

時々解らなくなるのが、MavenのLifecycle。症状に対する対処をGoogleで調べて小手先で対処するより、真面目にマニュアルを見て考えた方が早道な場合が多い。GoalとLifecycleの関係がごちゃごちゃになってしまうんだよなぁ。。。 Maven Documentation Lifecyc…

Hudsonでサイトレポートでエラー

Hudsonに新規のプロジェクトの設定をしていてハマりました。下記のようなpom.xmlがありまして、mvn siteをローカルで実行すると成功します。これをHudsonに設定して、mavenへの引数をsiteにするとエラー。surefire-report:reportのフェーズで落ちているよう…

リリースの自動化

Maven Release Pluginの設定 Maven Release Plugin

Subversion + TortoiseSVN + xdocdiffでドキュメント管理

ほっておくと自然増殖してくるのが、下記のような形式のドキュメント。 **設計書.xls **設計書20080601.xls **設計書20080713.xls **設計書20080828.xlsかなりうっとおしい。もっと酷いのが、次のようなケース。 **設計書.xls **設計書(最新).xls **設計書…

tophatenarのソースコード

話題急上昇のTopHatenarはソースコードが公開されているので、ざっと読んでいました。Javaでこんなにシンプルに書けるのだと、ちょっと感動しました。ついでにMavenの設定ファイルを読んでいると、何やら便利そうなモジュール使っておられました。 Cargo Mav…

Hudson

Continuumより良いCIを探しています。今のところの候補は、Hudson。 プラグインを簡単に追加できることや、Shell、Maven、Antの起動等が柔軟に出来るところが良さげです。 暫らく試してみる予定です。リンク hudsonオフィシャルサイト? プラグイン 構成管理…

Artifactory

Maven2 http://www.jfrog.org/sites/artifactory/1.2/

WEB+DB PRESS Vol.39

構成管理の特集 バージョン管理・ビルド・リリースの各フェーズについて掘り下げている。 ビルド管理、リリース管理については、今まで情報が少なかったので重宝する。 Maven Continuumを使った社内レポジトリサーバの作成、ステージング環境とローカル開発…

sql-maven-pluginの使い方

やりたいこと 1. Continuumで、連結テストの管理をしたい 2. 連結テストの実行前に、Subversionから最新のDDLをチェックアウトして連結環境でDDLを実行する その為には 1. maven-scm-pluginを使って、Subversionからソースのチェックアウト 2. sql-maven-plu…

sql-maven-plugin

Continuumでの構成管理で、DDLの更新を管理したくなりました。MavenからDDLを実行するプラグインがあれば出来ると思い探してみたところ、sql-maven-pluginというその名もずばりなのがありました。とりあえずダウンロードして評価。 ソースからダウンロード&…