2013年7月28日日曜日

FlexアプリをApache Antでビルドする

最近仕事でAdobe Flexを使っていて、
やっぱりFlexアプリでも本気でCI回したい!と思ってきたので、
まずはApache Antでビルドできるようにしてみました。


今どきmavenじゃない?って感じもしなくはないですが、
ちょっとチャレンジみたもののよくわからなかったので、
そこはおいおいやるとして…。

今回はこちらを参考にさせてもらいました。

環境

  • Java SE Development Kit 7u10
  • Adobe Flex SDK 4.1.0.16076A
  • Apache Ant 1.9.2

build.xmlの書き方


Flex SDK 4.1.0.16076Aには、Ant用のタスクが定義されたjarがすでに入っているので、
あとはbuild.xmlの中でこのjarを参照し、ビルドタスクを書いてあげればOKです。

サンプル:

    
        build flex application with apache ant.
    
 
    
    
    
 
    
    
    
 
    
    
        
            
            
            
            
                
                
            
        
    

これで、Flexアプリのフォルダに移動し、antを実行すればビルドできます。

C:\work>ant
Buildfile: C:\work\build.xml

main:
    [mxmlc] 設定ファイル "C:\flex_sdk_4.1.0.16076A\frameworks\flex-config.xml"
をロードしています
    [mxmlc] C:\work\bin\Test.swf (1305012 バイト)

BUILD SUCCESSFUL
Total time: 45 seconds

2013年7月27日土曜日

第11回ジオメディアサミットに行ってきた

イベントの詳細はこちら

内容はこちらによくまとまってます。


個人的に超ざっくりまとめると、これからの地図は、
  • SNSとの連携
  • シチュエーションを自動的に把握
の2つの方向に進化していきそうです。

前者は、FBで友達がアップした写真のカフェへの行き方をナビゲートしてくれるとか。

後者はある意味セマンティックWebの世界とも重なるのかもしれません。
たとえば、飲食店だったら、現在時刻をもとに、今空いてるお店だけをフィルタリングしてくれるとか。

そうすると、もう「地図アプリ」という存在ではなく、プラットフォームの一部になる、と。

まだまだ地図には可能性が秘められてますね。

2013年7月15日月曜日

July Tech Festaに行ってきた

昨日 July Tech Festa に行ってきました。
目的はChefを勉強すること!

で、お昼に受付をして、そのままお弁当をもらい、ランチセッションへ。
ランチセッションのあと、Chefのハンズオンに出ようと思ったのですが、
満員っぽかったので、予定を変えて、Jenkinsのセッションだけ聴いて帰ってきました。

ランチセッションは、ご飯食べながらだったので、メモはほとんどとらなかったのですが、
Facebookが裏でプライベートChef使ってる、というのは初めて知りました。

Jenkinsのセッションのメモはこちら(スライドはこちら)。

「Jenkinsで始める継続的デリバリーと実践の道程」

  • 継続的デリバリー(CD)では、リリースごとにフィードバックを得ることが重要。
    • ユーザーからのフィードバック
    • デリバリープロセスへのフィードバック(うまくいかなかった箇所の改善など)
  • アーキテクチャを考えることが大事。
    • デリバリーのロールバックはどうするか?
    • ダウンタイムなしでリリースするには?
      • データベースのマイグレーションは?
      • カナリアリリース(一部の人だけに先行してリリース)も検討
    • モニタリング
      • アプリケーション
      • ユーザーの行動
  • 安定的なデプロイ
    • 繰り返し実施しても同じ結果が得られること(これがいわゆる「冪等性(べきとうせい)」ってやつかな)
    • 意図した時間で実行できること。 
  • 失敗談とその対策
    • Selenium RCが時間かかりすぎた⇒Web Driverを使った
    • VBスクリプトで作った初期化処理が失敗することがあった⇒WMI(Windows Management Instrumentation)を使うようにした。
    • バッチからテストを実行すると、正常終了しないことがあった⇒Antでテストを実行するようにした。
  • 次のステップ
    • マルチ構成