diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 735c5fa505b..4d29ebfc763 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,8 +1,8 @@ - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c https://github.com/dotnet/diagnostics @@ -12,55 +12,55 @@ https://github.com/dotnet/diagnostics 058c2fef083bc427b23e74752acaf3b436fcddda - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c https://github.com/dotnet/diagnostics 058c2fef083bc427b23e74752acaf3b436fcddda - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c - + https://github.com/dotnet/dotnet - 6a953e76162f3f079405f80e28664fa51b136740 + e9f665e52848a3615736c099e5631af531b66a5c diff --git a/eng/Versions.props b/eng/Versions.props index 711ac9c463a..a0af1c91d10 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -52,16 +52,16 @@ 9.0.0-preview.25381.1 1.0.638101 - 10.0.0-rc.1.25377.103 - 10.0.0-preview.25377.103 - 10.0.0-beta.25377.103 - 10.0.0-beta.25377.103 - 10.0.0-beta.25377.103 - 10.0.0-preview.7.25377.103 - 2.0.0-rc.1.25377.103 - 10.0.0-rc.1.25377.103 - 10.0.100-preview.7.25377.103 - 10.0.0-preview.7.25377.103 + 10.0.0-rc.1.25409.103 + 10.0.0-preview.25409.103 + 10.0.0-beta.25409.103 + 10.0.0-beta.25409.103 + 10.0.0-beta.25409.103 + 10.0.0-rc.1.25409.103 + 2.0.0-rc.1.25409.103 + 10.0.0-rc.1.25409.103 + 10.0.100-rc.1.25409.103 + 10.0.0-rc.1.25409.103 $(MicrosoftNETCoreApp80Version) diff --git a/eng/common/core-templates/job/onelocbuild.yml b/eng/common/core-templates/job/onelocbuild.yml index 8034815f421..8bf7d23355b 100644 --- a/eng/common/core-templates/job/onelocbuild.yml +++ b/eng/common/core-templates/job/onelocbuild.yml @@ -4,7 +4,7 @@ parameters: # Optional: A defined YAML pool - https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema?view=vsts&tabs=schema#pool pool: '' - + CeapexPat: $(dn-bot-ceapex-package-r) # PAT for the loc AzDO instance https://dev.azure.com/ceapex GithubPat: $(BotAccount-dotnet-bot-repo-PAT) @@ -27,7 +27,7 @@ parameters: is1ESPipeline: '' jobs: - job: OneLocBuild${{ parameters.JobNameSuffix }} - + dependsOn: ${{ parameters.dependsOn }} displayName: OneLocBuild${{ parameters.JobNameSuffix }} @@ -99,22 +99,20 @@ jobs: mirrorBranch: ${{ parameters.MirrorBranch }} condition: ${{ parameters.condition }} - - template: /eng/common/core-templates/steps/publish-build-artifacts.yml - parameters: - is1ESPipeline: ${{ parameters.is1ESPipeline }} - args: - displayName: Publish Localization Files - pathToPublish: '$(Build.ArtifactStagingDirectory)/loc' - publishLocation: Container - artifactName: Loc - condition: ${{ parameters.condition }} + # Copy the locProject.json to the root of the Loc directory, then publish a pipeline artifact + - task: CopyFiles@2 + displayName: Copy LocProject.json + inputs: + SourceFolder: '$(Build.SourcesDirectory)/eng/Localize/' + Contents: 'LocProject.json' + TargetFolder: '$(Build.ArtifactStagingDirectory)/loc' + condition: ${{ parameters.condition }} - - template: /eng/common/core-templates/steps/publish-build-artifacts.yml + - template: /eng/common/core-templates/steps/publish-pipeline-artifacts.yml parameters: is1ESPipeline: ${{ parameters.is1ESPipeline }} args: - displayName: Publish LocProject.json - pathToPublish: '$(Build.SourcesDirectory)/eng/Localize/' - publishLocation: Container - artifactName: Loc + targetPath: '$(Build.ArtifactStagingDirectory)/loc' + artifactName: 'Loc' + displayName: 'Publish Localization Files' condition: ${{ parameters.condition }} diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index 996a5f9c872..d4cfd9ccd80 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -257,7 +257,20 @@ function Retry($downloadBlock, $maxRetries = 5) { function GetDotNetInstallScript([string] $dotnetRoot) { $installScript = Join-Path $dotnetRoot 'dotnet-install.ps1' + $shouldDownload = $false + if (!(Test-Path $installScript)) { + $shouldDownload = $true + } else { + # Check if the script is older than 30 days + $fileAge = (Get-Date) - (Get-Item $installScript).LastWriteTime + if ($fileAge.Days -gt 30) { + Write-Host "Existing install script is too old, re-downloading..." + $shouldDownload = $true + } + } + + if ($shouldDownload) { Create-Directory $dotnetRoot $ProgressPreference = 'SilentlyContinue' # Don't display the console progress UI - it's a huge perf hit $uri = "https://builds.dotnet.microsoft.com/dotnet/scripts/$dotnetInstallScriptVersion/dotnet-install.ps1" diff --git a/eng/common/tools.sh b/eng/common/tools.sh index 3def02a638d..c1841c9dfd0 100644 --- a/eng/common/tools.sh +++ b/eng/common/tools.sh @@ -300,8 +300,29 @@ function GetDotNetInstallScript { local root=$1 local install_script="$root/dotnet-install.sh" local install_script_url="https://builds.dotnet.microsoft.com/dotnet/scripts/$dotnetInstallScriptVersion/dotnet-install.sh" + local timestamp_file="$root/.dotnet-install.timestamp" + local should_download=false if [[ ! -a "$install_script" ]]; then + should_download=true + elif [[ -f "$timestamp_file" ]]; then + # Check if the script is older than 30 days using timestamp file + local download_time=$(cat "$timestamp_file" 2>/dev/null || echo "0") + local current_time=$(date +%s) + local age_seconds=$((current_time - download_time)) + + # 30 days = 30 * 24 * 60 * 60 = 2592000 seconds + if [[ $age_seconds -gt 2592000 ]]; then + echo "Existing install script is too old, re-downloading..." + should_download=true + fi + else + # No timestamp file exists, assume script is old and re-download + echo "No timestamp found for existing install script, re-downloading..." + should_download=true + fi + + if [[ "$should_download" == true ]]; then mkdir -p "$root" echo "Downloading '$install_script_url'" @@ -328,6 +349,9 @@ function GetDotNetInstallScript { ExitWithExitCode $exit_code } fi + + # Create timestamp file to track download time in seconds from epoch + date +%s > "$timestamp_file" fi # return value _GetDotNetInstallScript="$install_script" diff --git a/global.json b/global.json index f217911c032..b621b654c4f 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "10.0.100-preview.7.25322.101", + "dotnet": "10.0.100-preview.7.25372.107", "runtimes": { "aspnetcore": [ "$(MicrosoftAspNetCoreApp80Version)", @@ -26,7 +26,7 @@ }, "msbuild-sdks": { "Microsoft.Build.NoTargets": "3.7.0", - "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25377.103", - "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25377.103" + "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25409.103", + "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25409.103" } }