Pitagora Meetup 2024-10
概要
- 日時: 2024年10月4日(金) 13:00 〜 18:00
- 場所:
- オンサイト会場:
- オンライン会場:
- Discord:
Pitagora / Workflow Meetup Japan
サーバ
- Discord の invite リンクは こちら
問い合わせ
- 幹事: 大田
tazro.ohta [at] chiba-u.jp
タイムテーブル
途中参加、途中退出は自由です。初めて参加される方はぜひ 過ごし方ガイド をご覧ください。
Time |
|
13:00-13:15 |
今日の作業確認 |
13:15-17:00 |
開発とディスカッション |
17:00-18:00 |
ラップアップ |
18:00- |
有識者会議 |
ミートアップの主旨
- データ解析ツール・ワークフローを共有する
- ソフトウェアをコンテナ化する
- Galaxy や CWL などを使ってツール定義、ワークフロー定義を書く
- ドキュメントを書いて GitHub で公開する
- 共有されたツールやワークフローを実行する
- うまくいったこと、うまくいかなかったことを記録する
- 技術情報を共有する
- 関連OSSプロジェクトにコミットする
- SNSで質問する
- プロジェクトの Gitter channel があればそこで聞く
- Issueを立てる
- Pull Request を送る
- その他データ解析に関わる人々の日々の暮らしが豊かになる開発を進める
まとめ
神保
(ご挨拶に来て頂きました)
大田
横山
- Sapporo serviceをローカル環境で立ち上げてみる
- test/curl_example/nextflow_params_outdir.sh を試しに実行してみて、/{runid}/outputs/ が生成されるので、WFが実行されたテイで結果のjsonをoutputsにおいてみた
- http://0.0.0.0:1122/runs/{runid}/outputs/results.json を叩くとjsonが帰ってくるのを確認
- やりたいこととしては、これをフロントのアプリケーションからリクエストしてjsonを加工して表示
- と思ったらフロントでstrict-origin-when-cross-origin が出てハマっている
- API側のsapporo/config.py で allow_origin: str = “*” だから大丈夫なはずだが…?
- https://github.com/sapporo-wes/sapporo-service/issues/40 かきました
- フロント側のrewrites設定でなんとかした
- できたこと: :+1: sapporo-service起動して {runid}/outputs に置かれたjsonをフロントエンドで加工して表示できた
- オンプレにSapporo-serviceをおいて、クラウドにUI立ててクラウドからオンプレにアクセスする構成ってどうなんだろう、と言うのを相談したい(事例ありますか?)
- 全部オンプレの方がいいんですかね
- やりたいこと: インターネットからアクセスできて、ログインユーザーごとにデータ一覧を変更できて、固定のspecificなpipelineをGUIだけで実施できるDFASTみたいなシステム
(↑石井コメント、似たようなシステムに携わっている。ので、需要はあるかもしれない。ただ、全部オンプレですむならそっちの方が良いような気もしますが、、、外からジョブを投げたい、確認したいの需要があれば、結構ありなのでは?とおもいました。)
丹生
- CWL v1.0 の codegen の文法が SALAD v1.3 で書かれていてつらたん
- CWL, SALAD の optional field/
null
値持ちのフィールドに関する挙動調査
- SALAD では
null
を持つフィールドは、そのフィールドの値が指定されなかったものとして扱われる
cwlVersion: v1.2
...
hints: null # `hints` を指定しなかった場合と同じ。`cwltool --validate` も通る
- 処理系への入力時・処理系からの出力時・Expression からの参照時などの各利用時、ユーザー定義型、
File
や Directory
などのデータ型で要求される挙動がそれぞれ異なるっぽい
requirements:
LoadListingRequirement:
loadListing: no_listing
...
# null だとエラー。`listing` は存在してはならない
outputEval: $(dir.listing === undefined)
- 処理系実装者的には、入力の許容度や出力の形式などに影響するため調査中
- まとめ始めた: https://zenn.dev/tom_tan/scraps/701e29e0f7da83
- おまけ: cwltool の出力オブジェクトの挙動が昔から若干変わっている?
- 以前は null field を省略して表示していた気がする
- 現在は null field も省略せず出力している
那須野
- Docker EngineのContainer networkingを駆使するような使い方を試す機会がしばらくなかったので、改めて最新のドキュメントでUser-defined bridgesやDNS解決まわりを復習。
- (SwarmやK8sで最近はほとんど意識することもなくなってしまい…)
- https://docs.docker.com/engine/network/drivers/bridge/
- コンテナ名で名前解決するための内部DNSは Libnetwork が担っている(昔からあるが今もこれ?)
- https://docs.docker.com/engine/extend/plugins_network/
末竹
福井
- tatakiのCI作成が途中になっていたのを終わらせたい
- 自分のfork repoではできたので後は↑にpushする
- GitHub ActionsのGitHub-hosted runnerのarm環境でDockerを動かしたい
macos-latest
はだめっぽい
macos-14
(latest): M1はnested virtualizationに対応していないためno hopeだそう。
macos-15
(beta): M2, M3はhardware的には対応しているが、 software的にはまだApple’s Hypervisor frameworkが対応していない。今後対応予定らしい。
ubuntu-latest
は、無課金GitHub Teamだとx86しか使えない
- →とりあえずローカルでやる。
池田
- 明日の[トーゴーの日シンポジウム] 参加します
- TailscaleのVPNに接続できずにてこずった
- MacOSのSequoiaにアップデートした事が影響しているようす
- AWSのパブリックIPアドレスを持たないEC2インスタンスへの接続
石井
- リモート参戦
- 今後に向けて、いくつかタスクを片付けている。。。