mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 18:07:58 +00:00
5cb929a130
* cli: revert borked kusama chain on startup * Docs. * cli: fix reversal of bork kusama fork * cli: force always can author * Version bump * service: support setting fork blocks in config * service: add support for bad blocks extension * service: add badBlocks to kusama chainspec * Bump Substrate to hotfix version. * service: add bad block to kusama chain spec * cleanup kusama hotfix * add kusama grandpa hotfix * Bump substrate * Bump spec_version * Rebump * cli: remove unnecessary dependencies * service: revert can_author_with fix * service: remove unnecessary method * Don't try to track polkadot runtime verion yet * Versions * service: better grandpa fix detection Co-authored-by: André Silva <andre.beat@gmail.com>
120 lines
3.0 KiB
Bash
Executable File
120 lines
3.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
#
|
|
# check for any changes in the ^runtime/ tree. if there are any changes found,
|
|
# it should mark the PR B2-breaksapi and "auto-fail" the PR if there
|
|
# isn't a change in the runtime/{kusama,polkadot}/src/lib.rs file that alters
|
|
# the version.
|
|
|
|
set -e # fail on any error
|
|
|
|
|
|
# give some context
|
|
git log --graph --oneline --decorate=short -n 10
|
|
|
|
# make sure the master branch is available in shallow clones
|
|
git fetch --depth=${GIT_DEPTH:-100} origin master
|
|
|
|
|
|
github_label () {
|
|
echo
|
|
echo "# run github-api job for labeling it ${1}"
|
|
curl -sS -X POST \
|
|
-F "token=${CI_JOB_TOKEN}" \
|
|
-F "ref=master" \
|
|
-F "variables[LABEL]=${1}" \
|
|
-F "variables[PRNO]=${CI_COMMIT_REF_NAME}" \
|
|
-F "variables[PROJECT]=paritytech/polkadot" \
|
|
${GITLAB_API}/projects/${GITHUB_API_PROJECT}/trigger/pipeline
|
|
}
|
|
|
|
|
|
# Introduce runtime/polkadot/src/lib.rs once Polkadot mainnet is live.
|
|
for VERSIONS_FILE in runtime/kusama/src/lib.rs
|
|
do
|
|
# check if the wasm sources changed
|
|
if ! git diff --name-only origin/master...${CI_COMMIT_SHA} \
|
|
| grep -q -e '^runtime/'
|
|
then
|
|
cat <<-EOT
|
|
|
|
no changes to the runtime source code detected
|
|
|
|
EOT
|
|
|
|
continue
|
|
fi
|
|
|
|
|
|
|
|
# check for spec_version updates: if the spec versions changed, then there is
|
|
# consensus-critical logic that has changed. the runtime wasm blobs must be
|
|
# rebuilt.
|
|
|
|
add_spec_version="$(git diff origin/master...${CI_COMMIT_SHA} ${VERSIONS_FILE} \
|
|
| sed -n -r "s/^\+[[:space:]]+spec_version: +([0-9]+),$/\1/p")"
|
|
sub_spec_version="$(git diff origin/master...${CI_COMMIT_SHA} ${VERSIONS_FILE} \
|
|
| sed -n -r "s/^\-[[:space:]]+spec_version: +([0-9]+),$/\1/p")"
|
|
|
|
|
|
# see if the version and the binary blob changed
|
|
if [ "${add_spec_version}" != "${sub_spec_version}" ]
|
|
then
|
|
|
|
github_label "B2-breaksapi"
|
|
|
|
cat <<-EOT
|
|
|
|
changes to the runtime sources and changes in the spec version.
|
|
|
|
spec_version: ${sub_spec_version} -> ${add_spec_version}
|
|
|
|
EOT
|
|
continue
|
|
|
|
else
|
|
# check for impl_version updates: if only the impl versions changed, we assume
|
|
# there is no consensus-critical logic that has changed.
|
|
|
|
add_impl_version="$(git diff origin/master...${CI_COMMIT_SHA} ${VERSIONS_FILE} \
|
|
| sed -n -r 's/^\+[[:space:]]+impl_version: +([0-9]+),$/\1/p')"
|
|
sub_impl_version="$(git diff origin/master...${CI_COMMIT_SHA} ${VERSIONS_FILE} \
|
|
| sed -n -r 's/^\-[[:space:]]+impl_version: +([0-9]+),$/\1/p')"
|
|
|
|
|
|
# see if the impl version changed
|
|
if [ "${add_impl_version}" != "${sub_impl_version}" ]
|
|
then
|
|
cat <<-EOT
|
|
|
|
changes to the runtime sources and changes in the impl version.
|
|
|
|
impl_version: ${sub_impl_version} -> ${add_impl_version}
|
|
|
|
EOT
|
|
continue
|
|
fi
|
|
|
|
|
|
cat <<-EOT
|
|
|
|
wasm source files changed but not the spec/impl version and the runtime
|
|
binary blob. If changes made do not alter logic, just bump 'impl_version'.
|
|
If they do change logic, bump 'spec_version' and rebuild wasm.
|
|
|
|
source file directories:
|
|
- runtime
|
|
|
|
versions file: ${VERSIONS_FILE}
|
|
|
|
EOT
|
|
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
|
|
exit 0
|
|
|
|
# vim: noexpandtab
|