# local release branch tracks upstream/release
git checkout release
git pull upstream release
# merge master
git merge upstream/master
# release.sh will build with grunt and proceed with bumping
./release.sh
# check log...
git log --name-only
# ... you should only have files in "dist", package.json and plugin.json
# Last commit must be "Release vX.Y.Z", and previous must be master's merge commit. No more.
# finally, push to remote
git push upstream HEAD:release
git push upstream --tags
Some stuff to keep in mind:
-
Never commit any code to release. Only allowed commits are master’s merge, grunt bump and plugin.json update.
-
Never pull or rebase release back to master. The commit tagged "ReleaseT0" should never appear on master.
-
Draft a new release: https://github.com/hawkular/hawkular-grafana-datasource/releases
-
Update Docker image & smoke test it & publish it
docker build -t hawkular/hawkular-grafana-datasource . docker run -i -p 3000:3000 --name hawkular-grafana-datasource --rm hawkular/hawkular-grafana-datasource:latest docker images docker tag xyz hawkular/hawkular-grafana-datasource:1.x.x docker push hawkular/hawkular-grafana-datasource:1.x.x docker push hawkular/hawkular-grafana-datasource:latest
-
Update the Grafana plugins repository: on https://github.com/grafana/grafana-plugin-repository, add new version & SHA1 to repo.json
-
Submit PR