refactor(ci): decouple from upstream Parity infrastructure
Replace Parity-specific infrastructure dependencies with Pezkuwi's own: - S3 release uploads → GitHub Releases (gh CLI) - parity-zombienet runner labels → pezkuwi-runner - Grafana/Loki log URLs → disabled (use GH artifacts) - Matrix notifications → disabled (pending Pezkuwi Matrix) - paritytech issue links → pezkuwi tracking issues - paritytech Docker image refs → pezkuwi-sdk-frame in cmd.py - Add mirror-ci-image.yml workflow for GHCR image mirroring - Document upstream shared tools (resolc, try-runtime, evm-test-suite)
This commit is contained in:
@@ -118,9 +118,12 @@ set_pezkuwi_teyrchain_binary_version() {
|
||||
}
|
||||
|
||||
|
||||
# Upload release artifacts to GitHub Releases using gh CLI.
|
||||
# Pezkuwi SDK uses GitHub Releases instead of external S3 buckets.
|
||||
#
|
||||
# input: product, version, target
|
||||
# output: none
|
||||
upload_s3_release() {
|
||||
alias aws='podman run --rm -it docker.io/paritytech/awscli -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_BUCKET aws'
|
||||
|
||||
product=$1
|
||||
version=$2
|
||||
target=$3
|
||||
@@ -129,78 +132,50 @@ upload_s3_release() {
|
||||
echo "Working on version: $version "
|
||||
echo "Working on platform: $target "
|
||||
|
||||
URL_BASE=$(get_s3_url_base $product)
|
||||
|
||||
echo "Current content, should be empty on new uploads:"
|
||||
aws s3 ls "s3://${URL_BASE}/${version}/${target}" --recursive --human-readable --summarize || true
|
||||
echo "Content to be uploaded:"
|
||||
artifacts="release-artifacts/$target/$product/"
|
||||
echo "Content to be uploaded:"
|
||||
ls "$artifacts"
|
||||
aws s3 sync --acl public-read "$artifacts" "s3://${URL_BASE}/${version}/${target}"
|
||||
echo "Uploaded files:"
|
||||
aws s3 ls "s3://${URL_BASE}/${version}/${target}" --recursive --human-readable --summarize
|
||||
echo "✅ The release should be at https://${URL_BASE}/${version}/${target}"
|
||||
|
||||
# Upload each artifact to the GitHub Release
|
||||
for file in "$artifacts"/*; do
|
||||
[ -f "$file" ] || continue
|
||||
echo "Uploading: $file"
|
||||
gh release upload "$version" "$file" --clobber || true
|
||||
done
|
||||
|
||||
echo "✅ Release artifacts uploaded to https://github.com/pezkuwichain/pezkuwi-sdk/releases/tag/${version}"
|
||||
}
|
||||
|
||||
# Upload runtimes artifacts to s3 release bucket
|
||||
# Upload runtimes artifacts to GitHub Releases.
|
||||
#
|
||||
# input: version (stable release tag e.g. pezkuwi-stable2412 or pezkuwi-stable2412-rc1)
|
||||
# output: none
|
||||
upload_s3_runtimes_release_artifacts() {
|
||||
alias aws='podman run --rm -it docker.io/paritytech/awscli -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_BUCKET aws'
|
||||
|
||||
version=$1
|
||||
|
||||
echo "Working on version: $version "
|
||||
|
||||
echo "Current content, should be empty on new uploads:"
|
||||
aws s3 ls "s3://releases.parity.io/pezkuwi/runtimes/${version}/" --recursive --human-readable --summarize || true
|
||||
echo "Content to be uploaded:"
|
||||
artifacts="artifacts/runtimes/"
|
||||
echo "Content to be uploaded:"
|
||||
ls "$artifacts"
|
||||
aws s3 sync --acl public-read "$artifacts" "s3://releases.parity.io/pezkuwi/runtimes/${version}/"
|
||||
echo "Uploaded files:"
|
||||
aws s3 ls "s3://releases.parity.io/pezkuwi/runtimes/${version}/" --recursive --human-readable --summarize
|
||||
echo "✅ The release should be at https://releases.parity.io/pezkuwi/runtimes/${version}"
|
||||
|
||||
# Create release if it doesn't exist
|
||||
gh release view "$version" &>/dev/null || \
|
||||
gh release create "$version" --title "$version" --notes "Runtime release $version" --draft
|
||||
|
||||
for file in "$artifacts"/*; do
|
||||
[ -f "$file" ] || continue
|
||||
echo "Uploading: $file"
|
||||
gh release upload "$version" "$file" --clobber || true
|
||||
done
|
||||
|
||||
echo "✅ Runtimes uploaded to https://github.com/pezkuwichain/pezkuwi-sdk/releases/tag/${version}"
|
||||
}
|
||||
|
||||
|
||||
# Pass the name of the binary as input, it will
|
||||
# return the s3 base url
|
||||
# return the GitHub release download base URL
|
||||
function get_s3_url_base() {
|
||||
name=$1
|
||||
case $name in
|
||||
pezkuwi | pezkuwi-execute-worker | pezkuwi-prepare-worker )
|
||||
printf "releases.parity.io/pezkuwi"
|
||||
;;
|
||||
|
||||
pezkuwi-teyrchain)
|
||||
printf "releases.parity.io/pezkuwi-teyrchain"
|
||||
;;
|
||||
|
||||
pezkuwi-omni-node)
|
||||
printf "releases.parity.io/pezkuwi-omni-node"
|
||||
;;
|
||||
|
||||
chain-spec-builder)
|
||||
printf "releases.parity.io/chain-spec-builder"
|
||||
;;
|
||||
|
||||
frame-omni-bencher)
|
||||
printf "releases.parity.io/frame-omni-bencher"
|
||||
;;
|
||||
substrate-node)
|
||||
printf "releases.parity.io/substrate-node"
|
||||
;;
|
||||
eth-rpc)
|
||||
printf "releases.parity.io/eth-rpc"
|
||||
;;
|
||||
subkey)
|
||||
printf "releases.parity.io/subkey"
|
||||
;;
|
||||
*)
|
||||
printf "UNSUPPORTED BINARY $name"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
# All binaries are now served from GitHub Releases
|
||||
printf "github.com/pezkuwichain/pezkuwi-sdk/releases/download"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user