actions / create-github-app-token

GitHub Action for creating a GitHub App Installation Access Token
https://github.com/marketplace/actions/create-github-app-token
MIT License
344 stars 47 forks source link

cannot set proxy for a workflow #99

Closed dmitrijrub closed 7 months ago

dmitrijrub commented 7 months ago

Hi, it seems that this action does not respect the env proxy settings and you cannot set https_proxy for this workflow. Its prevents running on selfhosted runners Warning: Unexpected input(s) 'https_proxy', valid inputs are ['app-id', 'app_id', 'private-key', 'private_key', 'owner', 'repositories', 'skip-token-revoke', 'skip_token_revoke', 'github-api-url']

gr2m commented 7 months ago

I haven't implemented a proxy input for actions myself yet, can you point to actions that have done it for reference? Can you tell if there is a certain conventions that is recommended?

Our action is built on the JavaScript Octokit, proxies are supported like this for Node usage: https://github.com/octokit/octokit.js?tab=readme-ov-file#proxy-servers-nodejs-only

Pull request welcome by the way 👋🏼

dmitrijrub commented 7 months ago

I ended up using peter-murray/workflow-application-token-action action with https_proxy:

mikakesan commented 7 months ago

@gr2m It would be great if you could look at look at adding proxy support, any plans for that? The other action mentioned here looks like a good one to look at.

gr2m commented 7 months ago

I'm working on this action as time permits, and time is very limited right now. I can always review a pull request if you need it fast 😅

parkerbxyz commented 7 months ago

Preliminary proxy support has been added in https://github.com/actions/create-github-app-token/pull/102 (branch 99-proxy). Could somebody please test the action using actions/create-github-app-token@99-proxy on a self hosted runner to verify that it is working as intended? No need to add a new input. The action will get the proxy URL from the environment variables described here.

mikakesan commented 7 months ago

@parkerbxyz Thanks for that! I have tested your branch and it works fine here.

dmitrijrub commented 7 months ago

I have gave it a try and token generation works! But it gives warning, it would be nice to add https_proxy to expected values and put it in readme.md Unexpected input(s) 'https_proxy', valid inputs are ['app-id', 'app_id', 'private-key', 'private_key', 'owner', 'repositories', 'skip-token-revoke', 'skip_token_revoke', 'github-api-url']

parkerbxyz commented 7 months ago

I have gave it a try and token generation works! But it gives warning, it would be nice to add https_proxy to expected values and put it in readme.md Unexpected input(s) 'https_proxy', valid inputs are ['app-id', 'app_id', 'private-key', 'private_key', 'owner', 'repositories', 'skip-token-revoke', 'skip_token_revoke', 'github-api-url']

We do not support any proxy-related inputs, which is why you are receiving this warning. If you remove the line with https_proxy from your workflow file and try again, it should work without any additional configuration.

 - uses: actions/create-github-app-token@v1
   id: app-token
   with:
     app-id: ${{ vars.APP_ID }}
     private-key: ${{ secrets.PRIVATE_KEY }}
-    https_proxy: ${{ vars.HTTPS_PROXY }}

We automatically detect and handle proxy configurations using the environment variables described here.