サーバーをdockerに移動するための調べ事
サーバーを移動するのにはubuntuのパッケージで管理されているものは最低限入れておきたい。
けれども、趣味レベルだとドキュメントにしてあるわけでもなく、移行のためには過去に入れたパッケージを調べる必要がある。
パッケージ管理から手動で入れたものは以下のコマンドで調べることができる
apt-mark showmanual
NTLM認証(Windowsのドメイン認証情報をつかったシングルサインオン)
Playground(Android)のJenkins環境を整える
ハッカソンに行ってきた。
そのときにjenkinsである程度動いたかと思ったら動いておらず
いろんな罠にハマっていたらえらく日数がかかってしまいました。
セットアップ方法とハマりそうなエラーとその原因を軽くまとめようと思います
monoまわりをセットアップしていないので
運用としてはAppAssets.zipは作ってレポジトリに置くような感じになります。
環境のセットアップ
OS:ubuntu 12.04 64bit(12.10や13.04は苦労する可能性が大きいです)
githubに解説がありますがいくつか不足があるのと英語です。
https://github.com/KLab/PlaygroundOSS/blob/master/Doc/Android_Build.md
大きくは
必要なライブラリとツールのインストール
aaptがなぜか32bitバイナリーなのでia32libsとzipなどのコマンド類をいれます。
PlaygroundOSSのビルド
最終目的地です
では順番に
デ部 kitkat にいってきた
速報的に内容ざっくりまとめておきます。
Host Card Emulation APDU入門的な何か (New NFC capabilities through)
nakanishiさん
androidのNFCでNFCカードの動作をエミュレーション出きる。
今までのNFCは通信の処理とカードリーダーとして動いていたがカードをエミュレーションすることができるようになった。
New ways to build beautiful apps
korodoroidさん
システムが表示しているUIを半透明にしたりできるようになった。
シーンとトランジションを設定することでアクティビティ遷移時のアニメーションを簡単につけることができる。
没入型のUIで通知機能を横取りできるようになった。
TYPE_STEP_COUNTERとTYPE_STEP_DETECTORについて (Low-power sensors)
awaさん
センサーの種類として歩数計の追加。今までよりも簡単
万歩計は電源がONになってからずっととっているので差分を集積するなどが必要。(口頭)
センサーバッチング、バックグラウンドでも動く。
OnSensorChanged()が呼ばれていないと言うバグがある。31/68機種が動かない。
Tools for analyzing memory use
95さん
メモリーを監視するツールが増えた
プロセスの起動時間などもとれるので一晩くらい置いてから表示させるとよい。
monkeyなどで一晩中動かしながらメモリーの使用量をCVSでプロットしたりとかできるのでいいかもしれません。
4.4でなおったバグ (その他)
yyaammaaさん
アクションバーでオーバーレイしたときに影が出ないのがなおったよ。
Storage access frameworkでGCS (Storage access framework)
masuiさん
アプリケーションのデータの共有を一元化することができる。
いままでだとコンテントプロバイダを作ってピッカーをアプリごとに実装しないといけないのだけどほとんど用意されていない。
このフレームワークを使うことによってその辺の問題点を解消する。
ただし、4.4以降になってしまうので古いシステム上で同じ事をする方法がドキュメントになるよ。
Sensor Batching とか (Low-power sensors)
mhidakaさん
パーミッションが増えましたよ。
ショートカット作るのにパーミッションが必要になりました。
デバイスフィーチャーも増えました。
OK Google (その他)
atsushienoさん
OK googleをどうやったら自分でも実装できる?
その実装ができるか調べましたが僕の力では無理でした。
というお話。
kitcatのAPIドキュメントを見てみたけど関係なさそう…
他の人が作っているカモと思って探してみたが何か違った。
とりあえずHomeLauncher3とかがAOSPに入ってくるのを待つことにします。
変わったネクサス5がきたよ
zakiさん
まずタッチパネルが反応しないんだけど!
フリーダイヤルで日本語のオペレータとファクトリーリセットしたけどダメでした。
USBマウスをつかって動かしてみました。
PCをつないでOK押せない!!
BTのMAC用のパッドがあったので使ってみた。
5点タッチにも反応したよ!
android studio(のgradleの部分を)動かしてみた
6/2 14:05 タイポで間違った情報を載せていたので修正しました
android studioを起動しようとするとしょっぱなからエラーをお見舞いされた
Build file build.gradle line: 9 A problem occurred evaluating project . A problem occurred evaluating project . Could not create plugin of type 'AppPlugin'. org/gradle/tooling/provider/model/ToolingModelBuilderRegistry org.gradle.tooling.provider.model.ToolingModelBuilderRegistry
これは gradle が古い奴がインストールされているとおこるようで
さっそくgradle-1.6にアップデート。
このようすだと gradle のみでビルドできるのではないかと思ったのでやってみた。
$ gradle build The TaskContainer.add() method has been deprecated and is scheduled to be removed in Gradle 2.0. Please use the create() method instead. :MyApplication3:prepareDebugDependencies :MyApplication3:compileDebugAidl :MyApplication3:generateDebugBuildConfig :MyApplication3:mergeDebugAssets :MyApplication3:compileDebugRenderscript :MyApplication3:mergeDebugResources :MyApplication3:processDebugManifest :MyApplication3:processDebugResources :MyApplication3:compileDebug :MyApplication3:dexDebug :MyApplication3:processDebugJavaRes UP-TO-DATE :MyApplication3:validateDebugSigning :MyApplication3:packageDebug :MyApplication3:assembleDebug :MyApplication3:prepareReleaseDependencies :MyApplication3:compileReleaseAidl :MyApplication3:generateReleaseBuildConfig :MyApplication3:mergeReleaseAssets :MyApplication3:compileReleaseRenderscript :MyApplication3:mergeReleaseResources :MyApplication3:processReleaseManifest :MyApplication3:processReleaseResources :MyApplication3:compileRelease :MyApplication3:dexRelease :MyApplication3:processReleaseJavaRes UP-TO-DATE :MyApplication3:packageRelease :MyApplication3:assembleRelease :MyApplication3:assemble :MyApplication3:check UP-TO-DATE :MyApplication3:build BUILD SUCCESSFUL Total time: 16.609 secs $ ls MyApplication3/build/apk MyApplication3-debug-unaligned.apk MyApplication3-release-unsigned.apk
成功した。やったねたえちゃん。ツールが増えるよ(白目
apkはモジュールの下のbuild/apkのディレクトリ内に作成されていました。
しかしタスクに何があるかは見えないようでエラー吐かれてしまった。
タイポでした。タスクの一覧は以下のようになっているようです。
ちょっとしたら翻訳して見ようと思います。
$ gradle tasks The TaskContainer.add() method has been deprecated and is scheduled to be removed in Gradle 2.0. Please use the create() method instead. :tasks ------------------------------------------------------------ All tasks runnable from root project ------------------------------------------------------------ Android tasks ------------- androidDependencies - Displays the Android dependencies of the project signingReport - Displays the signing info for each variant Build tasks ----------- assemble - Assembles all variants of all applications and secondary packages. assembleDebug - Assembles all Debug builds assembleRelease - Assembles all Release builds assembleTest - Assembles the Test build for the Debug build build - Assembles and tests this project. buildDependents - Assembles and tests this project and all projects that depend on it. buildNeeded - Assembles and tests this project and all projects it depends on. clean - Deletes the build directory. Build Setup tasks ----------------- setupBuild - Initializes a new Gradle build. [incubating] Help tasks ---------- dependencies - Displays all dependencies declared in root project 'MyApplication3Project'. dependencyInsight - Displays the insight into a specific dependency in root project 'MyApplication3Project'. help - Displays a help message projects - Displays the sub-projects of root project 'MyApplication3Project'. properties - Displays the properties of root project 'MyApplication3Project'. tasks - Displays the tasks runnable from root project 'MyApplication3Project' (some of the displayed tasks may belong to subprojects). Install tasks ------------- installDebug - Installs the Debug build installTest - Installs the Test build for the Debug build uninstallAll - Uninstall all applications. uninstallDebug - Uninstalls the Debug build uninstallRelease - Uninstalls the Release build uninstallTest - Uninstalls the Test build for the Debug build Verification tasks ------------------ check - Runs all checks. connectedCheck - Runs all device checks on currently connected devices. connectedInstrumentTest - Installs and runs the tests for Build 'Debug' on connected devices. deviceCheck - Runs all device checks using Device Providers and Test Servers. To see all tasks and more detail, run with --all. BUILD SUCCESSFUL Total time: 7.517 secs
gradleだけでサインした状態でリリースできるのかとかよくわかりませんでしたが
signingコマンドがあるのでgradleだけでサインした状態でリリースできそうです。
CIをするためにantを別に生成するなどの手間もへりそうです、
これからも期待しながら見て行こうと思います!!
jenkinsの新しいプラグインを紹介 (4/5〜4/11)
仕事の忙しさにかまけて忘れてました。
毎週かなり多くのプラグインが生まれていますね。
UpdateSites Manager plugin - Jenkins - Jenkins Wiki
Jenkinsの管理画面から、Jenkinsがプラグインのダウンロード元にするアップデートサイトを追加・変更・削除できるようになります。
以下の様な事情でJenkinsの公式アップデートサイト以外のアップデートサイトを使う場合に利用することを想定しています。
Elastic Axis - Jenkins - Jenkins Wiki
マルチコンフィギュレーションジョブのスケーラビリティを向上させ管理しやすくするプラグインです。
複数のマシンに同一ジョブを適用するためのプラグインです。
rhnpush Plugin - Jenkins - Jenkins Wiki
RHNで構成されたサーバーに対してRPMをインストールするためのビルドステップを追加するプラグインです。
エンタープライズ向けオープンソース・テクノロジー
WIX Toolset Plugin - Jenkins - Jenkins Wiki
windowsのインストーラー作成ツールであるWIXを実行するためのプラグインです。
windows上でのみ動作します。
WiX Toolset
JobRequeue-Plugin - Jenkins - Jenkins Wiki
スレーブ環境でジョブが失敗した場合のリトライを行うように設定するプラグインです。
GitHub - jenkinsci/sparkle-appcast-plugin: Jenkins plugin to create Sparkle Appcasts.
ソフトウェアアップデートフレームワークであるsparkleのためにappcast.rssファイルを生成するためのプラグインです。
githubに解説があります。
wikiはあるけれども何も書いていません。