Skip to content

Commit e3d70b0

Browse files
[main] Update dependencies from dotnet/arcade (#336)
[main] Update dependencies from dotnet/arcade
1 parent f8fde62 commit e3d70b0

14 files changed

+570
-49
lines changed

eng/Version.Details.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@
99
</Dependency>
1010
</ProductDependencies>
1111
<ToolsetDependencies>
12-
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.24626.1">
12+
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25120.6">
1313
<Uri>https://github.com/dotnet/arcade</Uri>
14-
<Sha>ae8d2a08f1021624ae37cdd5b65f6c05e58a051b</Sha>
14+
<Sha>ecdb2f499cb5f5c99b58fba1a14fdf977c56e1ac</Sha>
1515
</Dependency>
1616
<!-- Intermediate is necessary for source build. -->
17-
<Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="10.0.0-beta.24626.1">
17+
<Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="10.0.0-beta.25120.6">
1818
<Uri>https://github.com/dotnet/arcade</Uri>
19-
<Sha>ae8d2a08f1021624ae37cdd5b65f6c05e58a051b</Sha>
19+
<Sha>ecdb2f499cb5f5c99b58fba1a14fdf977c56e1ac</Sha>
2020
<SourceBuild RepoName="arcade" ManagedOnly="true" />
2121
</Dependency>
2222
</ToolsetDependencies>

eng/common/core-templates/job/publish-build-assets.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,11 @@ jobs:
7676
fetchDepth: 3
7777
clean: true
7878

79-
- task: DownloadBuildArtifacts@0
80-
displayName: Download artifact
79+
- task: DownloadPipelineArtifact@2
80+
displayName: Download Asset Manifests
8181
inputs:
8282
artifactName: AssetManifests
83-
downloadPath: '$(Build.StagingDirectory)/Download'
84-
checkDownloadedFiles: true
83+
targetPath: '$(Build.StagingDirectory)/AssetManifests'
8584
condition: ${{ parameters.condition }}
8685
continueOnError: ${{ parameters.continueOnError }}
8786

@@ -95,7 +94,7 @@ jobs:
9594
scriptLocation: scriptPath
9695
scriptPath: $(Build.SourcesDirectory)/eng/common/sdk-task.ps1
9796
arguments: -task PublishBuildAssets -restore -msbuildEngine dotnet
98-
/p:ManifestsPath='$(Build.StagingDirectory)/Download/AssetManifests'
97+
/p:ManifestsPath='$(Build.StagingDirectory)/AssetManifests'
9998
/p:MaestroApiEndpoint=https://maestro.dot.net
10099
/p:PublishUsingPipelines=${{ parameters.publishUsingPipelines }}
101100
/p:OfficialBuildId=$(Build.BuildNumber)

eng/common/core-templates/post-build/post-build.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@ parameters:
4444
displayName: Publish installers and checksums
4545
type: boolean
4646
default: true
47+
48+
- name: requireDefaultChannels
49+
displayName: Fail the build if there are no default channel(s) registrations for the current build
50+
type: boolean
51+
default: false
4752

4853
- name: SDLValidationParameters
4954
type: object
@@ -312,5 +317,6 @@ stages:
312317
-PublishingInfraVersion ${{ parameters.publishingInfraVersion }}
313318
-AzdoToken '$(System.AccessToken)'
314319
-WaitPublishingFinish true
320+
-RequireDefaultChannels ${{ parameters.requireDefaultChannels }}
315321
-ArtifactsPublishingAdditionalParameters '${{ parameters.artifactsPublishingAdditionalParameters }}'
316322
-SymbolPublishingAdditionalParameters '${{ parameters.symbolPublishingAdditionalParameters }}'

eng/common/core-templates/steps/source-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ steps:
3737
# in the default public locations.
3838
internalRuntimeDownloadArgs=
3939
if [ '$(dotnetbuilds-internal-container-read-token-base64)' != '$''(dotnetbuilds-internal-container-read-token-base64)' ]; then
40-
internalRuntimeDownloadArgs='/p:DotNetRuntimeSourceFeed=https://dotnetbuilds.blob.core.windows.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) --runtimesourcefeed https://dotnetbuilds.blob.core.windows.net/internal --runtimesourcefeedkey $(dotnetbuilds-internal-container-read-token-base64)'
40+
internalRuntimeDownloadArgs='/p:DotNetRuntimeSourceFeed=https://ci.dot.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) --runtimesourcefeed https://ci.dot.net/internal --runtimesourcefeedkey $(dotnetbuilds-internal-container-read-token-base64)'
4141
fi
4242
4343
buildConfig=Release

eng/common/cross/build-rootfs.sh

Lines changed: 93 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ set -e
55
usage()
66
{
77
echo "Usage: $0 [BuildArch] [CodeName] [lldbx.y] [llvmx[.y]] [--skipunmount] --rootfsdir <directory>]"
8-
echo "BuildArch can be: arm(default), arm64, armel, armv6, ppc64le, riscv64, s390x, x64, x86"
8+
echo "BuildArch can be: arm(default), arm64, armel, armv6, loongarch64, ppc64le, riscv64, s390x, x64, x86"
99
echo "CodeName - optional, Code name for Linux, can be: xenial(default), zesty, bionic, alpine"
1010
echo " for alpine can be specified with version: alpineX.YY or alpineedge"
1111
echo " for FreeBSD can be: freebsd13, freebsd14"
@@ -15,6 +15,7 @@ usage()
1515
echo "llvmx[.y] - optional, LLVM version for LLVM related packages."
1616
echo "--skipunmount - optional, will skip the unmount of rootfs folder."
1717
echo "--skipsigcheck - optional, will skip package signature checks (allowing untrusted packages)."
18+
echo "--skipemulation - optional, will skip qemu and debootstrap requirement when building environment for debian based systems."
1819
echo "--use-mirror - optional, use mirror URL to fetch resources, when available."
1920
echo "--jobs N - optional, restrict to N jobs."
2021
exit 1
@@ -127,10 +128,12 @@ __AlpineKeys='
127128
616adfeb:MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAq0BFD1D4lIxQcsqEpQzU\npNCYM3aP1V/fxxVdT4DWvSI53JHTwHQamKdMWtEXetWVbP5zSROniYKFXd/xrD9X\n0jiGHey3lEtylXRIPxe5s+wXoCmNLcJVnvTcDtwx/ne2NLHxp76lyc25At+6RgE6\nADjLVuoD7M4IFDkAsd8UQ8zM0Dww9SylIk/wgV3ZkifecvgUQRagrNUdUjR56EBZ\nraQrev4hhzOgwelT0kXCu3snbUuNY/lU53CoTzfBJ5UfEJ5pMw1ij6X0r5S9IVsy\nKLWH1hiO0NzU2c8ViUYCly4Fe9xMTFc6u2dy/dxf6FwERfGzETQxqZvSfrRX+GLj\n/QZAXiPg5178hT/m0Y3z5IGenIC/80Z9NCi+byF1WuJlzKjDcF/TU72zk0+PNM/H\nKuppf3JT4DyjiVzNC5YoWJT2QRMS9KLP5iKCSThwVceEEg5HfhQBRT9M6KIcFLSs\nmFjx9kNEEmc1E8hl5IR3+3Ry8G5/bTIIruz14jgeY9u5jhL8Vyyvo41jgt9sLHR1\n/J1TxKfkgksYev7PoX6/ZzJ1ksWKZY5NFoDXTNYUgzFUTOoEaOg3BAQKadb3Qbbq\nXIrxmPBdgrn9QI7NCgfnAY3Tb4EEjs3ON/BNyEhUENcXOH6I1NbcuBQ7g9P73kE4\nVORdoc8MdJ5eoKBpO8Ww8HECAwEAAQ==
128129
616ae350:MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAyduVzi1mWm+lYo2Tqt/0\nXkCIWrDNP1QBMVPrE0/ZlU2bCGSoo2Z9FHQKz/mTyMRlhNqTfhJ5qU3U9XlyGOPJ\npiM+b91g26pnpXJ2Q2kOypSgOMOPA4cQ42PkHBEqhuzssfj9t7x47ppS94bboh46\nxLSDRff/NAbtwTpvhStV3URYkxFG++cKGGa5MPXBrxIp+iZf9GnuxVdST5PGiVGP\nODL/b69sPJQNbJHVquqUTOh5Ry8uuD2WZuXfKf7/C0jC/ie9m2+0CttNu9tMciGM\nEyKG1/Xhk5iIWO43m4SrrT2WkFlcZ1z2JSf9Pjm4C2+HovYpihwwdM/OdP8Xmsnr\nDzVB4YvQiW+IHBjStHVuyiZWc+JsgEPJzisNY0Wyc/kNyNtqVKpX6dRhMLanLmy+\nf53cCSI05KPQAcGj6tdL+D60uKDkt+FsDa0BTAobZ31OsFVid0vCXtsbplNhW1IF\nHwsGXBTVcfXg44RLyL8Lk/2dQxDHNHzAUslJXzPxaHBLmt++2COa2EI1iWlvtznk\nOk9WP8SOAIj+xdqoiHcC4j72BOVVgiITIJNHrbppZCq6qPR+fgXmXa+sDcGh30m6\n9Wpbr28kLMSHiENCWTdsFij+NQTd5S47H7XTROHnalYDuF1RpS+DpQidT5tUimaT\nJZDr++FjKrnnijbyNF8b98UCAwEAAQ==
129130
616db30d:MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnpUpyWDWjlUk3smlWeA0\nlIMW+oJ38t92CRLHH3IqRhyECBRW0d0aRGtq7TY8PmxjjvBZrxTNDpJT6KUk4LRm\na6A6IuAI7QnNK8SJqM0DLzlpygd7GJf8ZL9SoHSH+gFsYF67Cpooz/YDqWrlN7Vw\ntO00s0B+eXy+PCXYU7VSfuWFGK8TGEv6HfGMALLjhqMManyvfp8hz3ubN1rK3c8C\nUS/ilRh1qckdbtPvoDPhSbTDmfU1g/EfRSIEXBrIMLg9ka/XB9PvWRrekrppnQzP\nhP9YE3x/wbFc5QqQWiRCYyQl/rgIMOXvIxhkfe8H5n1Et4VAorkpEAXdsfN8KSVv\nLSMazVlLp9GYq5SUpqYX3KnxdWBgN7BJoZ4sltsTpHQ/34SXWfu3UmyUveWj7wp0\nx9hwsPirVI00EEea9AbP7NM2rAyu6ukcm4m6ATd2DZJIViq2es6m60AE6SMCmrQF\nwmk4H/kdQgeAELVfGOm2VyJ3z69fQuywz7xu27S6zTKi05Qlnohxol4wVb6OB7qG\nLPRtK9ObgzRo/OPumyXqlzAi/Yvyd1ZQk8labZps3e16bQp8+pVPiumWioMFJDWV\nGZjCmyMSU8V6MB6njbgLHoyg2LCukCAeSjbPGGGYhnKLm1AKSoJh3IpZuqcKCk5C\n8CM1S15HxV78s9dFntEqIokCAwEAAQ==
131+
66ba20fe:MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtfB12w4ZgqsXWZDfUAV/\n6Y4aHUKIu3q4SXrNZ7CXF9nXoAVYrS7NAxJdAodsY3vPCN0g5O8DFXR+390LdOuQ\n+HsGKCc1k5tX5ZXld37EZNTNSbR0k+NKhd9h6X3u6wqPOx7SIKxwAQR8qeeFq4pP\nrt9GAGlxtuYgzIIcKJPwE0dZlcBCg+GnptCUZXp/38BP1eYC+xTXSL6Muq1etYfg\nodXdb7Yl+2h1IHuOwo5rjgY5kpY7GcAs8AjGk3lDD/av60OTYccknH0NCVSmPoXK\nvrxDBOn0LQRNBLcAfnTKgHrzy0Q5h4TNkkyTgxkoQw5ObDk9nnabTxql732yy9BY\ns+hM9+dSFO1HKeVXreYSA2n1ndF18YAvAumzgyqzB7I4pMHXq1kC/8bONMJxwSkS\nYm6CoXKyavp7RqGMyeVpRC7tV+blkrrUml0BwNkxE+XnwDRB3xDV6hqgWe0XrifD\nYTfvd9ScZQP83ip0r4IKlq4GMv/R5shcCRJSkSZ6QSGshH40JYSoiwJf5FHbj9ND\n7do0UAqebWo4yNx63j/wb2ULorW3AClv0BCFSdPsIrCStiGdpgJDBR2P2NZOCob3\nG9uMj+wJD6JJg2nWqNJxkANXX37Qf8plgzssrhrgOvB0fjjS7GYhfkfmZTJ0wPOw\nA8+KzFseBh4UFGgue78KwgkCAwEAAQ==
130132
'
131133
__Keyring=
132134
__KeyringFile="/usr/share/keyrings/ubuntu-archive-keyring.gpg"
133135
__SkipSigCheck=0
136+
__SkipEmulation=0
134137
__UseMirror=0
135138

136139
__UnprocessedBuildArgs=
@@ -179,6 +182,18 @@ while :; do
179182
__Keyring="--keyring $__KeyringFile"
180183
fi
181184
;;
185+
loongarch64)
186+
__BuildArch=loongarch64
187+
__AlpineArch=loongarch64
188+
__QEMUArch=loongarch64
189+
__UbuntuArch=loong64
190+
__UbuntuSuites=unreleased
191+
__LLDB_Package="liblldb-19-dev"
192+
193+
if [[ "$__CodeName" == "sid" ]]; then
194+
__UbuntuRepo="http://ftp.ports.debian.org/debian-ports/"
195+
fi
196+
;;
182197
riscv64)
183198
__BuildArch=riscv64
184199
__AlpineArch=riscv64
@@ -339,10 +354,28 @@ while :; do
339354
;;
340355
sid) # Debian sid
341356
__CodeName=sid
342-
__KeyringFile="/usr/share/keyrings/debian-archive-keyring.gpg"
357+
__UbuntuSuites=
343358

