Skip to content

Commit cb9cef8

Browse files
Update repo onboarding instructions (#4806)
* Update repo onboarding instructions * Fix line length
1 parent dd3e574 commit cb9cef8

File tree

1 file changed

+16
-13
lines changed

1 file changed

+16
-13
lines changed

Documentation/sourcebuild-in-repos/new-repo.md

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ behavior of source build in the repo.
1818

1919
These changes are all needed before source build will work:
2020

21-
* [`eng/SourceBuild.props`](#engsourcebuildprops) - Basic properties, such as
21+
* [`eng/DotNetBuild.props`](#engdotnetbuildprops) - Basic properties, such as
2222
repo name.
2323
* [`eng/SourceBuildPrebuiltBaseline.xml`](#engsourcebuildprebuiltbaselinexml) -
2424
List of allowed prebuilts (approval required).
@@ -28,7 +28,7 @@ These changes are all needed before source build will work:
2828

2929
See the following sections for details:
3030

31-
### `eng/SourceBuild.props`
31+
### `eng/DotNetBuild.props`
3232

3333
```xml
3434
<Project>
@@ -55,14 +55,14 @@ These two properties determine the name of the [intermediate nupkg]:
5555
`Microsoft.SourceBuild.Intermediate.$(GitHubRepositoryName)[.$(RidSuffix)]`.
5656

5757
It's possible more configuration will be required for specific repos.
58-
`eng/SourceBuild.props`, similar to `eng/Build.props`, is a place to add extra
58+
`eng/DotNetBuild.props`, similar to `eng/Build.props`, is a place to add extra
5959
MSBuild code that can change the way source build behaves.
6060

6161
### `eng/SourceBuildPrebuiltBaseline.xml`
6262

6363
```xml
64-
<!-- Whenever altering this or other Source Build files, please include @dotnet/source-build as a reviewer. -->
65-
<!-- See https://aka.ms/dotnet/prebuilts for guidance on what pre-builts are and how to eliminate them. -->
64+
<!-- When altering this file or making other Source Build related changes, include @dotnet/source-build as a reviewer. -->
65+
<!-- See aka.ms/dotnet/prebuilts for guidance on what pre-builts are and how to eliminate them. -->
6666

6767
<UsageData>
6868
<IgnorePatterns>
@@ -111,14 +111,14 @@ Windows](https://github.com/dotnet/source-build/issues/1190), only Linux and
111111
macOS.
112112

113113
After running the build, source build artifacts will be in
114-
`artifacts/source-build`, and the [intermediate nupkg] will be something like
114+
`artifacts/sb`, and the [intermediate nupkg] will be something like
115115
`artifacts/packages/*/Microsoft.SourceBuild.Intermediate.*.nupkg`.
116116

117117
The MSBuild binlog will be placed somewhere like:
118-
`artifacts/log/Debug/Build.binlog`. However, this "outer" binlog doesn't contain
118+
`artifacts/log/Release/Build.binlog`. However, this "outer" binlog doesn't contain
119119
the meat of the build: the "inner" build runs inside an `Exec` task. The inner
120-
binlog will be written to:
121-
`artifacts/source-build/self/src/artifacts/sourcebuild.binlog`.
120+
binlog will be written to somewhere like:
121+
`artifacts/sb/src/artifacts/log/Release/source-inner-build.binlog`.
122122

123123
### Excluding components
124124

@@ -134,6 +134,9 @@ conditionally exclude.
134134
Condition="'$(DotNetBuildFromSource)' != 'true'"
135135
```
136136

137+
See the [Unified Build Controls](https://github.com/dotnet/arcade/blob/main/Documentation/UnifiedBuild/Unified-Build-Controls.md)
138+
for more options on how to exclude components from source build.
139+
137140
### `eng/Version.Details.xml`
138141

139142
```xml
@@ -309,7 +312,7 @@ pipeline in the standard way that Arcade will detect and publish.
309312
Once your repo can be source-built, it is time to register it into the source
310313
build dependency tree. The graph of the product is defined by the
311314
`eng/Version.Details.xml` files. This dependency graph starts at
312-
[dotnet/installer](https://github.com/dotnet/installer/blob/main/eng/Version.Details.xml).
315+
[dotnet/sdk](https://github.com/dotnet/sdk/blob/main/eng/Version.Details.xml).
313316
The dependendecies of repos declared in these files are walked and the first
314317
copy/commit of each repo found in the dependency graph is used.
315318

@@ -324,13 +327,13 @@ Another effect of adding a new source build repository is that its sources will
324327
be synchronized into the [Virtual Monolithic Repository of
325328
.NET](https://github.com/dotnet/dotnet). The VMR is then where the official
326329
source build happens from. The sources are synchronized once the associated
327-
commit/package flows into `dotnet/installer`.
330+
commit/package flows into `dotnet/sdk`.
328331

329332
In order for the sources of the new repo to by synchronized into the VMR, the
330333
repo needs to be registered in the [`source-mappings.json`
331334
file](https://github.com/dotnet/dotnet/blob/main/src/source-mappings.json) which
332335
tells the tooling where from and which sources should be synchronized. Please
333-
open a PR in [`dotnet/installer`](https://github.com/dotnet/installer) and add
336+
open a PR in [`dotnet/sdk`](https://github.com/dotnet/sdk) and add
334337
your repository into `src/VirtualMonoRepo/source-mappings.json`. The name must
335338
match the name declared in the `SourceBuild` tag in `Version.Details.xml`
336339
created in the previous step.
@@ -351,7 +354,7 @@ is needed for the source-built .NET scenario.
351354
## Validate
352355

353356
Once the downstream dependency(s) are added to the new repo and those changes
354-
flow into `dotnet/installer`, a complete .NET product can be built from source.
357+
flow into `dotnet/sdk`, a complete .NET product can be built from source.
355358
The repository will be synchronized into the VMR during the first build and the
356359
VMR will be built. This will validate that no prebuilts were added to the system
357360
and everything is functioning correctly. Please notify

0 commit comments

Comments
 (0)