Jazzband
Jazzband - PythonのOSSを保守する共同コミュニティ — 清水川Web
Jazzbandとは
About: https://jazzband.co/about
序文
Jazzbandは、開発メンバーが少ないOSSプロジェクトを長期間維持するストレスから産まれました
コードへの貢献の障壁を下げて幅広いユーザーが協力できるようにするよう務めます
責務を複数の人で共有し、プロジェクトを生かしつづけるための開発方法を見つけるのを助けます
参加方法
https://jazzband.co/account/login から参加登録する
自動的にGitHubのorganizationに追加される
その後は次のようなことができるようになる: リポジトリの移譲、既存プロジェクトへのコミット、PyPIへの自動リリース
行動規範
Code of Conduct https://jazzband.co/about/conduct
Guidelines: https://jazzband.co/about/guidelines
存続可能性: プロジェクトはコードスニペットや一発モノのオモチャではいけない。
ドキュメント: 利用者向け と コントリビューター向け。インラインのコードコメントが推奨される。
テスト: CIでの自動テスト
規範: プロジェクトはJazzbandの行動規範に則っていること。
コントリビュートガイドライン: Jazzbandの情報をCONTRIBUTING.mdのヘッダに持たせる。
バッヂ: Jazzbandのバッヂを掲載してもよい(オプション)
自動リリースのためにやったこと
https://jazzband.co/about/releases を読む
leadメンバーになる
For security reasons we can’t grant the ability to release to PyPI to all Jazzband members but only to those who have shown significant contributions to the projects in question. All other Jazzband features (as of writing this) continue to be open to all Jazzband members.
PyPIへのリリースを誰でも出来てしまうとセキュリティー上の問題がある
それ以外のjazzbandの機能はメンバーなら誰でも使える
To become a “lead” project member, please also open an issue with the “lead” label.
"lead"プロジェクトメンバーになることで、リリースできるようになる
https://github.com/jazzband/roadies/issues/new?labels=lead でチケットを作る
作った https://github.com/jazzband/roadies/issues/113
Packagingにsetuptools_scmを使う
We recommend using setuptools_scm for automatically deducing the version of the project package from Git – but setting the version manually in the setup.py works just the same.
はい
https://github.com/jazzband/django-redshift-backend/commit/775c58d30f8e60f3d24bfb21af93a7cfb755bd1b
対応した
試しに、 1.0.0a1 タグを付けて、test pypiにリリースしてみた
https://test.pypi.org/project/django-redshift-backend/1.0.0a1/
Travisの自動リリースを設定
Next you will want to set up the project to use Travis-CI for continous testing. Please refer to the Python specific documentation for how to accomplish that.
まずTravis-CIでテストするようにしよう
In addition we strongly recommend using tox-travis if the project is using tox (which is also recommended).
tox使ってるならtox-travisを強くお勧めするよ
Steps needed:
Set up the .travis.yml file following the Travis-CI docs.
.travis.yml を用意する
もうある
Create a tox.ini which takes tox-travis into account.
tox.ini を作る
tox-travisじゃないけど、もうある
Open an issue for the roadies to enable the auto-release mechanism via the Jazzband.
https://jazzband.co/roadies/issue?labels=pypi でIssueを作る
作った https://github.com/jazzband/roadies/issues/114
tox-travisも対応した
https://github.com/jazzband/django-redshift-backend/pull/52