344-
if [[ -z "$__UbuntuRepo" ]]; then
345-
__UbuntuRepo="http://ftp.debian.org/debian/"
359+
# Debian-Ports architectures need different values
360+
case "$__UbuntuArch" in
361+
amd64|arm64|armel|armhf|i386|mips64el|ppc64el|riscv64|s390x)
362+
__KeyringFile="/usr/share/keyrings/debian-archive-keyring.gpg"
363+
364+
if [[ -z "$__UbuntuRepo" ]]; then
365+
__UbuntuRepo="http://ftp.debian.org/debian/"
366+
fi
367+
;;
368+
*)
369+
__KeyringFile="/usr/share/keyrings/debian-ports-archive-keyring.gpg"
370+
371+
if [[ -z "$__UbuntuRepo" ]]; then
372+
__UbuntuRepo="http://ftp.ports.debian.org/debian-ports/"
373+
fi
374+
;;
375+
esac
376+
377+
if [[ -e "$__KeyringFile" ]]; then
378+
__Keyring="--keyring $__KeyringFile"
346379
fi
347380
;;
348381
tizen)
@@ -387,6 +420,9 @@ while :; do
387420
--skipsigcheck)
388421
__SkipSigCheck=1
389422
;;
423+
--skipemulation)
424+
__SkipEmulation=1
425+
;;
390426
--rootfsdir|-rootfsdir)
391427
shift
392428
__RootfsDir="$1"
@@ -419,9 +455,9 @@ case "$__AlpineVersion" in
419455
elif [[ "$__AlpineArch" == "x86" ]]; then
420456
__AlpineVersion=3.17 # minimum version that supports lldb-dev
421457
__AlpinePackages+=" llvm15-libs"
422-
elif [[ "$__AlpineArch" == "riscv64" ]]; then
423-
__AlpineLlvmLibsLookup=1
424-
__AlpineVersion=edge # minimum version with APKINDEX.tar.gz (packages archive)
458+
elif [[ "$__AlpineArch" == "riscv64" || "$__AlpineArch" == "loongarch64" ]]; then
459+
__AlpineVersion=3.21 # minimum version that supports lldb-dev
460+
__AlpinePackages+=" llvm19-libs"
425461
elif [[ -n "$__AlpineMajorVersion" ]]; then
426462
# use whichever alpine version is provided and select the latest toolchain libs
427463
__AlpineLlvmLibsLookup=1
@@ -505,11 +541,6 @@ if [[ "$__CodeName" == "alpine" ]]; then
505541
echo "$__ApkToolsSHA512SUM $__ApkToolsDir/apk.static" | sha512sum -c
506542
chmod +x "$__ApkToolsDir/apk.static"
507543

