Skip to content

[master] Update dependencies from dotnet/arcade #3972

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -99,25 +99,25 @@
</Dependency>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="6.0.0-beta.20630.2">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="6.0.0-beta.21058.3">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c8515c18ebe0071c32fed467ee3890fbd488898</Sha>
<Sha>1571d6b095014ad63fdb48b10f5dea912f96872e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.CodeAnalysis" Version="6.0.0-beta.20630.2">
<Dependency Name="Microsoft.DotNet.CodeAnalysis" Version="6.0.0-beta.21058.3">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c8515c18ebe0071c32fed467ee3890fbd488898</Sha>
<Sha>1571d6b095014ad63fdb48b10f5dea912f96872e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="6.0.0-beta.20630.2">
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="6.0.0-beta.21058.3">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c8515c18ebe0071c32fed467ee3890fbd488898</Sha>
<Sha>1571d6b095014ad63fdb48b10f5dea912f96872e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.ApiCompat" Version="6.0.0-beta.20630.2">
<Dependency Name="Microsoft.DotNet.ApiCompat" Version="6.0.0-beta.21058.3">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c8515c18ebe0071c32fed467ee3890fbd488898</Sha>
<Sha>1571d6b095014ad63fdb48b10f5dea912f96872e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.GenAPI" Version="6.0.0-beta.20630.2">
<Dependency Name="Microsoft.DotNet.GenAPI" Version="6.0.0-beta.21058.3">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>4c8515c18ebe0071c32fed467ee3890fbd488898</Sha>
<Sha>1571d6b095014ad63fdb48b10f5dea912f96872e</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
6 changes: 3 additions & 3 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,9 @@
</PropertyGroup>
<!-- Packages that come from https://github.com/dotnet/arcade -->
<PropertyGroup>
<MicrosoftDotNetApiCompatVersion>6.0.0-beta.20630.2</MicrosoftDotNetApiCompatVersion>
<MicrosoftDotNetCodeAnalysisPackageVersion>6.0.0-beta.20630.2</MicrosoftDotNetCodeAnalysisPackageVersion>
<MicrosoftDotNetGenAPIVersion>6.0.0-beta.20630.2</MicrosoftDotNetGenAPIVersion>
<MicrosoftDotNetApiCompatVersion>6.0.0-beta.21058.3</MicrosoftDotNetApiCompatVersion>
<MicrosoftDotNetCodeAnalysisPackageVersion>6.0.0-beta.21058.3</MicrosoftDotNetCodeAnalysisPackageVersion>
<MicrosoftDotNetGenAPIVersion>6.0.0-beta.21058.3</MicrosoftDotNetGenAPIVersion>
</PropertyGroup>
<!-- Packages that come from https://github.com/dotnet/corefxlab -->
<PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion eng/common/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ runtime_source_feed_key=''

properties=''
while [[ $# > 0 ]]; do
opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-help|-h)
usage
Expand Down
2 changes: 1 addition & 1 deletion eng/common/cross/build-android-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ __AndroidToolchain=aarch64-linux-android

for i in "$@"
do
lowerI="$(echo $i | awk '{print tolower($0)}')"
lowerI="$(echo $i | tr "[:upper:]" "[:lower:]")"
case $lowerI in
-?|-h|--help)
usage
Expand Down
2 changes: 1 addition & 1 deletion eng/common/cross/build-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ while :; do
break
fi

lowerI="$(echo $1 | awk '{print tolower($0)}')"
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
case $lowerI in
-?|-h|--help)
usage
Expand Down
2 changes: 1 addition & 1 deletion eng/common/darc-init.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ versionEndpoint='https://maestro-prod.westus2.cloudapp.azure.com/api/assets/darc
verbosity='minimal'

