29 lines
2.1 KiB
YAML
29 lines
2.1 KiB
YAML
name: Net Diag
|
|
on: push
|
|
|
|
jobs:
|
|
diag:
|
|
runs-on: windows-latest
|
|
timeout-minutes: 10
|
|
steps:
|
|
- name: Probe tool sources
|
|
run: |
|
|
whoami
|
|
"TEMP=$env:TEMP"
|
|
"HTTP_PROXY=$env:HTTP_PROXY HTTPS_PROXY=$env:HTTPS_PROXY NO_PROXY=$env:NO_PROXY"
|
|
try { [System.Net.Dns]::GetHostAddresses('www.gyan.dev') | ForEach-Object { "DNS gyan: $($_.IPAddressToString)" } } catch { "DNS gyan ERR: $($_.Exception.Message)" }
|
|
try { [System.Net.Dns]::GetHostAddresses('github.com') | ForEach-Object { "DNS github: $($_.IPAddressToString)" } } catch { "DNS github ERR: $($_.Exception.Message)" }
|
|
$ProgressPreference = 'SilentlyContinue'
|
|
try { $r = Invoke-WebRequest -Uri 'https://api.github.com/' -UseBasicParsing -TimeoutSec 20; "api.github: $($r.StatusCode)" } catch { "api.github ERR: $($_.Exception.Message)" }
|
|
try { $r = Invoke-WebRequest -Uri 'https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-8.1.2-essentials_build.zip' -Method Head -UseBasicParsing -TimeoutSec 30; "gyan HEAD: $($r.StatusCode) len=$($r.Headers['Content-Length'])" } catch { "gyan ERR: $($_.Exception.Message)" }
|
|
try { $r = Invoke-WebRequest -Uri 'https://github.com/streamlink/windows-builds/releases/download/8.4.0-1/streamlink-8.4.0-1-py314-x86_64.zip' -Method Head -UseBasicParsing -TimeoutSec 30; "github release HEAD: $($r.StatusCode) len=$($r.Headers['Content-Length'])" } catch { "github release ERR: $($_.Exception.Message)" }
|
|
$node = Get-Command node -ErrorAction SilentlyContinue
|
|
if ($node) {
|
|
"node: $($node.Source) $(node --version)"
|
|
node -e "const https=require('https');https.get('https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-8.1.2-essentials_build.zip',{timeout:20000},r=>{console.log('node gyan status',r.statusCode);r.destroy();}).on('error',e=>console.log('node gyan ERR',e.code||'',e.message)).on('timeout',function(){this.destroy();console.log('node gyan TIMEOUT')})"
|
|
Start-Sleep -Seconds 3
|
|
} else {
|
|
'node not on PATH'
|
|
}
|
|
exit 0
|