project-system/eng
..
imports
pipelines
scripts
tools
Build.proj
README.md
eng.projitems
eng.shproj

README.md

eng directory

Directory Structure

imports

  • This directory is highly accessed as part of the MSBuild pipeline to produce our assemblies, run tests, create packages, etc.
  • Contents: This directory contains a majority of the .props/.targets files in the repo. There are also a couple of .snk files used for StrongName signing within the StrongName.targets file.

Notable Files

  • RepoLayout.props: Contains properties for paths to the directories within the repo itself.

pipelines

  • This directory is only used by Azure Pipelines and is not read by anything else in the repo.
  • Contents: This directory primarily contains .yaml files, which become pipelines in Azure Pipelines. There are some other files that support the pipelines within this folder.

Notable Files

  • official.yml: This file is our official build pipeline that produces the signed packages (VSIX) that used for insertion into Visual Studio.
  • unit-tests.yml: This file is our build pipeline used when validating pull requests into the repo from GitHub.

scripts

  • This directory contains:
    • A few files related to running OptProf on the assemblies in our repo.
      • A majority of the configuration relates to setting the test(s) that OptProf uses for creating optimization data.
      • The runsettings folder contains the .runsettings file. This entire folder is published in our official.yml.

tools

  • This directory contains the OneLocBuildSetup project which creates the LocProject.json and copies language-specific XLF files to become language-neutral; both of these are required for the OneLocBuild process for localization.