mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 02:57:57 +00:00
002d9260f9
**Update:** Pushed additional changes based on the review comments. **This pull request fixes various spelling mistakes in this repository.** Most of the changes are contained in the first **3** commits: - `Fix spelling mistakes in comments and docs` - `Fix spelling mistakes in test names` - `Fix spelling mistakes in error messages, panic messages, logs and tracing` Other source code spelling mistakes are separated into individual commits for easier reviewing: - `Fix the spelling of 'authority'` - `Fix the spelling of 'REASONABLE_HEADERS_IN_JUSTIFICATION_ANCESTRY'` - `Fix the spelling of 'prev_enqueud_messages'` - `Fix the spelling of 'endpoint'` - `Fix the spelling of 'children'` - `Fix the spelling of 'PenpalSiblingSovereignAccount'` - `Fix the spelling of 'PenpalSudoAccount'` - `Fix the spelling of 'insufficient'` - `Fix the spelling of 'PalletXcmExtrinsicsBenchmark'` - `Fix the spelling of 'subtracted'` - `Fix the spelling of 'CandidatePendingAvailability'` - `Fix the spelling of 'exclusive'` - `Fix the spelling of 'until'` - `Fix the spelling of 'discriminator'` - `Fix the spelling of 'nonexistent'` - `Fix the spelling of 'subsystem'` - `Fix the spelling of 'indices'` - `Fix the spelling of 'committed'` - `Fix the spelling of 'topology'` - `Fix the spelling of 'response'` - `Fix the spelling of 'beneficiary'` - `Fix the spelling of 'formatted'` - `Fix the spelling of 'UNKNOWN_PROOF_REQUEST'` - `Fix the spelling of 'succeeded'` - `Fix the spelling of 'reopened'` - `Fix the spelling of 'proposer'` - `Fix the spelling of 'InstantiationNonce'` - `Fix the spelling of 'depositor'` - `Fix the spelling of 'expiration'` - `Fix the spelling of 'phantom'` - `Fix the spelling of 'AggregatedKeyValue'` - `Fix the spelling of 'randomness'` - `Fix the spelling of 'defendant'` - `Fix the spelling of 'AquaticMammal'` - `Fix the spelling of 'transactions'` - `Fix the spelling of 'PassingTracingSubscriber'` - `Fix the spelling of 'TxSignaturePayload'` - `Fix the spelling of 'versioning'` - `Fix the spelling of 'descendant'` - `Fix the spelling of 'overridden'` - `Fix the spelling of 'network'` Let me know if this structure is adequate. **Note:** The usage of the words `Merkle`, `Merkelize`, `Merklization`, `Merkelization`, `Merkleization`, is somewhat inconsistent but I left it as it is. ~~**Note:** In some places the term `Receival` is used to refer to message reception, IMO `Reception` is the correct word here, but I left it as it is.~~ ~~**Note:** In some places the term `Overlayed` is used instead of the more acceptable version `Overlaid` but I also left it as it is.~~ ~~**Note:** In some places the term `Applyable` is used instead of the correct version `Applicable` but I also left it as it is.~~ **Note:** Some usage of British vs American english e.g. `judgement` vs `judgment`, `initialise` vs `initialize`, `optimise` vs `optimize` etc. are both present in different places, but I suppose that's understandable given the number of contributors. ~~**Note:** There is a spelling mistake in `.github/CODEOWNERS` but it triggers errors in CI when I make changes to it, so I left it as it is.~~
101 lines
2.9 KiB
Bash
Executable File
101 lines
2.9 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#set -e
|
|
|
|
# This script allows building a Container Image from a Linux
|
|
# binary that is injected into a base-image.
|
|
|
|
ENGINE=${ENGINE:-podman}
|
|
|
|
if [ "$ENGINE" == "podman" ]; then
|
|
PODMAN_FLAGS="--format docker"
|
|
else
|
|
PODMAN_FLAGS=""
|
|
fi
|
|
|
|
CONTEXT=$(mktemp -d)
|
|
REGISTRY=${REGISTRY:-docker.io}
|
|
|
|
# The following line ensure we know the project root
|
|
PROJECT_ROOT=${PROJECT_ROOT:-$(git rev-parse --show-toplevel)}
|
|
DOCKERFILE=${DOCKERFILE:-docker/dockerfiles/binary_injected.Dockerfile}
|
|
VERSION_TOML=$(grep "^version " $PROJECT_ROOT/Cargo.toml | grep -oE "([0-9\.]+-?[0-9]+)")
|
|
|
|
#n The following VAR have default that can be overridden
|
|
DOCKER_OWNER=${DOCKER_OWNER:-parity}
|
|
|
|
# We may get 1..n binaries, comma separated
|
|
BINARY=${BINARY:-polkadot}
|
|
IFS=',' read -r -a BINARIES <<< "$BINARY"
|
|
|
|
VERSION=${VERSION:-$VERSION_TOML}
|
|
ARTIFACTS_FOLDER=${ARTIFACTS_FOLDER:-.}
|
|
|
|
IMAGE=${IMAGE:-${REGISTRY}/${DOCKER_OWNER}/${BINARIES[0]}}
|
|
DESCRIPTION_DEFAULT="Injected Container image built for ${BINARY}"
|
|
DESCRIPTION=${DESCRIPTION:-$DESCRIPTION_DEFAULT}
|
|
|
|
VCS_REF=${VCS_REF:-01234567}
|
|
|
|
# Build the image
|
|
echo "Using engine: $ENGINE"
|
|
echo "Using Dockerfile: $DOCKERFILE"
|
|
echo "Using context: $CONTEXT"
|
|
echo "Building ${IMAGE}:latest container image for ${BINARY} v${VERSION} from ${ARTIFACTS_FOLDER} hang on!"
|
|
echo "ARTIFACTS_FOLDER=$ARTIFACTS_FOLDER"
|
|
echo "CONTEXT=$CONTEXT"
|
|
|
|
# We need all binaries and resources available in the Container build "CONTEXT"
|
|
mkdir -p $CONTEXT/bin
|
|
for bin in "${BINARIES[@]}"
|
|
do
|
|
echo "Copying $ARTIFACTS_FOLDER/$bin to context: $CONTEXT/bin"
|
|
ls -al "$ARTIFACTS_FOLDER/$bin"
|
|
cp -r "$ARTIFACTS_FOLDER/$bin" "$CONTEXT/bin"
|
|
done
|
|
|
|
cp "$PROJECT_ROOT/docker/scripts/entrypoint.sh" "$CONTEXT"
|
|
|
|
if [[ "$BINARY" == "polkadot-parachain" ]]; then
|
|
mkdir -p "$CONTEXT/specs"
|
|
echo "Copying parachains chain-specs from $ARTIFACTS_FOLDER/specs to context: $CONTEXT/specs"
|
|
ls -al "$ARTIFACTS_FOLDER/specs"
|
|
cp -r "$ARTIFACTS_FOLDER/specs" "$CONTEXT/specs"
|
|
fi
|
|
|
|
echo "Building image: ${IMAGE}"
|
|
|
|
TAGS=${TAGS[@]:-latest}
|
|
IFS=',' read -r -a TAG_ARRAY <<< "$TAGS"
|
|
TAG_ARGS=" "
|
|
|
|
echo "The image ${IMAGE} will be tagged with ${TAG_ARRAY[*]}"
|
|
for tag in "${TAG_ARRAY[@]}"; do
|
|
TAG_ARGS+="--tag ${IMAGE}:${tag} "
|
|
done
|
|
|
|
echo "$TAG_ARGS"
|
|
|
|
# time \
|
|
$ENGINE build \
|
|
${PODMAN_FLAGS} \
|
|
--build-arg VCS_REF="${VCS_REF}" \
|
|
--build-arg BUILD_DATE=$(date -u '+%Y-%m-%dT%H:%M:%SZ') \
|
|
--build-arg IMAGE_NAME="${IMAGE}" \
|
|
--build-arg BINARY="${BINARY}" \
|
|
--build-arg ARTIFACTS_FOLDER="${ARTIFACTS_FOLDER}" \
|
|
--build-arg DESCRIPTION="${DESCRIPTION}" \
|
|
${TAG_ARGS} \
|
|
-f "${PROJECT_ROOT}/${DOCKERFILE}" \
|
|
${CONTEXT}
|
|
|
|
echo "Your Container image for ${IMAGE} is ready"
|
|
$ENGINE images
|
|
|
|
if [[ -z "${SKIP_IMAGE_VALIDATION}" ]]; then
|
|
echo "Check the image ${IMAGE}:${TAG_ARRAY[0]}"
|
|
$ENGINE run --rm -i "${IMAGE}:${TAG_ARRAY[0]}" --version
|
|
|
|
echo "Query binaries"
|
|
$ENGINE run --rm -i --entrypoint /bin/bash "${IMAGE}:${TAG_ARRAY[0]}" -c "echo BINARY: ${BINARY}"
|
|
fi
|