すえひろがりっっっっ! このページをアンテナに追加 RSSフィード

2014-12-07

Spotlight から素早く Things にタスクを追加する Flashlight プラグインを作った

Spotlightプラグインシステム Flashlight を使って、Things にタスクを追加する Spotlight プラグインを作りました。

https://github.com/suer/flashlight-things-plugin

環境

セットアップ

1. Flashlightインストール

2. プラグインインストールする

    $ git clone https://github.com/suer/flashlight-things-plugin.git ~/Library/FlashlightPlugins/things.bundle

3. Flashlight を有効にする

f:id:suer:20141206225639p:image:w500

タスクを追加してみる

Spotlight を起動し、th もしくは things の後ろに追加したいタスクを記入する。

f:id:suer:20141206225637p:image:w500

クイック入力のビューが表示されるので、適宜補完して保存する。

f:id:suer:20141206225638p:image

まとめ

Flashlight を使えば、Spotlight に簡単に機能を追加できて便利。

2013-07-06

Gitlab, AsakusaSatellite などの開発者向け Rails アプリを Redmine で OAuth 認証するための Omniauth プラグイン作った

Redmine・Gitlab・Jenkins のログインパスワードの管理が大変になったので OAuth 化した - すえひろがりっっっっ!RedmineOAuth プロバイダにできました。

Rails 製のクライアントアプリケーション側は Omniauth Strategy を都度 initializers 以下に設置するようにしていましたが、各アプリケーションに対して同じような作業をするのは DRY じゃないのでライブラリ化しました。

omniauth-redmine https://github.com/suer/omniauth-redmine

環境

ruby 1.9 以降

rails 3.x 以降

セットアップ

Gemfile に以下を追記します。

gem 'omniauth-redmine', :github => 'suer/omniauth-redmine'

設定

devise を利用している場合は RAILS_ROOT/config/initializers/devise.rb に

config.omniauth :redmine, "consumer key", "consumer secret", :redmine_base_url => "http://redmine.base.url/"

のように追記します。 :redmine_base_url オプションは必須項目です。

omniauth を生で扱ってる場合は RAILS_ROOT/config/initializers/omniauth.rb として以下の内容を記述します。

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :redmine, "consumer key", "consumer secret", :redmine_base_url => "http://redmine.base.url/"
end

まとめ

これで Rails 製のアプリケーションへの組み込みの敷居が下がったと思います。

以下のような開発者向けアプリケーションアカウントを共通化できるかと思います。

2011-12-21

Visual Studio で作成したセットアッププロジェクトで CI するためのコマンド

この記事は C# Advent Calendar 2011 21日目として書かれました。

前日は id:ZOETROPE さんで Reactive Extensionsでセンサプログラミング でした。



今年になって C# で真面目にプログラムを書き始めたのですが、C# でも CI したいですよね。

そこで、今まで Ubuntu でだけ使っていた JenkinsベースのCI環境を、Windows 上にも構築しました。

Java なら、最後に war とか jar とかを成果物にすればいいんですが、Windows プログラムならインストーラを作成して配布したい。

と思ってやってみると意外にはまりました。

サンプルアプリ

f:id:suer:20111218175323p:image

サンプルとしてクリックするとリア充を呪うアプリを作りました。

https://github.com/suer/Test-Setup-Project

セットアッププロジェクトを作成

ソリューション右クリックの追加>新規プロジェクトの追加からセットアッププロジェクトを作成します。

f:id:suer:20111218180835p:image

セットアッププロジェクトのファイルシステムエディタで

アプリケーションフォルダ>追加>プロジェクト出力

を選択し、Testプロジェクトの成果物をインストーラに含めます。

f:id:suer:20111218180838p:image

MSBuild.exe でビルドしてみる

CI したいのでコマンドラインでビルドできなきゃいけません。

通常通りMSBuild でビルドしてみます。*1

$ MSBuild

f:id:suer:20111218181637p:image

あらら。ワーニングが表示されました。

TestInstallerプロジェクトの中を見てみるとたしかにインストーラが生成されていません。

どうするか

devenv.com を使用します。

以下のようにコマンドを叩きます。

$ devenv.com Test.sln  /project TestInstaller\TestInstaller.vdproj /build Release

f:id:suer:20111218181638p:image

今度は成功しました。

あとは、Jenkins のビルドで、上記コマンドが発行されるようにして、生成される成果物を保存対象にすればいつでも最新のインストーラが手に入ります。

まとめ

  • MSBuild コマンドではインストーラプロジェクトをビルドできない。devenv.com コマンドを使用する。
  • 隣の人「これ、、、C# の話じゃないけど、、、」
  • セットアッププロジェクトの作成方法は以下を参考にしました

はじめてのVisual Studio 2010 (TECHNICAL MASTER 62)

あわせて読みたい

Jenkins Advent Calendar jp 2011


明日は @yone64 さんです。

よろしくお願いします。

*1:パスが通った状態でコマンドを発行しています。パスが通っていない場合は、パスを通すか、絶対パスでコマンドを指定してください。

2010-08-14

Mongrel1.1.5 のバグ(Rails2.3.8との相性問題)

もう使うことが無いと思われた mongrel_rails ですが Windows Server にセットアップする需要があったため久しぶりに動かしてみたらうまくいかない。やられてしまいました。

環境

Rails: 2.3.8

mogrel_rails: 1.1.5

OS: Windows Server 2008

ruby: 1.8.7

経緯、現象

  • mongrel_service で rails インスタンスを5つサービス化
  • Apacheからmod_proxy_balancerで負荷分散設定
  • アクセスしてみる
  • レスポンスが text/plain になってる(→解決1)
  • リダイレクトが効かない。レスポンスヘッダの Location が無い (→解決2)

解決1 レスポンスが text/plain

参考 http://d.hatena.ne.jp/kusakari/20100620/1276961317

上記サイトでは windows mongrel は大丈夫って書いてありますが、Apacheでリバースプロキシするとダメでした。

なので Apache の DefaultType を text/html にすることで逃げました。

根本的な解決ではありませんが。

上記サイトのように mongrel_rails に手を入れるのもいいでしょう。

解決2 リダイレクトが効かない

参考 http://www.peterboling.com/2010/7/25/rails-2-3-8-mongrel-1-1-5-bug

wget -S --spider でLocationが無いことを確認して気づきました。

これはひどい。

RAILS_ROOT/config/initializers/ mongrel_hack.rb

として

http://gist.github.com/471663

を保存することで解決しました。

結論

unicorn も passenger も使えない windowsはもう滅びていいよ。