diff options
Diffstat (limited to '.github')
| -rw-r--r-- | .github/CODEOWNERS | 37 | ||||
| -rw-r--r-- | .github/scripts/Install-Vsix.ps1 | 38 | ||||
| -rw-r--r-- | .github/workflows/Code-Scanning.yml | 50 | ||||
| -rw-r--r-- | .github/workflows/ci-pr.yml | 14 | ||||
| -rw-r--r-- | .github/workflows/ci.yml | 17 |
5 files changed, 117 insertions, 39 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 46d8e00a..903dccb3 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -7,6 +7,9 @@ # Root files /* @microsoft/driver-samples-maintainers +# Windows Implementation Library submodule +/wil/ @microsoft/driver-samples-maintainers + # Audio /audio/ @microsoft/windowsaudio @@ -37,6 +40,7 @@ /pofx/PEP/ @microsoft/device-enumeration-and-interconnect /prm/ @microsoft/device-enumeration-and-interconnect /wmi/wmiacpi/ @microsoft/device-enumeration-and-interconnect +/general/SystemDma/ @microsoft/device-enumeration-and-interconnect # Display Kernel /video/ @microsoft/display-kernel-devs @@ -49,6 +53,7 @@ # Energy Efficiency /pofx/WDF/ @microsoft/ee-devs +/powerlimit/ @microsoft/ee-devs /simbatt/ @microsoft/ee-devs /thermal/ @microsoft/ee-devs @@ -64,8 +69,15 @@ /filesys/miniFilter/ @microsoft/filter-manager # Kernel Core +/general/cancel/ @microsoft/kernel-core +/general/event/ @microsoft/kernel-core /general/registry/ @microsoft/kernel-core +# Network Driver Platform +/network/config/ @microsoft/network-driver-platform +/network/modem/ @microsoft/network-driver-platform +/network/ndis/ @microsoft/network-driver-platform + # Network Security /network/trans/ @microsoft/netsec @@ -73,11 +85,36 @@ /security/ @microsoft/platform-integrity /TrEE/ @microsoft/platform-integrity +# PnP +/general/DCHU/ @microsoft/pnp +/setup/ @microsoft/pnp + +# Print +/print/ @microsoft/core-print +/wia/ @microsoft/core-print + # Sensors Platform /sensors/ @microsoft/sensors-platform # Storage /storage/ @microsoft/storage-core +# Windows Driver Framework (WDF) samples +/general/echo/ @microsoft/coreos-buses-and-wdf +/general/ioctl/ @microsoft/coreos-buses-and-wdf +/general/pcidrv/ @microsoft/coreos-buses-and-wdf +/general/PLX9x5x/ @microsoft/coreos-buses-and-wdf +/general/toaster/ @microsoft/coreos-buses-and-wdf +/hid/ @microsoft/coreos-buses-and-wdf +/input/ @microsoft/coreos-buses-and-wdf +/pofx/UMDF2/ @microsoft/coreos-buses-and-wdf +/serial/ @microsoft/coreos-buses-and-wdf +/spb/ @microsoft/coreos-buses-and-wdf +/usb/ @microsoft/coreos-buses-and-wdf +/wmi/wmisamp/ @microsoft/coreos-buses-and-wdf + # Windows Internet of Things /pos/ @microsoft/winiotdev + +# Wi-Fi Core +/network/wlan/ @microsoft/wi-fi-core diff --git a/.github/scripts/Install-Vsix.ps1 b/.github/scripts/Install-Vsix.ps1 new file mode 100644 index 00000000..50ef088b --- /dev/null +++ b/.github/scripts/Install-Vsix.ps1 @@ -0,0 +1,38 @@ +<#
+
+.SYNOPSIS
+Download and install the latest WDK VSIX.
+
+#>
+
+# set uri by resolving amd64 vsix
+$uri = "https://marketplace.visualstudio.com$((Invoke-WebRequest -Uri "https://marketplace.visualstudio.com/items?itemName=DriverDeveloperKits-WDK.WDKVsix").Links | Where-Object outerHTML -like '*(amd64)*' | select -expand href)"
+
+# set download version
+$uri_version = ([regex]'(\d+\.)(\d+\.)(\d+\.)(\d+)').Matches($uri).Value
+
+# set msbuild path
+$msbuild_path = (Resolve-Path "$env:ProgramFiles\Microsoft Visual Studio\2022\*\MSBuild\")
+
+# download vsix, expand, and store the downloaded version extracted from the extension manifest
+"Downloading WDK VSIX version: $uri_version..."
+Invoke-WebRequest -Uri "$uri" -OutFile wdk.zip
+"Expanding WDK VSIX archive..."
+Expand-Archive ".\wdk.zip" .\
+"Extracting version from manifest..."
+$downloaded_version = ([xml](Get-Content .\extension.vsixmanifest)).PackageManifest.Metadata.Identity.Version
+"Downloaded WDK VSIX version: $downloaded_version"
+
+# copy msbuild files, extension manifest, and check installed version from the extension manifest
+"Copying WDK extension files to build path..."
+cp (".\`$MSBuild\*", ".\extension.vsixmanifest") "$msbuild_path" -Recurse -Force
+"Extracting version from copied manifest..."
+$installed_version = ([xml](Get-Content ${msbuild_path}\extension.vsixmanifest)).PackageManifest.Metadata.Identity.Version
+"Installed WDK VSIX Version: $installed_version"
+if (-not ("$downloaded_version" -eq "$installed_version")) {
+ "WDK VSIX installation failed due to version mismatch"
+ exit 1
+}
+
+# set github environment variable for vsix version
+"SAMPLES_VSIX_VERSION=$installed_version" | Out-File -FilePath "$env:GITHUB_ENV" -Append
diff --git a/.github/workflows/Code-Scanning.yml b/.github/workflows/Code-Scanning.yml index 6915addf..cd0d8abf 100644 --- a/.github/workflows/Code-Scanning.yml +++ b/.github/workflows/Code-Scanning.yml @@ -32,31 +32,31 @@ jobs: language: [ 'cpp' ] steps: - - name: Checkout repository - uses: actions/checkout@v3 - with: - submodules: 'recursive' + - name: Checkout repository + uses: actions/checkout@v4 + with: + submodules: 'recursive' - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{ matrix.language }} - packs: microsoft/windows-drivers - - name: Add MSBuild to PATH - uses: microsoft/[email protected] + - name: Install WDK VSIX + run: .\.github\scripts\Install-Vsix.ps1 - - name: Retrieve and build all available solutions - run: | - .\Build-AllSamples.ps1 -Verbose -ThrottleLimit 1 - env: - WDS_Configuration: Debug - WDS_Platform: x64 - WDS_WipeOutputs: ${{ true }} + - name: Install Nuget Packages + run: nuget restore .\packages.config -PackagesDirectory .\packages\ - - name: Perform CodeQL analysis - uses: github/codeql-action/analyze@v3 - with: - category: "/language:${{matrix.language}}" - - - + - name: Initialize CodeQL + uses: github/codeql-action/init@v3 + with: + languages: ${{ matrix.language }} + packs: microsoft/windows-drivers + + - name: Retrieve and build all available solutions + run: .\Build-AllSamples.ps1 -Verbose -ThrottleLimit 1 + env: + WDS_Configuration: Debug + WDS_Platform: x64 + WDS_WipeOutputs: ${{ true }} + + - name: Perform CodeQL analysis + uses: github/codeql-action/analyze@v3 + with: + category: "/language:${{matrix.language}}" diff --git a/.github/workflows/ci-pr.yml b/.github/workflows/ci-pr.yml index fd2b78a6..c04f4adb 100644 --- a/.github/workflows/ci-pr.yml +++ b/.github/workflows/ci-pr.yml @@ -18,12 +18,15 @@ jobs: runs-on: windows-2022 steps: - name: Check out repository code - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: 'recursive' - - name: Add MSBuild to PATH - uses: microsoft/[email protected] + - name: Install WDK VSIX + run: .\.github\scripts\Install-Vsix.ps1 + + - name: Install Nuget Packages + run: nuget restore .\packages.config -PackagesDirectory .\packages\ - name: Get changed files id: get-changed-files @@ -54,7 +57,7 @@ jobs: if: always() steps: - name: Check out repository code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Retrieve overview reports uses: actions/download-artifact@v3 @@ -63,8 +66,7 @@ jobs: path: _logs - name: Join and generate global reports - run: | - .\.github\scripts\Join-CsvReports.ps1 + run: .\.github\scripts\Join-CsvReports.ps1 - name: Archive global overview build reports uses: actions/upload-artifact@v3 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c4fd1a2a..c35a81ec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,16 +18,18 @@ jobs: runs-on: windows-2022 steps: - name: Check out repository code - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: 'recursive' - - name: Add MSBuild to PATH - uses: microsoft/[email protected] + - name: Install WDK VSIX + run: .\.github\scripts\Install-Vsix.ps1 + + - name: Install Nuget Packages + run: nuget restore .\packages.config -PackagesDirectory .\packages\ - name: Retrieve and build all available solutions - run: | - .\Build-AllSamples.ps1 -Verbose + run: .\Build-AllSamples.ps1 -Verbose env: WDS_Configuration: ${{ matrix.configuration }} WDS_Platform: ${{ matrix.platform }} @@ -47,7 +49,7 @@ jobs: if: always() steps: - name: Check out repository code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Retrieve overview reports uses: actions/download-artifact@v3 @@ -56,8 +58,7 @@ jobs: path: _logs - name: Join and generate global reports - run: | - .\.github\scripts\Join-CsvReports.ps1 + run: .\.github\scripts\Join-CsvReports.ps1 - name: Archive global overview build reports uses: actions/upload-artifact@v3 |
