-
Notifications
You must be signed in to change notification settings - Fork 72
Expand file tree
/
Copy pathproxy.feature
More file actions
64 lines (60 loc) · 2.33 KB
/
proxy.feature
File metadata and controls
64 lines (60 loc) · 2.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
Feature: HTTPS proxy support for outbound catalog requests
OLM's operator-controller fetches catalog data from catalogd over HTTPS.
When HTTPS_PROXY is set in the operator-controller's environment, all
outbound HTTPS requests must be routed through the configured proxy.
Background:
Given OLM is available
And ClusterCatalog "test" serves bundles
And ServiceAccount "olm-sa" with needed permissions is available in test namespace
@HTTPProxy
Scenario: operator-controller respects HTTPS_PROXY when fetching catalog data
Given the "operator-controller" component is configured with HTTPS_PROXY "http://127.0.0.1:39999"
When ClusterExtension is applied
"""
apiVersion: olm.operatorframework.io/v1
kind: ClusterExtension
metadata:
name: ${NAME}
spec:
namespace: ${TEST_NAMESPACE}
serviceAccount:
name: olm-sa
source:
sourceType: Catalog
catalog:
packageName: test
selector:
matchLabels:
"olm.operatorframework.io/metadata.name": test-catalog
"""
Then ClusterExtension reports Progressing as True with Reason Retrying and Message includes:
"""
proxyconnect
"""
@HTTPProxy
Scenario: operator-controller sends catalog requests through a configured HTTPS proxy
# The recording proxy runs on the host and cannot route to in-cluster service
# addresses, so it responds 502 after recording the CONNECT. This is
# intentional: the scenario only verifies that operator-controller respects
# HTTPS_PROXY and sends catalog fetches through the proxy, not that the full
# end-to-end request succeeds.
Given the "operator-controller" component is configured with HTTPS_PROXY pointing to a recording proxy
When ClusterExtension is applied
"""
apiVersion: olm.operatorframework.io/v1
kind: ClusterExtension
metadata:
name: ${NAME}
spec:
namespace: ${TEST_NAMESPACE}
serviceAccount:
name: olm-sa
source:
sourceType: Catalog
catalog:
packageName: test
selector:
matchLabels:
"olm.operatorframework.io/metadata.name": test-catalog
"""
Then the recording proxy received a CONNECT request for the catalogd service