testsuite icon indicating copy to clipboard operation
testsuite copied to clipboard

[Feature] Implement Support for Using an HTTP_PROXY with the cnf-testsuite

Open denverwilliams opened this issue 3 years ago โ€ข 3 comments

Describe the bug

Fix the below functions so that the cnf-testsuite supports the use of http_proxy & https_proxy configurations.

Functions that fail when only http_proxy & https_proxy outbound traffic is allowed:

https://github.com/cncf/cnf-testsuite/issues/1556 - Work Estimation Ticket

https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/helmenv_setup.cr#L29

root@testclient:~/cnf-testsuite# ./cnf-testsuite -l info setup                                                                                                                                                    โ”‚ยท
Successfully created directories for cnf-testsuite                                                                                                                                                                โ”‚ยท
/usr/share/crystal/src/gc/boehm.cr:110:5 in 'io'                                                                                                                                                                  โ”‚ยท
/usr/share/crystal/src/http/client.cr:671:19 in 'send_request'                                                                                                                                                    โ”‚ยท
/usr/share/crystal/src/http/client.cr:651:20 in '->'                                                                                                                                                              โ”‚ยท
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'                                                                                                                                                                โ”‚ยท
/workspace/lib/sam/src/sam/execution.cr:20:7 in '__crystal_main'                                                                                                                                                  โ”‚ยท
/usr/share/crystal/src/crystal/main.cr:110:5 in 'main'                                                                                                                                                            โ”‚ยท
src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'                                                                                                                                                      โ”‚ยท
Error connecting to 'get.helm.sh:443': Address not available          

https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/sonobuoy_setup.cr#L44