508-
if [[ -f "/usr/bin/qemu-$__QEMUArch-static" ]]; then
509-
mkdir -p "$__RootfsDir"/usr/bin
510-
cp -v "/usr/bin/qemu-$__QEMUArch-static" "$__RootfsDir/usr/bin"
511-
fi
512-
513544
if [[ "$__AlpineVersion" == "edge" ]]; then
514545
version=edge
515546
else
@@ -529,6 +560,10 @@ if [[ "$__CodeName" == "alpine" ]]; then
529560
__ApkSignatureArg="--keys-dir $__ApkKeysDir"
530561
fi
531562

563+
if [[ "$__SkipEmulation" == "1" ]]; then
564+
__NoEmulationArg="--no-scripts"
565+
fi
566+
532567
# initialize DB
533568
# shellcheck disable=SC2086
534569
"$__ApkToolsDir/apk.static" \
@@ -550,7 +585,7 @@ if [[ "$__CodeName" == "alpine" ]]; then
550585
"$__ApkToolsDir/apk.static" \
551586
-X "http://dl-cdn.alpinelinux.org/alpine/$version/main" \
552587
-X "http://dl-cdn.alpinelinux.org/alpine/$version/community" \
553-
-U $__ApkSignatureArg --root "$__RootfsDir" --arch "$__AlpineArch" \
588+
-U $__ApkSignatureArg --root "$__RootfsDir" --arch "$__AlpineArch" $__NoEmulationArg \
554589
add $__AlpinePackages
555590

