From b7bdcda0388fafb8d8cbfacbaf884204378efbda Mon Sep 17 00:00:00 2001 From: Zach Langbert Date: Sat, 11 Jan 2025 14:35:04 -0800 Subject: [PATCH] add release script --- justfile | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 justfile diff --git a/justfile b/justfile new file mode 100644 index 0000000..5a72dc3 --- /dev/null +++ b/justfile @@ -0,0 +1,25 @@ +release version: + # Ensuring we are on main branch + @git rev-parse --verify main > /dev/null 2>&1 || (echo "Not on main branch" && exit 1) + + # Ensuring working directory is clean (including untracked files) + @git status --porcelain | grep -q . && (echo "Working directory is not clean (has changes or untracked files)" && exit 1) + + # Creating and checking out release preparation branch + @git checkout -b release-prep-{{version}} + + # Updating version in manifest.json + @sed -i '' 's/"version": "[^"]*"/"version": "{{version}}"/' custom_components/daikinone/manifest.json + + # Comitting version bump + @git commit -am "release: prepare release {{version}}" + + # Pushing branch and creating PR + @git push -u origin release-prep-{{version}} + @gh pr create --title "release: prepare {{version}}" --body "Prepare release {{version}}" --base main + + # Merging PR + @gh pr merge --auto --delete-branch + + # Creating release + @gh release create v{{version}} --generate-notes