3

オープンソース ソフトウェアを管理する誰もが、新しいバージョンをリリースするプロセスがますます多くの作業を必要とするという問題に直面します。バージョン管理でリリースにタグを付け、ディストリビューションを作成し (自動ビルドで簡単なはずです)、それらを Web サイトやオープンソース ホスティング サービスにアップロードする必要があります。選択したウェブ フォーラム、sourceforge のニュース システム、メーリングリスト、ブログまたはウェブサイトでほぼ同じメッセージを使用して、新しいリリースを発表する必要があります。また、freshmeat でソフトウェアのエントリを更新する必要があります。リリースのためにさらに多くのタスクを実行する必要があります。

これらのタスクの一部を自動化する技術を開発しましたか? これをサポートするソフトウェアはありますか?

4

3 に答える 3

1

私のPerlのものについては、Module::Releaseと書きました。トップレベルのディレクトリで、次の1つのコマンドを入力します。

% release

いくつかのことをチェックし、何かが間違っている場合は死ぬ場合。すべてがチェックアウトされると、ディストリビューションがアップロードされます。

それは私のプロセス全体を自動化します:

  • Perlの複数のバージョンに対してテストする
  • 配布ファイルをテストする
  • ソース管理のステータスを確認する
  • コードと配布の品質メトリックを確認します
  • 変更ファイルを更新する
  • 新しいバージョン番号を決定する
  • コードを複数の場所にリリースする
  • 新しいバージョン番号でソース管理にタグを付ける

ただし、誰もが独自のリリースオートマトンを作成しているようです。ほとんどの人は自分のプロセスが好きなように自分のプロセスを好むので、一般的な解決策は社会的にうまく機能しません。

于 2008-11-13T00:24:06.613 に答える
1

Pragmatic Project Automationは、そのすべてを行う方法を示しています。彼らは本のほとんどすべてにAntを使用しているので、Antを知っている場合は、ビルドとリリースのサイクルの任意のステップを実行するためにさまざまなターゲットを作成できます。

于 2008-11-13T00:29:13.093 に答える
1

Brad Fitzpatrickには、リリースを自動化するPerlプログラムであるShipItがあります。彼の最初の発表にはもう少し情報があります。

于 2008-11-13T01:37:15.203 に答える