-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Local live builds not picking up runtime config #2093
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
Changes from all commits
a962c75
976b7ea
95495dc
5740d55
e641b28
9977e65
46d25fe
9dbbce8
3e634eb
f0dbb6f
84727f5
47f84a0
0164e80
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| <Project> | ||
| <!-- Honor the generic RuntimeConfiguration property. --> | ||
| <PropertyGroup> | ||
| <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == ''">$(ConfigurationGroup)</RuntimeConfiguration> | ||
| <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == ''">$(Configuration)</RuntimeConfiguration> | ||
| <CoreCLRConfiguration Condition="'$(CoreCLRConfiguration)' == ''">$(RuntimeConfiguration)</CoreCLRConfiguration> | ||
| <MonoConfiguration Condition="'$(MonoConfiguration)' == '' and '$(RuntimeConfiguration.ToLower())' != 'checked'">$(RuntimeConfiguration)</MonoConfiguration> | ||
| <!-- There's no checked configuration on Mono. --> | ||
| <MonoConfiguration Condition="'$(MonoConfiguration)' == '' and '$(RuntimeConfiguration.ToLower())' == 'checked'">Debug</MonoConfiguration> | ||
| </PropertyGroup> | ||
| </Project> | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| parameters: | ||
| buildConfig: '' | ||
| runtimeConfig: '' | ||
| archType: '' | ||
| osGroup: '' | ||
| osSubgroup: '' | ||
|
|
@@ -11,8 +12,8 @@ parameters: | |
| jobs: | ||
| - template: /eng/common/templates/job/job.yml | ||
| parameters: | ||
| name: ${{ format('runtime_build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }} | ||
| displayName: ${{ format('Runtime Build {0}{1} {2} {3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }} | ||
| name: ${{ format('build_{0}{1}_{2}_{3}_runtime{4}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig, parameters.runtimeConfig) }} | ||
| displayName: ${{ format('Build {0}{1} {2} {3} Runtime {4}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig, parameters.runtimeConfig) }} | ||
| dependsOn: checkout | ||
| pool: ${{ parameters.pool }} | ||
| container: ${{ parameters.container }} | ||
|
|
@@ -35,5 +36,14 @@ jobs: | |
| - template: /eng/pipelines/common/clone-checkout-bundle-step.yml | ||
|
|
||
| # Build | ||
| - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -c ${{ parameters.buildConfig }} -arch ${{ parameters.archType }} | ||
| - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -c ${{ parameters.buildConfig }} -runtimeConfiguration ${{ parameters.runtimeConfig }} -arch ${{ parameters.archType }} -ci | ||
| displayName: Build product | ||
|
|
||
| - task: PublishBuildArtifacts@1 | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Instead of having to add this step, you can just pass down a parameter to the template we use which is https://github.com/dotnet/arcade/blob/master/eng/common/templates/job/job.yml#L180 Note that you also need to declare a variable
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This job though deliberately builds multiple configurations though hence seems like it can't directly hook up to that infrastructure
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It can hook up to that infrastructure, the binlog will be created under the global buildConfig which is passed through the -configuration argument. The binlog name and location is calculated on the build script in arcade, which doesn't know about runtimeConfiguration. However if you want to produce binlogs for other steps in the coreclr build scripts, then we will definitely not be able to use this. |
||
| displayName: Publish Logs | ||
| inputs: | ||
| PathtoPublish: '$(Build.SourcesDirectory)/artifacts/log/' | ||
| PublishLocation: Container | ||
| ArtifactName: $(Agent.Os)_PublishBuildAssets | ||
| continueOnError: true | ||
| condition: always() | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This isn't necessary as
ConfigurationGroupandConfigurationare always passed in together. In future we will probably remove the former.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not necessarily. If you build the projects directly then
ConfigurationGroupis not specified.Also looking through the logs @jkoritzinsky and I observed places where
$(ConfigurationGroup)was not set but$(Configuration)was. This change was inspired by that observation. It's deep in the restore graph where we encountered this.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concrete example where only
$(Configuration)is passed to the buildhttps://teams.microsoft.com/l/message/19:b27b36ecd10a46398da76b02f0411de7@thread.skype/1580491671080?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=014ca51d-be57-47fa-9628-a15efcc3c376&parentMessageId=1580481868103&teamName=dotnet%2Fruntime%20repo&channelName=Infrastructure&createdTime=1580491671080