Meetup 2016-10

From Pitagora-Galaxy Wiki
Jump to: navigation, search

Main Page >> Events >>

主旨

  1. ツールやワークフローを持ち寄って仮想マシンに加える (図)
    • 実際には、加えるための手順を作って、仮想マシンの管理者と共有する
    • 同時に、Wiki に新しいツールやワークフローの説明を記載する
  2. プロジェクトを改善するためのフィードバックを収集する
    • 解析プラットフォーム管理に役立つ技術ネタを共有する
    • Galaxy 以外のソフトウェアを扱っていく可能性について議論する

スケジュール

  • 日時: 2016年10月14日(金)
  • 場所: 先端研4号館4階セミナールーム
  • 連絡先: 山中 yamanaka [at] genome.rcast.u-tokyo.ac.jp
  • Skype ID:pitagora-network(最新バージョンのSkypeの使用を推奨)
10:00-10:15 今日の作業確認
10:15-18:00 ツールの開発
18:00-18:30 今日のまとめ (Skype 参加可)
18:30-20:30 有識者会議

内容

全体
山中
  • ずっとこの Wiki の Main Page のアイコンの配置(ちょっと間隔が違った)とか色(ちょっと灰色っぽいのがあった)とか気になっていたのが修正できました。
大田
  • Docker化した FaQC を toolshed に入れる
    • 入れない。GitHubで管理します。
    • https://github.com/inutano/FaQCs
    • tool xml を編集して実行確認
      • Cannot write /home/galaxy/galaxy/database/tmp/fastqCount.txt
      • うぎゃー
    • Planemo とどう付き合うか
      • toolshed に入れない、新しいgalaxyで動くかどうかのtestのために使う
      • tool xml の validation に使えることを確認
      • docker run -v `pwd`:/export bgruening/planemo lint /export/mytool.xml
 [galaxy@localhost faqcs]$ sudo docker run -v `pwd`:/export bgruening/planemo lint /export/FaQCs_docker.xml
 Linting tool /export/FaQCs_docker.xml
 Failed linting
 Applying linter tests... WARNING
 .. WARNING: No tests found, most tools should define test cases.
 .. WARNING: No valid test(s) found.
 Applying linter stdio... CHECK
 .. INFO: No stdio definition found, tool will determine an error from stderr.
 Applying linter output... WARNING
 .. WARNING: Tool data output doesn't define an output format.
 .. INFO: 7 outputs found.
 Applying linter inputs... CHECK
 .. INFO: Found 18 input parameters.
 Applying linter help... CHECK
 .. CHECK: Tool contains help section.
 .. CHECK: Help contains valid reStructuredText.
 Applying linter general... CHECK
 .. CHECK: Tool defines a version [1.3.3].
 .. CHECK: Tool defines a name [Fastq QC].
 .. CHECK: Tool defines an id [FaQCs_docker].
 Applying linter command... CHECK
 .. INFO: Tool contains a command.
 Applying linter citations... WARNING
 .. WARNING: No citations found, consider adding citations to your tool.
  • DBCLS AWS で動いている各種ピタゴラサーバの整理
    • download.pitagora-galaxy.org を S3 に移したい
    • try.pitagora-galaxy.org を DBCLSのサーバに移したい
      • ファイルシステムのサイズが問題?とかでVMがロードできない問題を解決する、とりあえずファイルサイズ変えたVMを作る
  • 門田さんに頼まれてる Galaxy の使い方原稿を書かねばならない
