From 26e65c8ed6813452a50e586dd8d635b1d4e403fe Mon Sep 17 00:00:00 2001 From: Sebastian Date: Thu, 4 Jul 2024 11:58:08 -0300 Subject: updating prebuilt script --- Makefile | 71 +++++++++++++++++++++++++++++++++++++---- contrib/cleanup-prebuilt-dir.sh | 5 +++ contrib/next-dev-version.sh | 20 ++++++++++++ 3 files changed, 89 insertions(+), 7 deletions(-) create mode 100755 contrib/next-dev-version.sh diff --git a/Makefile b/Makefile index b1103edaf..a1d56631a 100644 --- a/Makefile +++ b/Makefile @@ -42,7 +42,6 @@ publish: pnpm run compile pnpm publish -r --no-git-checks - .PHONY: prebuilt prebuilt: ./contrib/cleanup-prebuilt-dir.sh @@ -54,6 +53,8 @@ prebuilt: make anastasis-prebuilt ./contrib/publish-prebuilt-dir.sh +# RELEASE prebuilt + .PHONY: anastasis-prebuilt anastasis-prebuilt: pnpm install --frozen-lockfile --filter @gnu-taler/anastasis-webui... @@ -78,12 +79,6 @@ aml-backoffice-prebuilt: pnpm run --filter @gnu-taler/aml-backoffice-ui... build ./contrib/copy-aml-backoffice-into-prebuilt.sh -#.PHONY: auditor-backoffice-prebuilt -#auditor-backoffice-prebuilt: -# pnpm install --frozen-lockfile --filter @gnu-taler/auditor-backoffice-ui... -# pnpm run --filter @gnu-taler/auditor-backoffice-ui... build -# ./contrib/copy-auditor-backoffice-into-prebuilt.sh - .PHONY: challenger-prebuilt challenger-prebuilt: pnpm install --frozen-lockfile --filter @gnu-taler/challenger-ui... @@ -96,6 +91,68 @@ bank-prebuilt: pnpm run --filter @gnu-taler/bank-ui... build ./contrib/copy-bank-into-prebuilt.sh +# DEV prebuilt + +.PHONY: anastasis-dev-prebuilt +anastasis-dev-prebuilt: + ./contrib/cleanup-prebuilt-dir.sh + ./contrib/next-dev-version.sh packages/anastasis-webui/package.json + pnpm install --frozen-lockfile --filter @gnu-taler/anastasis-webui... + pnpm run --filter @gnu-taler/anastasis-webui... build + git ci -am "new prebuilt dev" && git push + ./contrib/copy-anastasis-into-prebuilt.sh + ./contrib/publish-prebuilt-dir.sh + +.PHONY: backoffice-dev-prebuilt +backoffice-dev-prebuilt: + ./contrib/cleanup-prebuilt-dir.sh + ./contrib/next-dev-version.sh packages/merchant-backoffice-ui/package.json + pnpm install --frozen-lockfile --filter @gnu-taler/merchant-backoffice-ui... + pnpm run --filter @gnu-taler/merchant-backoffice-ui... build + git ci -am "new prebuilt dev" && git push + ./contrib/copy-backoffice-into-prebuilt.sh + ./contrib/publish-prebuilt-dir.sh + +.PHONY: backend-dev-prebuilt +backend-dev-prebuilt: + ./contrib/cleanup-prebuilt-dir.sh + ./contrib/next-dev-version.sh packages/merchant-backend-ui/package.json + pnpm install --frozen-lockfile --filter @gnu-taler/merchant-backend-ui... + pnpm run --filter @gnu-taler/merchant-backend-ui... build + git ci -am "new prebuilt dev" && git push + ./contrib/copy-backend-into-prebuilt.sh + ./contrib/publish-prebuilt-dir.sh + +.PHONY: aml-backoffice-dev-prebuilt +aml-backoffice-dev-prebuilt: + ./contrib/cleanup-prebuilt-dir.sh + ./contrib/next-dev-version.sh packages/aml-backoffice-ui/package.json + pnpm install --frozen-lockfile --filter @gnu-taler/aml-backoffice-ui... + pnpm run --filter @gnu-taler/aml-backoffice-ui... build + git ci -am "new prebuilt dev" && git push + ./contrib/copy-aml-backoffice-into-prebuilt.sh + ./contrib/publish-prebuilt-dir.sh + +.PHONY: challenger-dev-prebuilt +challenger-dev-prebuilt: + ./contrib/cleanup-prebuilt-dir.sh + ./contrib/next-dev-version.sh packages/challenger-ui/package.json + pnpm install --frozen-lockfile --filter @gnu-taler/challenger-ui... + pnpm run --filter @gnu-taler/challenger-ui... build + git ci -am "new prebuilt dev" && git push + ./contrib/copy-challenger-into-prebuilt.sh + ./contrib/publish-prebuilt-dir.sh + +.PHONY: bank-dev-prebuilt +bank-dev-prebuilt: + ./contrib/cleanup-prebuilt-dir.sh + ./contrib/next-dev-version.sh packages/bank-ui/package.json + pnpm install --frozen-lockfile --filter @gnu-taler/bank-ui... + pnpm run --filter @gnu-taler/bank-ui... build + git ci -am "new prebuilt dev" && git push + ./contrib/copy-bank-into-prebuilt.sh + ./contrib/publish-prebuilt-dir.sh + # make documentation from docstrings .PHONY: typedoc typedoc: diff --git a/contrib/cleanup-prebuilt-dir.sh b/contrib/cleanup-prebuilt-dir.sh index 5553fb467..a6655bf68 100755 --- a/contrib/cleanup-prebuilt-dir.sh +++ b/contrib/cleanup-prebuilt-dir.sh @@ -3,6 +3,11 @@ set -e [ ! -d prebuilt ] && git worktree add -f prebuilt prebuilt && exit 1 +if output=$(git status --porcelain) && [ ! -z "$output" ]; then + echo Cannot apply to a dirty working tree, please stage your changes + exit 1 +fi + # make sure that the prebuilt directory is clean # before building # this script is part of the make prebuilt diff --git a/contrib/next-dev-version.sh b/contrib/next-dev-version.sh new file mode 100755 index 000000000..028d01536 --- /dev/null +++ b/contrib/next-dev-version.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +set -e + +FILE=$1 +[ ! -w "$FILE" ] && echo first argument should be a writtable file && exit 1 +jq -e . $FILE >/dev/null 2>&1 || (echo $FILE should be a json file && exit 1) + +# looks for [string]-dev.[number] +# if not present returns [string]-dev.1 +# else version = number +1 and returns [string]-dev.[version] +inc_version() { + jq '. + {"version": (if .version | contains("-dev") then [.version | match("^(.*)-dev.([0-9]*)$").captures[].string] | .[0] + "-dev." + (.[1]|tonumber|.+1|tostring) else .version + "-dev.1" end)}' +} + +# read file +# replace version +# save to buffer +# write the same file +cat <<< $(cat $FILE | inc_version) > $FILE -- cgit v1.2.3