# Edk2 Continuous Integration\r
\r
+This file focuses on information for those working with the `.pytools` directory\r
+directly or interested in lower-level details about how CI works.\r
+\r
+If you just want to get started building code, visit\r
+[Build Instructions](https://github.com/tianocore/tianocore.github.io/wiki/Build-Instruction)\r
+on the TianoCore wiki.\r
+\r
## Basic Status\r
\r
| Package | Windows VS2019 (IA32/X64)| Ubuntu GCC (IA32/X64/ARM/AARCH64) | Known Issues |\r
that a few steps should be followed. Details of EDKII Tools can be found in the\r
[docs folder here](https://github.com/tianocore/edk2-pytool-extensions/tree/master/docs)\r
\r
-### Prerequisites\r
-\r
-1. A supported toolchain (others might work but this is what is tested and validated)\r
- * Windows 10:\r
- * VS 2017 or VS 2019\r
- * Windows SDK (for rc)\r
- * Windows WDK (for capsules)\r
- * Ubuntu 18.04 or Fedora\r
- * GCC5\r
- * Easy to add more but this is the current state\r
-2. Python 3.7.x or newer on path\r
-3. git on path\r
-4. Recommended to setup and activate a python virtual environment\r
-5. Install the requirements `pip install --upgrade -r pip-requirements.txt`\r
-\r
### Running CI\r
\r
-1. clone your edk2 repo\r
-2. Activate your python virtual environment in cmd window\r
-3. Get code dependencies (done only when submodules change)\r
- * `stuart_setup -c .pytool/CISettings.py TOOL_CHAIN_TAG=<your tag here>`\r
-4. Update other dependencies (done more often)\r
- * `stuart_update -c .pytool/CISettings.py TOOL_CHAIN_TAG=<your tag here>`\r
-5. Run CI build (--help will give you options)\r
- * `stuart_ci_build -c .pytool/CISettings.py TOOL_CHAIN_TAG=<your tag here>`\r
- * -p <pkg1,pkg2,pkg3> : To build only certain packages use a CSV list\r
- * -a <arch1,arch2,arch3>: To run only certain architectures use a CSV list\r
- * -t <target1,target2>: To run only tests related to certain targets use a\r
- CSV list\r
- * By default all tests are opted in. Then given a package.ci.yaml file those\r
- tests can be configured for a package. Finally setting the check to the\r
- value `skip` will skip that plugin. Examples:\r
- * `CompilerPlugin=skip` skip the build test\r
- * `GuidCheck=skip` skip the Guid check\r
- * `SpellCheck=skip` skip the spell checker\r
- * etc\r
-6. Detailed reports and logs per package are captured in the `Build` directory\r
+Quick notes:\r
+\r
+* By default all CI plugins are opted in.\r
+ * Setting the plugin to `skip` as an argument will skip running the plugin.\r
+ Examples:\r
+ * `CompilerPlugin=skip` skip the build test\r
+ * `GuidCheck=skip` skip the Guid check\r
+ * `SpellCheck=skip` skip the spell checker\r
+ * etc.\r
+* Detailed reports and logs per package are captured in the `Build` directory.\r
\r
## Current PyTool Test Capabilities\r
\r