diff --git a/.bumpversion.cfg b/.bumpversion.cfg new file mode 100644 index 0000000..ebfc3a5 --- /dev/null +++ b/.bumpversion.cfg @@ -0,0 +1,27 @@ +[bumpversion] +current_version = 1.0.0 +commit = True +commit_args = --no-verify +tag = True +tag_name = v{new_version} +message = Version bumpup: {current_version} → {new_version} + +[bumpversion:file:rebar.config] +search = emqx_offline_message_plugin, "{current_version}" +replace = emqx_offline_message_plugin, "{new_version}" + +[bumpversion:file:src/emqx_offline_message_plugin.app.src] +search = vsn, "{current_version}" +replace = vsn, "{new_version}" + +[bumpversion:file (download link):README.md] +search = download/v{current_version}/ +replace = download/v{new_version}/ + +[bumpversion:file (plugin name-vsn):README.md] +search = emqx_offline_message_plugin-{current_version} +replace = emqx_offline_message_plugin-{new_version} + +[bumpversion:file:include/emqx_omp.hrl] +search = PLUGIN_RELEASE_VERSION, "{current_version}" +replace = PLUGIN_RELEASE_VERSION, "{new_version}" diff --git a/Makefile b/Makefile index 0e6093c..66eb0e7 100644 --- a/Makefile +++ b/Makefile @@ -89,7 +89,8 @@ up: down: docker compose down --volumes - - - +# bump-version-patch/minor/major +.PHONY: bump-version-% +bump-version-%: + ./scripts/bumpversion.sh $* diff --git a/README.md b/README.md index 07c5564..41e7f5a 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,14 @@ Download the plugin: + ```bash -wget https://github.com/savonarola/emqx-offline-message-plugin/releases/download/v0.0.7/emqx_offline_message_plugin-1.0.0.tar.gz +wget https://github.com/emqx/emqx-offline-message-plugin/releases/download/v1.0.0/emqx_offline_message_plugin-1.0.0.tar.gz ``` Install the plugin: + ```bash curl -u key:secret -X POST http://localhost:18083/api/v5/plugins/install \ -H "Content-Type: multipart/form-data" \ diff --git a/include/emqx_omp.hrl b/include/emqx_omp.hrl index 88e7b6d..d98e914 100644 --- a/include/emqx_omp.hrl +++ b/include/emqx_omp.hrl @@ -5,6 +5,7 @@ -define(METRICS_WORKER, emqx_omp_metrics_worker). -define(PLUGIN_NAME, emqx_offline_message_plugin). +%% Do not update version manually, use make bump-version-patch/minor/major instead -define(PLUGIN_RELEASE_VERSION, "1.0.0"). -define(PLUGIN_NAME_VSN, <<"emqx_offline_message_plugin-", ?PLUGIN_RELEASE_VERSION>>). diff --git a/rebar.config b/rebar.config index e5dda1f..b57ffbb 100644 --- a/rebar.config +++ b/rebar.config @@ -37,9 +37,13 @@ %% this is the release version, different from app vsn in .app file {relx, [ - {release, {emqx_offline_message_plugin, "1.0.0"}, [ - emqx_offline_message_plugin - ]}, + {release, + %% Do not update version manually, use make bump-version-patch/minor/major instead + {emqx_offline_message_plugin, "1.0.0"}, + [ + emqx_offline_message_plugin + ] + }, {dev_mode, false}, {include_erts, false}, {include_src, false} diff --git a/scripts/bumpversion.sh b/scripts/bumpversion.sh new file mode 100755 index 0000000..7c3d3c9 --- /dev/null +++ b/scripts/bumpversion.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +set -uo pipefail + +if [ $# -ne 1 ]; then + echo "Usage: $0 " + exit 1 +fi + +level="$1" + +if [ "$level" != "patch" ] && [ "$level" != "minor" ] && [ "$level" != "major" ]; then + echo "Usage: $0 " + exit 1 +fi + +bump2version_present=$(command -v bump2version || echo "false") +if [ "$bump2version_present" = "false" ]; then + echo "Please install bump2version first: pip install bump2version" + exit 1 +fi + +exec bump2version "$level" + diff --git a/src/emqx_offline_message_plugin.app.src b/src/emqx_offline_message_plugin.app.src index 6c2d0a5..c402172 100644 --- a/src/emqx_offline_message_plugin.app.src +++ b/src/emqx_offline_message_plugin.app.src @@ -1,6 +1,7 @@ {application, emqx_offline_message_plugin, [ {description, "EMQX Offline Message Plugin"}, - {vsn, "0.1.0"}, + %% Do not update version manually, use make bump-version-patch/minor/major instead + {vsn, "1.0.0"}, {modules, []}, {registered, [emqx_omp_sup]}, {applications, [kernel, stdlib]},