リリース

必要なもの

環境変数

以下の環境変数を使います。

最新のGroongaのリポジトリーへのパスを指定します。

リリースごとにGroongaのリポジトリーをcloneすることを推奨します。

以下は、 $HOME/work/groonga/groonga.cleanGROONGA_REPOSITORY に指定する例です。

  $ mkdir -p ~/work/groonga
  $ rm -rf ~/work/groonga/groonga.clean
  $ git clone --recursive git@github.com:groonga/groonga.git ~/work/groonga/groonga.clean
  $ export GROONGA_REPOSITORY=$HOME/work/groonga/groonga.clean

GroongaのPPAのキーを指定します。

Groongaのリリースドキュメントの PPA用の鍵の登録 セクションを参照してください。

コマンド

リリースに必要なコマンドがあるのでインストールします。

$ ./setup-release.sh

debとRPMのパッケージの変更履歴を更新

$ rake package:version:update
$ git push

パッケージ作成可能かどうか確認

以下のCIがグリーンかどうかを確認します。

リリース用にタグを打つ

$ rake tag

アーカイブファイルのアップロード

$ rake package:source

リリース用パッケージを作成

deb

$ rake package:apt

Ubuntu

Ubuntuの場合、パッケージはlaunchpad.netのPPAで提供されます。

RPM

$ rake package:yum

Windows

Windowsパッケージについては、何もする必要はありません。

Windowsパッケージは GitHub Actions のアクションで自動でアップロードされます。

バージョンをあげる

次のリリースに向けてバージョンをあげます。

$ rake version:update NEW_VERSION=x.x.x
$ git push

変更点を記述

新しいリリースをアナウンスするために https://github.com/pgroonga/pgroonga.github.io/ を更新する必要があります。

news/index.md に前回のバージョンからの変更をまとめます。

_config.yml の以下の項目も更新します。

リポジトリーの更新

以下の手順でリポジトリーを更新します。

packages.groonga.orgリポジトリーをクローンします。

$ git clone git@github.com:groonga/packages.groonga.org.git

debとRPM用にリポジトリーを更新します。

$ cd packages.groonga.org
$ rake apt
$ rake yum

Dockerイメージの更新

Docker HubのPGroongaのDockerイメージを更新します。

PGroongaのDockerリポジトリーをクローンし、リポジトリーの中のDockerfileを更新します。

以下は、PGroongaのバージョンが 2.4.1 、Groongaのバージョンが 12.0.9 の場合の例です。

$ mkdir -p ~/work/pgroonga
$ rm -rf ~/work/pgroonga/docker.clean
$ git clone --recursive git@github.com:pgroonga/docker.git ~/work/pgroonga/docker.clean
$ cd ~/work/pgroonga/docker.clean
$ ./update.sh 2.4.1 12.0.9 #Automatically update Dockerfiles and commit changes and create a tag.
$ git push

作業時には最新のバージョンを指定してください。

PGroongaのDockerリポジトリーのGithub Actionsが成功しているのを確認したら、タグをpushします。

$ git push --tags

タグをpushすると、PGroongaのDockerリポジトリーのGithub ActionsDocker HubのPGroongaのDockerイメージを自動で更新します。

リリースアナウンス

メーリングリスト

大きなニュースがある場合、PostgreSQLのメーリングリストにアナウンスします。

アナウンスするにはPostgreSQLのアカウントが PGroonga project に所属している必要があります。 PGroonga project への入り方は、プロジェクトメンバーに確認してください。

ブログ

https://groonga.org/blog/https://groonga.org/ja/blog/ に公開されているブログにリリースアナウンスを記載します。

以下の手順でブログを更新します。

ブログのソースリポジトリーをクローン。

ブログのソースリポジトリー内に以下のファイルを作成。

以下の手順でブログを確認できます。

必要なライブラリーをインストールします。

$ bundle update

Webサーバーを起動します。

$ jekyll serve --watch

http://localhost:4000 にWebブラウザーでアクセスします。

Facebookでリリースアナウンス

Facebookに Groongaグループ があります。Groongaグループのメンバーになると、個人のアカウントではなく、Groongaグループのメンバーとして投稿できます。

ブログやニュースを元にアナウンスを投稿します。

Twitterでリリースアナウンス

PGroongaのブログエントリには「リンクをあなたのフォロワーに共有する」ためのツイートボタンがあるので、そのボタンを使ってリリースアナウンスします。(画面下部に配置されている)このボタンを経由する場合、ツイート内容に自動的にリリースタイトルとリリースエントリのURLが挿入されます。

この作業はblogroongaの英語版、日本語版それぞれで行います。 あらかじめgroongaアカウントでログインしておくとアナウンスを円滑に行うことができます。