while [[ $# > 0 ]]; do
opt="$(echo "$1" | awk '{print tolower($0)}')"
opt="$(echo "$1" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
--darcversion)
darcVersion=$2
Expand Down
2 changes: 1 addition & 1 deletion eng/common/dotnet-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ runtime='dotnet'
runtimeSourceFeed=''
runtimeSourceFeedKey=''
while [[ $# > 0 ]]; do
opt="$(echo "$1" | awk '{print tolower($0)}')"
opt="$(echo "$1" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-version|-v)
shift
Expand Down
113 changes: 89 additions & 24 deletions eng/common/init-tools-native.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ declare -A native_assets
. $scriptroot/native/common-library.sh

while (($# > 0)); do
lowerI="$(echo $1 | awk '{print tolower($0)}')"
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
case $lowerI in
--baseuri)
base_uri=$2
Expand Down Expand Up @@ -76,24 +76,89 @@ while (($# > 0)); do
done

function ReadGlobalJsonNativeTools {
# Get the native-tools section from the global.json.
local native_tools_section=$(cat $global_json_file | awk '/"native-tools"/,/}/')
# Only extract the contents of the object.
local native_tools_list=$(echo $native_tools_section | awk -F"[{}]" '{print $2}')
native_tools_list=${native_tools_list//[\" ]/}
native_tools_list=$( echo "$native_tools_list" | sed 's/\s//g' | sed 's/,/\n/g' )

local old_IFS=$IFS
while read -r line; do
# Lines are of the form: 'tool:version'
IFS=:
while read -r key value; do
native_assets[$key]=$value
done <<< "$line"
done <<< "$native_tools_list"
IFS=$old_IFS

return 0;
# happy path: we have a proper JSON parsing tool `jq(1)` in PATH!
if command -v jq &> /dev/null; then

# jq: read each key/value pair under "native-tools" entry and emit:
# KEY="<entry-key>" VALUE="<entry-value>"
# followed by a null byte.
#
# bash: read line with null byte delimeter and push to array (for later `eval`uation).

while IFS= read -rd '' line; do
native_assets+=("$line")
done < <(jq -r '. |
select(has("native-tools")) |
."native-tools" |
keys[] as $k |
@sh "KEY=\($k) VALUE=\(.[$k])\u0000"' "$global_json_file")

return
fi

# Warning: falling back to manually parsing JSON, which is not recommended.

# Following routine matches the output and escaping logic of jq(1)'s @sh formatter used above.
# It has been tested with several weird strings with escaped characters in entries (key and value)
# and results were compared with the output of jq(1) in binary representation using xxd(1);
# just before the assignment to 'native_assets' array (above and below).

# try to capture the section under "native-tools".
if [[ ! "$(cat "$global_json_file")" =~ \"native-tools\"[[:space:]\:\{]*([^\}]+) ]]; then
return
fi

section="${BASH_REMATCH[1]}"

parseStarted=0
possibleEnd=0
escaping=0
escaped=0
isKey=1

for (( i=0; i<${#section}; i++ )); do
char="${section:$i:1}"
if ! ((parseStarted)) && [[ "$char" =~ [[:space:],:] ]]; then continue; fi

if ! ((escaping)) && [[ "$char" == "\\" ]]; then
escaping=1
elif ((escaping)) && ! ((escaped)); then
escaped=1
fi

if ! ((parseStarted)) && [[ "$char" == "\"" ]]; then
parseStarted=1
possibleEnd=0
elif [[ "$char" == "'" ]]; then
token="$token'\\\''"
possibleEnd=0
elif ((escaping)) || [[ "$char" != "\"" ]]; then
token="$token$char"
possibleEnd=1
fi

if ((possibleEnd)) && ! ((escaping)) && [[ "$char" == "\"" ]]; then
# Use printf to unescape token to match jq(1)'s @sh formatting rules.
# do not use 'token="$(printf "$token")"' syntax, as $() eats the trailing linefeed.
printf -v token "'$token'"

if ((isKey)); then
KEY="$token"
isKey=0
else
line="KEY=$KEY VALUE=$token"
native_assets+=("$line")
isKey=1
fi

# reset for next token
parseStarted=0
token=
elif ((escaping)) && ((escaped)); then
escaping=0
escaped=0
fi
done
}

native_base_dir=$install_directory
Expand All @@ -111,14 +176,14 @@ if [[ ${#native_assets[@]} -eq 0 ]]; then
exit 0;
else
native_installer_dir="$scriptroot/native"
for tool in "${!native_assets[@]}"
do
tool_version=${native_assets[$tool]}
installer_path="$native_installer_dir/install-$tool.sh"
for index in "${!native_assets[@]}"; do
eval "${native_assets["$index"]}"

installer_path="$native_installer_dir/install-$KEY.sh"
installer_command="$installer_path"
installer_command+=" --baseuri $base_uri"
installer_command+=" --installpath $install_bin"
installer_command+=" --version $tool_version"
installer_command+=" --version $VALUE"
echo $installer_command

if [[ $force = true ]]; then
Expand Down
2 changes: 1 addition & 1 deletion eng/common/internal-feed-operations.sh
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ authToken=''
repoName=''

while [[ $# > 0 ]]; do
opt="$(echo "$1" | awk '{print tolower($0)}')"
opt="$(echo "$1" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
--operation)
operation=$2
Expand Down
2 changes: 1 addition & 1 deletion eng/common/msbuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ prepare_machine=false
extra_args=''

while (($# > 0)); do
lowerI="$(echo $1 | awk '{print tolower($0)}')"
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
case $lowerI in
--verbosity)
verbosity=$2
Expand Down
6 changes: 3 additions & 3 deletions eng/common/native/install-cmake-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ download_retries=5
retry_wait_time_seconds=30

while (($# > 0)); do
lowerI="$(echo $1 | awk '{print tolower($0)}')"
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
case $lowerI in
--baseuri)
base_uri=$2
Expand Down Expand Up @@ -63,7 +63,7 @@ done

tool_name="cmake-test"
tool_os=$(GetCurrentOS)
tool_folder=$(echo $tool_os | awk '{print tolower($0)}')
tool_folder="$(echo $tool_os | tr "[:upper:]" "[:lower:]")"
tool_arch="x86_64"
tool_name_moniker="$tool_name-$version-$tool_os-$tool_arch"
tool_install_directory="$install_path/$tool_name/$version"
Expand Down Expand Up @@ -114,4 +114,4 @@ if [[ $? != 0 ]]; then
exit 1
fi

exit 0
exit 0
6 changes: 3 additions & 3 deletions eng/common/native/install-cmake.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ download_retries=5
retry_wait_time_seconds=30

while (($# > 0)); do
lowerI="$(echo $1 | awk '{print tolower($0)}')"
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
case $lowerI in
--baseuri)
base_uri=$2
Expand Down Expand Up @@ -63,7 +63,7 @@ done

tool_name="cmake"
tool_os=$(GetCurrentOS)
tool_folder=$(echo $tool_os | awk '{print tolower($0)}')
tool_folder="$(echo $tool_os | tr "[:upper:]" "[:lower:]")"
tool_arch="x86_64"
tool_name_moniker="$tool_name-$version-$tool_os-$tool_arch"
tool_install_directory="$install_path/$tool_name/$version"
Expand Down Expand Up @@ -114,4 +114,4 @@ if [[ $? != 0 ]]; then
exit 1
fi

exit 0
exit 0
2 changes: 1 addition & 1 deletion eng/common/performance/performance-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ using_wasm=false
use_latest_dotnet=false

while (($# > 0)); do
lowerI="$(echo $1 | awk '{print tolower($0)}')"
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
case $lowerI in
--sourcedirectory)
source_directory=$2
Expand Down
10 changes: 5 additions & 5 deletions eng/common/pipeline-logging-functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ function Write-PipelineTelemetryError {
local function_args=()
local message=''
while [[ $# -gt 0 ]]; do
opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-category|-c)
telemetry_category=$2
Expand Down Expand Up @@ -48,7 +48,7 @@ function Write-PipelineTaskError {
local force=false

while [[ $# -gt 0 ]]; do
opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-type|-t)
message_type=$2
Expand Down Expand Up @@ -122,7 +122,7 @@ function Write-PipelineSetVariable {
local is_multi_job_variable=true

while [[ $# -gt 0 ]]; do
opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-name|-n)
name=$2
Expand Down Expand Up @@ -164,7 +164,7 @@ function Write-PipelinePrependPath {
local prepend_path=''

while [[ $# -gt 0 ]]; do
opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-path|-p)
prepend_path=$2
Expand All @@ -186,7 +186,7 @@ function Write-PipelineSetResult {
local message=''

while [[ $# -gt 0 ]]; do
opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
-result|-r)
result=$2
Expand Down
7 changes: 7 additions & 0 deletions eng/common/templates/job/publish-build-assets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ jobs:
- name: _BuildConfig
value: ${{ parameters.configuration }}
- group: Publish-Build-Assets
- group: AzureDevOps-Artifact-Feeds-Pats
# Skip component governance and codesign validation for SDL. These jobs
# create no content.
- name: skipComponentGovernanceDetection
Expand All @@ -57,6 +58,12 @@ jobs:
- ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
- task: NuGetAuthenticate@0

- task: PowerShell@2
displayName: Enable cross-org NuGet feed authentication
inputs:
filePath: $(Build.SourcesDirectory)/eng/common/enable-cross-org-publishing.ps1
arguments: -token $(dn-bot-all-orgs-artifact-feeds-rw)

- task: PowerShell@2
displayName: Publish Build Assets
inputs:
Expand Down
Loading