git.delta.rocks / unique-network / refs/commits / d7cd036effa1

difftreelog

test script clarification messages

Yaroslav Bolyukin2022-11-25parent: #6b2c051.patch.diff
in: master

1 file changed

modifiedtests/scripts/generate_types_package.shdiffbeforeafterboth
before · tests/scripts/generate_types_package.sh
1#!/usr/bin/env bash23set -eu45DIR=$(realpath $(dirname "$0"))6TEMPLATE=$DIR/types_template7GIT_REPO=git@github.com:UniqueNetwork/unique-types-js.git89. $DIR/functions.sh1011usage() {12	echo "Usage: [RPC_URL=http://localhost:9933] $0 [--rc|--release|--sapphire] [--force] [--rpc-url=http://localhost:9933]" 1>&213	exit 114}1516rc=17sapphire=18release=19force=2021for i in "$@"; do22case $i in23	--rc)24		rc=125		if test "$release" -o "$sapphire"; then usage; fi26		;;27	--sapphire)28		sapphire=129		if test "$rc" -o "$release"; then usage; fi30		;;31	--release)32		release=133		if test "$rc" -o "$sapphire"; then usage; fi34		;;35	--force)36		force=137		;;38	--rpc-url=*)39		RPC_URL=${i#*=}40		;;41	*)42		usage43		;;44esac45done4647if test \( ! \( "$rc" -o "$release" -o "$sapphire" \) \) -o \( "${RPC_URL=}" = "" \); then48	usage49elif test "$rc"; then50	echo "Rc build"51else52	echo "Release build"53fi5455cd $DIR/..56yarn polkadot-types5758version=$(do_rpc state_getRuntimeVersion "")59spec_version=$(echo $version | jq -r .result.specVersion)60spec_name=$(echo $version | jq -r .result.specName)61echo "Spec version: $spec_version, name: $spec_name"6263case $spec_name in64	opal)65		package_name=@unique-nft/opal-testnet-types66		repo_branch=opal-testnet67		repo_tag=$repo_branch68		;;69	quartz)70		package_name=@unique-nft/quartz-mainnet-types71		repo_branch=quartz-mainnet72		repo_tag=$repo_branch73		;;74	unique)75		package_name=@unique-nft/unique-mainnet-types76		repo_branch=master77		repo_tag=unique-mainnet78		;;79	*)80		echo "unknown spec name: $spec_name"81		exit 182		;;83esac8485if test "$rc" = 1; then86	if "$spec_name" != opal; then87		echo "rc types can only be based on opal spec"88		exit 189	fi90	package_name=@unique-nft/rc-types91	repo_branch=rc92	repo_tag=$repo_branch93fi94if test "$sapphire" = 1; then95	if "$spec_name" != opal; then96		echo "sapphire types can only be based on opal spec"97		exit 198	fi99	package_name=@unique-nft/sapphire-mainnet-types100	repo_branch=sapphire-mainnet101	repo_tag=$repo_branch102fi103104package_version=${spec_version:0:3}.$(echo ${spec_version:3:3} | sed 's/^0*//').105last_patch=NEVER106for tag in $(git ls-remote -t --refs $GIT_REPO | cut -f 2 | sort -r); do107	tag_prefix=refs/tags/$repo_tag-v$package_version108	if [[ $tag == $tag_prefix* ]]; then109		last_patch=${tag#$tag_prefix}110		break;111	fi112done113echo "Package version: ${package_version}X, name: $package_name"114echo "Last published: $package_version$last_patch"115116if test "$last_patch" = "NEVER"; then117	new_package_version=${package_version}0118else119	new_package_version=${package_version}$((last_patch+1))120fi121package_version=${package_version}$last_patch122echo "New package version: $new_package_version"123124pjsapi_ver=^$(cat $DIR/../package.json | jq -r '.dependencies."@polkadot/api"' | sed -e "s/^\^//")125tsnode_ver=^$(cat $DIR/../package.json | jq -r '.devDependencies."ts-node"' | sed -e "s/^\^//")126ts_ver=^$(cat $DIR/../package.json | jq -r '.devDependencies."typescript"' | sed -e "s/^\^//")127128gen=$(mktemp -d)129pushd $gen130git clone $GIT_REPO -b $repo_branch --depth 1 .131if test "$last_patch" != "NEVER"; then132	git reset --hard $repo_tag-v$package_version133fi134git rm -r "*"135popd136137# Using old package_version here, becaue we first check if138# there is any difference between generated and already uplaoded types139cat $TEMPLATE/package.json \140| jq '.private = false' - \141| jq '.name = "'$package_name'"' - \142| jq '.version = "'$package_version'"' - \143| jq '.peerDependencies."@polkadot/api" = "'$pjsapi_ver'"' - \144| jq '.peerDependencies."@polkadot/types" = "'$pjsapi_ver'"' - \145| jq '.devDependencies."@polkadot/api" = "'$pjsapi_ver'"' - \146| jq '.devDependencies."@polkadot/types" = "'$pjsapi_ver'"' - \147| jq '.devDependencies."ts-node" = "'$tsnode_ver'"' - \148| jq '.devDependencies."typescript" = "'$ts_ver'"' - \149> $gen/package.json150for file in .gitignore .npmignore README.md tsconfig.json; do151	cp $TEMPLATE/$file $gen/152done153package_name_replacement=$(printf '%s\n' "$package_name" | sed -e 's/[\/&]/\\&/g')154sed -i 's/PKGNAME/'$package_name_replacement'/' $gen/README.md155156rsync -ar --exclude .gitignore src/interfaces/ $gen157for file in $gen/augment-* $gen/**/types.ts $gen/registry.ts; do158	sed -i '1s;^;//@ts-nocheck\n;' $file159done160161pushd $gen162git add .163popd164165pushd $gen166if git diff --quiet HEAD && test ! "$force"; then167	echo "no changes detected"168	exit 0169fi170popd171172mv $gen/package.json $gen/package.old.json173cat $gen/package.old.json \174| jq '.version = "'$new_package_version'"' - \175> $gen/package.json176rm $gen/package.old.json177pushd $gen178git add package.json179popd180181echo "package.json contents:"182cat $gen/package.json183echo "overall diff:"184pushd $gen185git status186git diff HEAD || true187popd188189# This check is only active if running in interactive terminal190if [ -t 0 ]; then191	read -p "Is everything ok at $gen? " -n 1 -r192	echo193	if [[ ! $REPLY =~ ^[Yy]$ ]]; then194		echo "Aborting!"195		exit 1196	fi197fi198199pushd $gen200yarn201yarn prepublish202git commit -m "chore: upgrade types to v$new_package_version"203git tag --force $repo_tag-v$new_package_version204git push --tags --force -u origin HEAD205#yarn publish206popd
after · tests/scripts/generate_types_package.sh
1#!/usr/bin/env bash23set -eu45DIR=$(realpath $(dirname "$0"))6TEMPLATE=$DIR/types_template7GIT_REPO=git@github.com:UniqueNetwork/unique-types-js.git89. $DIR/functions.sh1011usage() {12	echo "Usage: [RPC_URL=http://localhost:9933] $0 <--rc|--release|--sapphire> [--force] [--push] [--rpc-url=http://localhost:9933]" 1>&213	exit 114}1516rc=17sapphire=18release=19force=20push=2122for i in "$@"; do23case $i in24	--rc)25		rc=126		if test "$release" -o "$sapphire"; then usage; fi27		;;28	--sapphire)29		sapphire=130		if test "$rc" -o "$release"; then usage; fi31		;;32	--release)33		release=134		if test "$rc" -o "$sapphire"; then usage; fi35		;;36	--force)37		force=138		;;39	--push)40		push=141		;;42	--rpc-url=*)43		RPC_URL=${i#*=}44		;;45	*)46		usage47		;;48esac49done5051if test \( ! \( "$rc" -o "$release" -o "$sapphire" \) \) -o \( "${RPC_URL=}" = "" \); then52	usage53elif test "$rc"; then54	echo "Rc build"55else56	echo "Release build"57fi5859cd $DIR/..60yarn polkadot-types6162version=$(do_rpc state_getRuntimeVersion "")63spec_version=$(echo $version | jq -r .result.specVersion)64spec_name=$(echo $version | jq -r .result.specName)65echo "Spec version: $spec_version, name: $spec_name"6667case $spec_name in68	opal)69		package_name=@unique-nft/opal-testnet-types70		repo_branch=opal-testnet71		repo_tag=$repo_branch72		;;73	quartz)74		package_name=@unique-nft/quartz-mainnet-types75		repo_branch=quartz-mainnet76		repo_tag=$repo_branch77		;;78	unique)79		package_name=@unique-nft/unique-mainnet-types80		repo_branch=master81		repo_tag=unique-mainnet82		;;83	*)84		echo "unknown spec name: $spec_name"85		exit 186		;;87esac8889if test "$rc" = 1; then90	if "$spec_name" != opal; then91		echo "rc types can only be based on opal spec"92		exit 193	fi94	package_name=@unique-nft/rc-types95	repo_branch=rc96	repo_tag=$repo_branch97fi98if test "$sapphire" = 1; then99	if "$spec_name" != opal; then100		echo "sapphire types can only be based on opal spec"101		exit 1102	fi103	package_name=@unique-nft/sapphire-mainnet-types104	repo_branch=sapphire-mainnet105	repo_tag=$repo_branch106fi107108package_version=${spec_version:0:3}.$(echo ${spec_version:3:3} | sed 's/^0*//').109last_patch=NEVER110for tag in $(git ls-remote -t --refs $GIT_REPO | cut -f 2 | sort -r); do111	tag_prefix=refs/tags/$repo_tag-v$package_version112	if [[ $tag == $tag_prefix* ]]; then113		last_patch=${tag#$tag_prefix}114		break;115	fi116done117echo "Package version: ${package_version}X, name: $package_name"118echo "Last published: $package_version$last_patch"119120if test "$last_patch" = "NEVER"; then121	new_package_version=${package_version}0122else123	new_package_version=${package_version}$((last_patch+1))124fi125package_version=${package_version}$last_patch126echo "New package version: $new_package_version"127128pjsapi_ver=^$(cat $DIR/../package.json | jq -r '.dependencies."@polkadot/api"' | sed -e "s/^\^//")129tsnode_ver=^$(cat $DIR/../package.json | jq -r '.devDependencies."ts-node"' | sed -e "s/^\^//")130ts_ver=^$(cat $DIR/../package.json | jq -r '.devDependencies."typescript"' | sed -e "s/^\^//")131132gen=$(mktemp -d)133pushd $gen134git clone $GIT_REPO -b $repo_branch --depth 1 .135if test "$last_patch" != "NEVER"; then136	git reset --hard $repo_tag-v$package_version137fi138git rm -r "*"139popd140141# Using old package_version here, becaue we first check if142# there is any difference between generated and already uplaoded types143cat $TEMPLATE/package.json \144| jq '.private = false' - \145| jq '.name = "'$package_name'"' - \146| jq '.version = "'$package_version'"' - \147| jq '.peerDependencies."@polkadot/api" = "'$pjsapi_ver'"' - \148| jq '.peerDependencies."@polkadot/types" = "'$pjsapi_ver'"' - \149| jq '.devDependencies."@polkadot/api" = "'$pjsapi_ver'"' - \150| jq '.devDependencies."@polkadot/types" = "'$pjsapi_ver'"' - \151| jq '.devDependencies."ts-node" = "'$tsnode_ver'"' - \152| jq '.devDependencies."typescript" = "'$ts_ver'"' - \153> $gen/package.json154for file in .gitignore .npmignore README.md tsconfig.json; do155	cp $TEMPLATE/$file $gen/156done157package_name_replacement=$(printf '%s\n' "$package_name" | sed -e 's/[\/&]/\\&/g')158sed -i 's/PKGNAME/'$package_name_replacement'/' $gen/README.md159160rsync -ar --exclude .gitignore src/interfaces/ $gen161for file in $gen/augment-* $gen/**/types.ts $gen/registry.ts; do162	sed -i '1s;^;//@ts-nocheck\n;' $file163done164165pushd $gen166git add .167popd168169pushd $gen170if git diff --quiet HEAD && test ! "$force"; then171	echo "no changes detected"172	exit 0173fi174popd175176mv $gen/package.json $gen/package.old.json177cat $gen/package.old.json \178| jq '.version = "'$new_package_version'"' - \179> $gen/package.json180rm $gen/package.old.json181pushd $gen182git add package.json183popd184185echo "package.json contents:"186cat $gen/package.json187echo "overall diff:"188pushd $gen189git status190git diff HEAD || true191popd192193# This check is only active if running in interactive terminal194if [ -t 0 ]; then195	read -p "Is everything ok at $gen [y/n]? " -n 1 -r196	echo197	if [[ ! $REPLY =~ ^[Yy]$ ]]; then198		echo "Aborting!"199		exit 1200	fi201fi202203pushd $gen204yarn205yarn prepublish206git commit -m "chore: upgrade types to v$new_package_version"207git tag --force $repo_tag-v$new_package_version208if test "$push" = 1; then209	git push --tags --force -u origin HEAD210else211	echo "--push not given, origin repo left intact"212	echo "To publish manually, go to $gen, and run \"git push --tags --force -u origin HEAD\""213fi214popd