望月
 Genotype Imputation ワークフローは完了した。(docker 化はしていない)
 docker 化していくために、遺伝研のgalaxy のバージョンをアップする。
 galaxy の立ち上げはできたけど、ボタン類が表示されない。
 お知らせ:1月にPlant and Animal Genome Conference でポスター発表をしてきます。
                (http://www.intlpag.org)
                 毎年、Galaxy, iPlant のセッションもあるので、Pitagora 様の宣伝も意味があるかと思います。
                 何か宣伝用のフライヤーがあれば、配布します。ありますか?
新海
  • やりかけの気になる部分の対処、まだ直したい部分はあるが一応ちゃんと載せて動く(筈)
    • メモ:lastのmaf-convertはmaf→sam変換の際に、レファレンスが「chr1,chr2,chr3...」か、「1,2,3...」かの違いでMT(chrM)の、ヘッダ部分のソート順を変えてしまう。

多分本来はそれでいいんだろうけど、自分でインデックスを作ってた場合は並び替えが必要な場合もある(PicardのReordersamで修正)。

  • 山中さんに移植の方針を確認
    • 移植手順をドキュメントにまとめつつ実際はGitHubで。
  • とりあえず最新版にツールを入れつつ、動作確認と手順のメモ作成
  • 次回までに移植ドキュメントはちゃんと作っておきたい
    • あと今更ながらGitHubも勉強してきます…
中岡
  • 12:00 -- 16:00 来客と 17:30 から調布で応用数理学会の編集委員 (またしてもバッティング) のため、少し顔を出せれば出します。すいません。
那須野
  • 丹生さん、大田さんと「計算資源の動的再構成システム」に関する打合せ。
    • 再構成シナリオのユースケースとしてWorkflowを特に限定せずに、ユーザのリソース要求内容をリストアップしてみることにした。
  • fluent_pidstat (コンテナ内のpidstatをFluentd送信するツール)に対する石井さんからの Pull Request を処理(→これから)
池田
  • broadinstituteのGATK込みのDocker imageを確認

https://hub.docker.com/r/broadinstitute/genomes-in-the-cloud/tags/ 結局GATKそのものは古いバージョンのまま

galaxy@pitagora:~$ sudo docker run broadinstitute/genomes-in-the-cloud ls -alrt /task total 31604
-rwxr-xr-x  1 root root 18903709 Oct 28  2015 picard.jar
-rwxr-xr-x  1 root root   671917 Oct 28  2015 verifyBamID
-rwxr-xr-x  1 root root 12763805 Oct 28  2015 GenomeAnalysisTK-3.4-g3c929b0.jar 
-rw-r--r--  1 root root      512 Oct 28  2015 Dockerfile
sudo docker run broadinstitute/genomes-in-the-cloud java -jar /task/GenomeAnalysisTK-3.4-g3c929b0.jar --version
nightly-2015-07-31-g3c929b0

... Dockerで最新のものがダウンロード可能と考えたのはちょっと甘かった。

  • hisat 2.0.4インストールのためのtool_dependencies.xml の記述(途中) ...
  • hisat2のドッカーコンテナが存在するとのアドバイス
sudo docker pull limesbonn/hisat2
sudo docker run limesbonn/hisat2 /usr/local/bin/hisat2 --version
/usr/local/bin/hisat2-align-s version 2.0.4 
64-bit
Built on fff5562e8198
Sun Jun  5 07:33:48 UTC 2016
Compiler: gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3) 
Options: -O3 -m64 -msse2 -funroll-loops -g3 -DPOPCNT_CAPABILITY
Sizeof {int, long, long long, void*, size_t, off_t}: {4, 8, 8, 8, 8, 8}

hisat 2.0.4が既にコンテナ化されていた。

  • vardictのコンテナの存在も確認したので
sudo docker pull nicholasbaro/vardict 
sudo docker run nicholasbaro/vardict /opt/VarDictJava/VarDict/vardict
丹生
  • 初参加
  • 太田さん・那須野さんと「動的再構成システム」に関する打ち合わせ
    • 何千・何万も入力を変えて動かすタイプのワークフローの高速化を実現したい
  • Planemo で、壊れた XML を与えると Lint 自体が例外を吐いて落ちる件、調べてみました(以下がそのときの出力例)。
Error loading tool with path /Users/tanjo/repos/abyss/abyss-pe.xml
Traceback (most recent call last):
  File "/usr/local/Cellar/planemo/0.34.1/libexec/vendor/lib/python2.7/site-packages/galaxy/tools/loader_directory.py", line 107, in _load_tools_from_path
    tool_element = loader_func(possible_tool_file)
ParseError: not well-formed (invalid token): line 2, column 50
Could not lint /Users/tanjo/repos/abyss/abyss-pe.xml due to malformed xml.
    • 例外を吐くのは、Planemo が内部で使用している galaxy-lib の galaxy/tools/loader_directory.py で定義されている _load_tools_from_path 関数で、XMLTree を作成している部分
    • 対して、Lint のエラーメッセージなどを生成しているのは、上で作成した XMLTree を traverse している箇所だと考えられます
      • Planemo 内: planemo/tool_lint.py の lint_tools_on_path 近辺。処理箇所自体は yield_tool_sources_on_paths より深いところです。
    • 変更箇所を最小限に直す方法としては、例外をキャッチして「 traverse するとそれらしい Lint のエラーを生成できる XMLTree っぽいなにか」を返す手段があります。
      • 現状でも問題箇所のファイル名や行数などは出ているので、出力を合わせるためだけにその手間をかけるのは割に合わなそうです…
石井
  • bioblendのexport_workflow_jsonで返ってくる値が、jsonではなく、python のdictであることがわかった。メソッドのドキュメントにもそう書いてあるので、メソッド名の修正をPRした。
    • ざっと見たところ、importも、同様な問題があるように見える。dictから読み込む方法と、jsonから読み込むのと、2つ作った方が良いだろうという印象。ただし、後方互換性については考えていない
  • 2016年9月ごろのGalaxy Dockerコンテナであれば、workflowをexportした時に、toolのリビジョンも、出力されている。ツールのリビジョンがわかれば、Galaxyに、狙ったツールを入れられるので、ツールのリビジョンが出力されていれば、ツールのインポートは可能だと考えている。
    • workflowファイルがあれば、必要なツールを全部入れるようなスクリプトは書けそう。またそれが書けるなら、Galaxy本体にあると今後楽な気がする。
    • ここ に、bioblendを使ったのサンプルスクリプトを作った。この辺りを本来をテストした方が良いと思う。
  • なすのさんが作成中の、dockerコンテナのpidstatをpythonで取得するツールを教えてもらう。いくつか基本的なPRと、issueを登録した。

  • 2,045 + 2,500 = 4,545