diff --git a/README.md b/README.md index 7c5ad8d..6d0ac00 100644 --- a/README.md +++ b/README.md @@ -205,8 +205,7 @@ $ ./test.sh mysql-8.0 mysql80-mroonga ## How to release ```shell -$ ./update.sh ${MYSQL_VERSION} ${MROONGA_VERSION} ${GROONGA_VERSION} -(./update.sh 8.0.30 12.06 12.0.6) +$ ./update.sh $ git push $ git push --tags ``` diff --git a/update.sh b/update.sh index 23b5cb6..fb84ba0 100755 --- a/update.sh +++ b/update.sh @@ -2,15 +2,15 @@ set -eu -if [ $# != 3 ]; then - echo "Usage: $0 MYSQL_VERSION MROONGA_VERSION GROONGA_VERSION" - echo " e.g.: $0 8.0.30 12.06 12.0.6" - exit 1 -fi +target_mysqls=( + "8.0" + "8.4" +) -mysql_version=$1 -mroonga_version=$2 -groonga_version=$3 +mroonga_version=$(curl https://api.github.com/repos/mroonga/mroonga/releases/latest \ + | jq -r '.["tag_name"]' | sed 's/^v//') +groonga_version=$(curl https://api.github.com/repos/groonga/groonga/releases/latest \ + | jq -r '.["tag_name"]' | sed 's/^v//') if type gsed > /dev/null 2>&1; then SED=gsed @@ -18,25 +18,28 @@ else SED=sed fi -case $mysql_version in - 8.0.*) - docker_file=mysql-8.0/Dockerfile - ;; -esac - -${SED} \ - -i'' \ - -r \ - -e "s/mysql:[0-9.]*/mysql:${mysql_version}/g" \ - -e "s/mroonga_version=[0-9.]*/mroonga_version=${mroonga_version}/g" \ - -e "s/groonga_version=[0-9.]*/groonga_version=${groonga_version}/g" \ - ${docker_file} -git add ${docker_file} - -ruby "$(dirname "$0")/update-tag-list.rb" "$@" -git add README.md - -tag="mysql-${mysql_version}-${mroonga_version}" -message="MySQL ${mysql_version} and Mroonga ${mroonga_version}" -git commit -m "${message}" -git tag -a -m "${message}" ${tag} +for target_mysql in "${target_mysqls[@]}"; do + docker_file="mysql-${target_mysql}/Dockerfile" + mysql_version=$(curl https://raw.githubusercontent.com/docker-library/mysql/refs/heads/master/versions.json \ + | jq -r ".[\"${target_mysql}\"][\"version\"]") + + ${SED} \ + -i'' \ + -r \ + -e "s/mysql:[0-9.]*/mysql:${mysql_version}/g" \ + -e "s/mroonga_version=[0-9.]*/mroonga_version=${mroonga_version}/g" \ + -e "s/groonga_version=[0-9.]*/groonga_version=${groonga_version}/g" \ + ${docker_file} + git add ${docker_file} + + ruby "$(dirname "$0")/update-tag-list.rb" \ + "${mysql_version}" \ + "${mroonga_version}" \ + "${groonga_version}" + git add README.md + + tag="mysql-${mysql_version}-${mroonga_version}" + message="MySQL ${mysql_version} and Mroonga ${mroonga_version}" + git commit -m "${message}" + git tag -a -m "${message}" ${tag} +done