I, [2022-07-11 20:58:30 +00:00 #28579]  INFO -- cnf-testsuite-verbose: install_apisnoop                                                                                                                           โ”‚ยท
I, [2022-07-11 20:58:30 +00:00 #28579]  INFO -- cnf-testsuite: GitClient.clone command: https://github.com/cncf/apisnoop /root/cnf-testsuite/tools/apisnoop                                                       โ”‚ยท
I, [2022-07-11 20:58:32 +00:00 #28579]  INFO -- cnf-testsuite: GitClient.clone output:                                                                                                                            โ”‚ยท
I, [2022-07-11 20:58:32 +00:00 #28579]  INFO -- cnf-testsuite: GitClient.clone stderr: Cloning into '/root/cnf-testsuite/tools/apisnoop'...                                                                       โ”‚ยท
                                                                                                                                                                                                                  โ”‚ยท
I, [2022-07-11 20:58:32 +00:00 #28579]  INFO -- cnf-testsuite: url: https://github.com/vmware-tanzu/sonobuoy/releases/download/v0.19.0/sonobuoy_0.19.0_linux_amd64.tar.gz                                         โ”‚ยท
I, [2022-07-11 20:58:32 +00:00 #28579]  INFO -- cnf-testsuite: write_file: /root/cnf-testsuite/tools/sonobuoy/sonobuoy.tar.gz                                                                                     โ”‚ยท
/usr/share/crystal/src/gc/boehm.cr:110:5 in 'io'                                                                                                                                                                  โ”‚ยท
/usr/share/crystal/src/http/client.cr:671:19 in 'send_request'                                                                                                                                                    โ”‚ยท
/usr/share/crystal/src/http/client.cr:651:20 in 'perform'                                                                                                                                                         โ”‚ยท
/usr/share/crystal/src/log/main.cr:38:3 in '->'                                                                                                                                                                   โ”‚ยท
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'                                                                                                                                                                โ”‚ยท
/workspace/lib/sam/src/sam/execution.cr:20:7 in '__crystal_main'                                                                                                                                                  โ”‚ยท
/usr/share/crystal/src/crystal/main.cr:110:5 in 'main'                                                                                                                                                            โ”‚ยท
src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'                                                                                                                                                      โ”‚ยท
Error connecting to 'github.com:443': Operation timed out 

https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/kubescape_setup.cr#L30 https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/kubescape_setup.cr#L57

I, [2022-07-12 20:09:16 +00:00 #23253]  INFO -- cnf-testsuite: write_file: /root/cnf-testsuite/tools/kubescape/kubescape
I, [2022-07-12 20:09:16 +00:00 #23253]  INFO -- cnf-testsuite: kubescape install online mode
I, [2022-07-12 20:09:16 +00:00 #23253]  INFO -- cnf-testsuite: url: https://github.com/armosec/kubescape/releases/download/v2.0.158/kubescape-ubuntu-latest
/usr/share/crystal/src/gc/boehm.cr:110:5 in 'io'
/usr/share/crystal/src/http/client.cr:671:19 in 'send_request'
/usr/share/crystal/src/http/client.cr:651:20 in 'perform'
/workspace/src/tasks/kubescape_setup.cr:30:16 in '->'
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'
/workspace/lib/sam/src/sam/execution.cr:20:7 in '__crystal_main'
/usr/share/crystal/src/crystal/main.cr:110:5 in 'main'
src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'
Error connecting to 'github.com:443': Operation timed out

https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/utils/kyverno.cr#L15

I, [2022-07-12 20:39:47 +00:00 #24941]  INFO -- cnf-testsuite-verbose: container_sock_mounts
/usr/share/crystal/src/gc/boehm.cr:110:5 in 'io'
/usr/share/crystal/src/http/client.cr:671:19 in 'send_request'
/usr/share/crystal/src/http/client.cr:651:20 in 'install'
/workspace/src/tasks/workload/security.cr:136:3 in '->'
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'
/workspace/lib/sam/src/sam/task.cr:44:29 in 'call'
/workspace/lib/sam/src/sam/execution.cr:20:7 in '__crystal_main'
/usr/share/crystal/src/crystal/main.cr:110:5 in 'main'
src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'
Error connecting to 'github.com:443': Operation timed out

https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/litmus_setup.cr#L162

E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: Error connecting to 'hub.litmuschaos.io:443': Operation timed out                                                                                                  โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/gc/boehm.cr:110:5 in 'io'                                                                                                                   โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/http/client.cr:671:19 in 'send_request'                                                                                                     โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/http/client.cr:651:20 in 'perform'                                                                                                          โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/litmus_setup.cr:162:5 in 'download_template'                                                                                                  โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/workload/reliability.cr:257:11 in '->'                                                                                                        โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/primitives.cr:266:3 in 'all_cnfs_task_runner'                                                                                               โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/utils/task.cr:19:9 in 'task_runner'                                                                                                           โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/workload/reliability.cr:230:3 in '->'                                                                                                         โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/sam/src/sam/task.cr:44:29 in 'call'                                                                                                                 โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/sam/src/sam/task.cr:44:29 in 'call'                                                                                                                 โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/sam/src/sam/execution.cr:20:7 in '__crystal_main'                                                                                                    ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/crystal/main.cr:110:5 in 'main'                                                                                                             โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-13 00:11:32 +00:00 #34666] ERROR -- cnf-testsuite: src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'                                                                                                       โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-13 00:11:32 +00:00 #34666]  INFO -- cnf-testsuite: exception with skipped exit code                                                                                                                                   โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-13 00:11:32 +00:00 #34666]  INFO -- cnf-testsuite: task_runner args: #<Sam::Args:0x7fc36a1ff760 @arr=[], @named_args={}>                                                                                              โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-13 00:11:32 +00:00 #34666]  INFO -- cnf-testsuite: check_cnf_config args: #<Sam::Args:0x7fc36a1ff760 @arr=[], @named_args={}>                                                                                         โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-13 00:11:32 +00:00 #34666]  INFO -- cnf-testsuite: check_cnf_config cnf:                                                                                                                   

https://github.com/cncf/cnf-testsuite/blob/main/src/tasks/workload/observability.cr#L62

I, [2022-07-12 22:13:18 +00:00 #34666]  INFO -- cnf-testsuite: USING EXPORTED CHART PATH                                                                                                                                           ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
                                                                                                                                                                                                                                  โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: Error connecting to 'quay.io:443': Network unreachable                                                                                                             โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/halite/src/halite/client.cr:155:7 in 'perform'                                                                                                      โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/halite/src/halite/client.cr:114:18 in 'get'                                                                                                         โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/workload/observability.cr:63:36 in '->'                                                                                                       โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/primitives.cr:266:3 in 'all_cnfs_task_runner'                                                                                               โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/utils/task.cr:19:9 in 'task_runner'                                                                                                           โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/src/tasks/workload/observability.cr:50:19 in '->'                                                                                                        ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/sam/src/sam/task.cr:44:29 in 'call'                                                                                                                   ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/sam/src/sam/task.cr:44:29 in 'call'                                                                                                                    ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /workspace/lib/sam/src/sam/execution.cr:20:7 in '__crystal_main'                                                                                                   โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: /usr/share/crystal/src/crystal/main.cr:110:5 in 'main'                                                                                                             โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
E, [2022-07-12 22:39:31 +00:00 #34666] ERROR -- cnf-testsuite: src/env/__libc_start_main.c:94:2 in 'libc_start_main_stage2'                                                                                                       โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-12 22:39:31 +00:00 #34666]  INFO -- cnf-testsuite: exception with skipped exit code                                                                                                                                   โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-12 22:39:31 +00:00 #34666]  INFO -- cnf-testsuite: Running: open_metrics                                                                                                                                              โ”‚ยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยทยท
I, [2022-07-12 22:39:31 +00:00 #34666]  INFO -- cnf-testsuite: task_runner args: #<Sam::Args:0x7fc36a1ff760 @arr=[], @named_args={}>                                                                                                            

To Reproduce Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior A clear and concise description of what you expected to happen.

Screenshots If applicable, add screenshots to help explain your problem.

Device (please complete the following information):

  • OS [e.g. Linux, iOS, Windows, Android]
  • Distro [e.g. Ubuntu]
  • Version [e.g. 18.04]
  • Architecture [e.g. x86, arm]
  • Browser [e.g. chrome, safari]

How will this be tested? aka Acceptance Criteria (optional)

(optional: unnecessary for things like spelling errors and such)

Once this issue is address how will the fix be verified?

Additional context Add any other context about the problem here.


NOTE: you can enable higher logging level output via the command line or env var. to help with debugging

# cmd line
./cnf-testsuite -l debug test

# make sure to use -- if running from source
crystal src/cnf-testsuite.cr -- -l debug test

# env var
LOGLEVEL=DEBUG ./cnf-testsuite test

Also setting the verbose option for many tasks will add extra output to help with debugging

crystal src/cnf-testsuite.cr test_name verbose

Check usage documentation for more info about invoking commands and logging

denverwilliams avatar Jul 14 '22 20:07 denverwilliams

@agentpoyo is still issue still relevant?

lixuna avatar Feb 21 '24 18:02 lixuna

@agentpoyo is still issue still relevant?

Yes, it can be useful. I've updated to welcome contributors and changed it from BUG to Feature/Enhancement

agentpoyo avatar Feb 22 '24 20:02 agentpoyo

Needs to be retested, very possibly is still an issue.

kosstennbl avatar Sep 04 '24 20:09 kosstennbl