556591
rm -r "$__ApkToolsDir"
@@ -745,25 +780,67 @@ elif [[ "$__CodeName" == "haiku" ]]; then
745780
popd
746781
rm -rf "$__RootfsDir/tmp"
747782
elif [[ -n "$__CodeName" ]]; then
783+
__Suites="$__CodeName $(for suite in $__UbuntuSuites; do echo -n "$__CodeName-$suite "; done)"
784+
785+
if [[ "$__SkipEmulation" == "1" ]]; then
786+
if [[ -z "$AR" ]]; then
787+
if command -v ar &>/dev/null; then
788+
AR="$(command -v ar)"
789+
elif command -v llvm-ar &>/dev/null; then
790+
AR="$(command -v llvm-ar)"
791+
else
792+
echo "Unable to find ar or llvm-ar on PATH, add them to PATH or set AR environment variable pointing to the available AR tool"
793+
exit 1
794+
fi
795+
fi
796+
797+
PYTHON=${PYTHON_EXECUTABLE:-python3}
798+
799+
# shellcheck disable=SC2086,SC2046
800+
echo running "$PYTHON" "$__CrossDir/install-debs.py" --arch "$__UbuntuArch" --mirror "$__UbuntuRepo" --rootfsdir "$__RootfsDir" --artool "$AR" \
801+
$(for suite in $__Suites; do echo -n "--suite $suite "; done) \
802+
$__UbuntuPackages
803+
804+
# shellcheck disable=SC2086,SC2046
805+
"$PYTHON" "$__CrossDir/install-debs.py" --arch "$__UbuntuArch" --mirror "$__UbuntuRepo" --rootfsdir "$__RootfsDir" --artool "$AR" \
806+
$(for suite in $__Suites; do echo -n "--suite $suite "; done) \
807+
$__UbuntuPackages
808+
809+
exit 0
810+
fi
748811

