4.0 KiB
Actions Connection Check
What is this check for?
Make sure the runner has access to actions service for GitHub.com or GitHub Enterprise Server
-
For GitHub.com
- The runner needs to access
https://api.github.comfor downloading actions. - The runner needs to access
https://vstoken.actions.githubusercontent.com/_apis/.../for requesting an access token. - The runner needs to access
https://pipelines.actions.githubusercontent.com/_apis/.../for receiving workflow jobs.
These can by tested by running the following
curlcommands from your self-hosted runner machine:curl -v https://api.github.com/api/v3/zen curl -v https://vstoken.actions.githubusercontent.com/_apis/health curl -v https://pipelines.actions.githubusercontent.com/_apis/health - The runner needs to access
-
For GitHub Enterprise Server
- The runner needs to access
https://[hostname]/api/v3for downloading actions. - The runner needs to access
https://[hostname]/_services/vstoken/_apis/.../for requesting an access token. - The runner needs to access
https://[hostname]/_services/pipelines/_apis/.../for receiving workflow jobs.
These can by tested by running the following
curlcommands from your self-hosted runner machine, replacing[hostname]with the hostname of your appliance, for instancegithub.example.com:curl -v https://[hostname]/api/v3/zen curl -v https://[hostname]/_services/vstoken/_apis/health curl -v https://[hostname]/_services/pipelines/_apis/healthA common cause of this these connectivity issues is if your to GitHub Enterprise Server appliance is using the self-signed certificate that is enabled the first time your appliance is started. As self-signed certificates are not trusted by web browsers and Git clients, these clients (including the GitHub Actions runner) will report certificate warnings.
We recommend upload a certificate signed by a trusted authority to GitHub Enterprise Server, or enabling the built-in ]Let's Encrypt support.
- The runner needs to access
What is checked?
- DNS lookup for api.github.com or myGHES.com using dotnet
- Ping api.github.com or myGHES.com using dotnet
- Make HTTP GET to https://api.github.com or https://myGHES.com/api/v3 using dotnet, check response headers contains
X-GitHub-Request-Id
- DNS lookup for vstoken.actions.githubusercontent.com using dotnet
- Ping vstoken.actions.githubusercontent.com using dotnet
- Make HTTP GET to https://vstoken.actions.githubusercontent.com/_apis/health or https://myGHES.com/_services/vstoken/_apis/health using dotnet, check response headers contains
x-vss-e2eid
- DNS lookup for pipelines.actions.githubusercontent.com using dotnet
- Ping pipelines.actions.githubusercontent.com using dotnet
- Make HTTP GET to https://pipelines.actions.githubusercontent.com/_apis/health or https://myGHES.com/_services/pipelines/_apis/health using dotnet, check response headers contains
x-vss-e2eid - Make HTTP POST to https://pipelines.actions.githubusercontent.com/_apis/health or https://myGHES.com/_services/pipelines/_apis/health using dotnet, check response headers contains
x-vss-e2eid
How to fix the issue?
1. Check the common network issue
Please check the network doc
2. SSL certificate related issue
If you are seeing System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception. in the log, it means the runner can't connect to Actions service due to SSL handshake failure.
Please check the SSL cert doc
Still not working?
Contact GitHub Support if you have further questuons, or log an issue at https://github.com/actions/runner if you think it's a runner issue.