mirror of
https://github.com/netbirdio/netbird.git
synced 2026-04-18 08:16:39 +00:00
72 lines
2.7 KiB
YAML
72 lines
2.7 KiB
YAML
name: Test Code Windows
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
|
|
env:
|
|
downloadPath: '${{ github.workspace }}\temp'
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref || github.actor_id }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: windows-2019
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v3
|
|
|
|
# - name: Install Go
|
|
# if: always()
|
|
# uses: actions/setup-go@v4
|
|
# with:
|
|
# go-version: 1.19.x
|
|
|
|
# - name: Download wintun
|
|
# uses: carlosperate/download-file-action@v2
|
|
# id: download-wintun
|
|
# with:
|
|
# file-url: https://www.wintun.net/builds/wintun-0.14.1.zip
|
|
# file-name: wintun.zip
|
|
# location: ${{ env.downloadPath }}
|
|
# sha256: '07c256185d6ee3652e09fa55c0b673e2624b565e02c4b9091c79ca7d2f24ef51'
|
|
#
|
|
# - name: Decompressing wintun files
|
|
# run: tar -zvxf "${{ steps.download-wintun.outputs.file-path }}" -C ${{ env.downloadPath }}
|
|
#
|
|
# - run: mv ${{ env.downloadPath }}/wintun/bin/amd64/wintun.dll 'C:\Windows\System32\'
|
|
|
|
- name: Install invoke-CommandAs
|
|
run: |
|
|
$WebClient = New-Object Net.WebClient
|
|
$WebClient.DownloadString("https://raw.githubusercontent.com/mkellerman/Invoke-CommandAs/master/Invoke-CommandAs/Private/Invoke-ScheduledTask.ps1") | Set-Content -Path ".\Invoke-ScheduledTask.ps1"
|
|
$WebClient.DownloadString("https://raw.githubusercontent.com/mkellerman/Invoke-CommandAs/master/Invoke-CommandAs/Public/Invoke-CommandAs.ps1") | Set-Content -Path ".\Invoke-CommandAs.ps1"
|
|
|
|
# - name: Generate Iface Test bin
|
|
# run: go mod tidy
|
|
# - name: Build helper
|
|
# run: go test -c -o ${{ github.workspace }}/iface-testing.bin.exe ./iface/
|
|
# "C:\hostedtoolcache\windows\go\1.19.7\x64\bin\go.exe"
|
|
- name: custom config
|
|
if: ${{ always() }}
|
|
run: |
|
|
$ConfigPath = "$PSHOME\powershell.config.json"
|
|
$list = New-Object System.Collections.ArrayList
|
|
$list = "BestPractices","UpdateServices"
|
|
$ConfigJSON = ConvertTo-Json -InputObject @{
|
|
"Microsoft.PowerShell:ExecutionPolicy" = "RemoteSigned"
|
|
"WindowsPowerShellCompatibilityModuleDenyList" = $list
|
|
}
|
|
$ConfigJSON | Out-File -Force $ConfigPath
|
|
|
|
- name: Test
|
|
if: ${{ always() }}
|
|
run: |
|
|
Import-Module PSScheduledJob -UseWindowsPowerShell
|
|
Import-Module ".\Invoke-ScheduledTask.ps1"
|
|
Import-Module ".\Invoke-CommandAs.ps1"
|
|
Invoke-CommandAs -ScriptBlock { whoami } -AsSystem
|
|
# Invoke-CommandAs -ScriptBlock { ${{ github.workspace }}/iface-testing.bin.exe } -AsSystem |