812+
__UpdateOptions=
749813
if [[ "$__SkipSigCheck" == "0" ]]; then
750814
__Keyring="$__Keyring --force-check-gpg"
815+
else
816+
__Keyring=
817+
__UpdateOptions="--allow-unauthenticated --allow-insecure-repositories"
751818
fi
752819

753820
# shellcheck disable=SC2086
754821
echo running debootstrap "--variant=minbase" $__Keyring --arch "$__UbuntuArch" "$__CodeName" "$__RootfsDir" "$__UbuntuRepo"
755-
debootstrap "--variant=minbase" $__Keyring --arch "$__UbuntuArch" "$__CodeName" "$__RootfsDir" "$__UbuntuRepo"
756822

823+
# shellcheck disable=SC2086
824+
if ! debootstrap "--variant=minbase" $__Keyring --arch "$__UbuntuArch" "$__CodeName" "$__RootfsDir" "$__UbuntuRepo"; then
825+
echo "debootstrap failed! dumping debootstrap.log"
826+
cat "$__RootfsDir/debootstrap/debootstrap.log"
827+
exit 1
828+
fi
829+
830+
rm -rf "$__RootfsDir"/etc/apt/*.{sources,list} "$__RootfsDir"/etc/apt/sources.list.d
757831
mkdir -p "$__RootfsDir/etc/apt/sources.list.d/"
832+
833+
# shellcheck disable=SC2086
758834
cat > "$__RootfsDir/etc/apt/sources.list.d/$__CodeName.sources" <<EOF
759835
Types: deb
760836
URIs: $__UbuntuRepo
761-
Suites: $__CodeName $(echo $__UbuntuSuites | xargs -n 1 | xargs -I {} echo -n "$__CodeName-{} ")
837+
Suites: $__Suites
762838
Components: main universe
763839
Signed-By: $__KeyringFile
764840
EOF
765841

766-
chroot "$__RootfsDir" apt-get update
842+
# shellcheck disable=SC2086
843+
chroot "$__RootfsDir" apt-get update $__UpdateOptions
767844
chroot "$__RootfsDir" apt-get -f -y install
768845
# shellcheck disable=SC2086
769846
chroot "$__RootfsDir" apt-get -y install $__UbuntuPackages

0 commit comments

Comments
 (0)