slackapi / slack-github-action

Send data into Slack using this GitHub Action!
MIT License
924 stars 149 forks source link

Proxy Support broken on Slack App approach (Slack Bot Token approach) #217

Open frednntelia opened 1 year ago

frednntelia commented 1 year ago

Description

When using the slack-github-action in GitHub App mode, the Action fails to utilize environment variables HTTPS_PROXY and https_proxy correctly.

What type of issue is this? (place an x in one of the [ ])

Requirements (place an x in each of the [ ])


Bug Report

Filling out the following details about bugs will help us solve your issue sooner.

Reproducible in:

package version: slackapi/slack-github-action@v1.24.0

node version:

OS version(s): Ubuntu 20.04 LTS

Steps to reproduce:

  1. run slack-github-action behind a proxy
  2. make sure you set HTTPS_PROXY and https_proxy env vars
  3. use slack webhook method
  4. observe success
  5. use slack app method (slack bot token)
  6. observe failure

Expected result:

HTTPS_PROXY var is respected and slack api call goes through properly, resulting in the display of a message on the respective channel.

Actual result:

Slack message never arrives in channel. Likely because HTTPS_PROXY env var is not being respected

Attachments:

[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 3.***.***.153:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 18.***.***.***:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 3.***.***.98:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 3.***.***.98:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 18.***.***.225:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 3.***.***.98:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 18.***.***.***:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 3.***.***.153:443
[WARN]  web-api:WebClient:0 http request failed connect ETIMEDOUT 18.***.***.225:443
Error: The operation was canceled.
WilliamBergamin commented 1 year ago

Hello @frednntelia thanks for writing in 💯

This is a curious behavior, would be able to tell me if the proxy you are using is http or https?

Based on this test suite seems like webhook method should use default axios config when proxy uses HTTPS

frednntelia commented 1 year ago

Hi @WilliamBergamin, thanks for your swift response! 👍🏾 This proxy in my assembly is http afaik.

frednntelia commented 1 year ago

@WilliamBergamin is there a way to enable debug level logs from this Action, so that we can get some more context?

WilliamBergamin commented 1 year ago

Based on what I can see in the code there seems to be a bug where HTTP proxies are not properly set but HTTPS proxies are, I am not sure if there is a reason behind this

minjunk commented 1 year ago

The Slack Bot Token Proxy was updated in June (slackapi/slack-github-action#205), but the release was last in May (v1.24.0). Do you happen to know when there will be a release plan for this update?

joshsnelling commented 10 months ago

Is there a plan to release this fix? If not, is there a workaround that can be used in the meantime?