dotnet-sdk: update.sh - allow early exit.
If updating to the latest version, and the local expression already is the latest version, exit without regenerating everything.
This commit is contained in:
parent
b93a1f4538
commit
a9fc578fe7
1 changed files with 16 additions and 1 deletions
|
@ -297,17 +297,32 @@ Examples:
|
||||||
major_minor=$(sed 's/^\([0-9]*\.[0-9]*\).*$/\1/' <<< "$sem_version")
|
major_minor=$(sed 's/^\([0-9]*\.[0-9]*\).*$/\1/' <<< "$sem_version")
|
||||||
content=$(curl -sL https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/"$major_minor"/releases.json)
|
content=$(curl -sL https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/"$major_minor"/releases.json)
|
||||||
major_minor_patch=$([ "$patch_specified" == true ] && echo "$sem_version" || jq -r '."latest-release"' <<< "$content")
|
major_minor_patch=$([ "$patch_specified" == true ] && echo "$sem_version" || jq -r '."latest-release"' <<< "$content")
|
||||||
|
major_minor_underscore=${major_minor/./_}
|
||||||
|
|
||||||
release_content=$(release "$content" "$major_minor_patch")
|
release_content=$(release "$content" "$major_minor_patch")
|
||||||
aspnetcore_version=$(jq -r '."aspnetcore-runtime".version' <<< "$release_content")
|
aspnetcore_version=$(jq -r '."aspnetcore-runtime".version' <<< "$release_content")
|
||||||
runtime_version=$(jq -r '.runtime.version' <<< "$release_content")
|
runtime_version=$(jq -r '.runtime.version' <<< "$release_content")
|
||||||
sdk_version=$(jq -r '.sdk.version' <<< "$release_content")
|
sdk_version=$(jq -r '.sdk.version' <<< "$release_content")
|
||||||
|
|
||||||
|
# If patch was not specified, check if the package is already the latest version
|
||||||
|
# If it is, exit early
|
||||||
|
if [ "$patch_specified" == false ] && [ -f "./versions/${sem_version}.nix" ]; then
|
||||||
|
current_version=$(nix-instantiate --eval -E "(import ./versions/${sem_version}.nix { \
|
||||||
|
buildAspNetCore = { ... }: {}; \
|
||||||
|
buildNetRuntime = { ... }: {}; \
|
||||||
|
buildNetSdk = { version, ... }: version; \
|
||||||
|
icu = null; }).sdk_${major_minor_underscore}" | jq -r)
|
||||||
|
|
||||||
|
if [[ "$current_version" == "$sdk_version" ]]; then
|
||||||
|
echo "Nothing to update."
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
aspnetcore_files="$(release_files "$release_content" "aspnetcore-runtime")"
|
aspnetcore_files="$(release_files "$release_content" "aspnetcore-runtime")"
|
||||||
runtime_files="$(release_files "$release_content" "runtime")"
|
runtime_files="$(release_files "$release_content" "runtime")"
|
||||||
sdk_files="$(release_files "$release_content" "sdk")"
|
sdk_files="$(release_files "$release_content" "sdk")"
|
||||||
|
|
||||||
major_minor_underscore=${major_minor/./_}
|
|
||||||
channel_version=$(jq -r '."channel-version"' <<< "$content")
|
channel_version=$(jq -r '."channel-version"' <<< "$content")
|
||||||
support_phase=$(jq -r '."support-phase"' <<< "$content")
|
support_phase=$(jq -r '."support-phase"' <<< "$content")
|
||||||
echo "{ buildAspNetCore, buildNetRuntime, buildNetSdk, icu }:
|
echo "{ buildAspNetCore, buildNetRuntime, buildNetSdk, icu }:
|
||||||
|
|
Loading…
Reference in a new issue