mirror of
https://github.com/actions/actions-runner-controller.git
synced 2026-01-16 08:44:03 +08:00
291 lines
8.5 KiB
YAML
291 lines
8.5 KiB
YAML
suite: "Test AutoscalingRunnerSet Proxy Configuration"
|
|
templates:
|
|
- autoscalingrunnserset.yaml
|
|
tests:
|
|
- it: should not render proxy section when not configured
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- notExists:
|
|
path: spec.proxy
|
|
|
|
- it: should render http proxy configuration
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://proxy.example.com:3128"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://proxy.example.com:3128"
|
|
- notExists:
|
|
path: spec.proxy.https
|
|
|
|
- it: should render https proxy configuration
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
https:
|
|
url: "https://secure-proxy.example.com:3128"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.https.url
|
|
value: "https://secure-proxy.example.com:3128"
|
|
- notExists:
|
|
path: spec.proxy.http
|
|
|
|
- it: should render both http and https proxy configuration
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://proxy.example.com:3128"
|
|
https:
|
|
url: "https://secure-proxy.example.com:3128"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://proxy.example.com:3128"
|
|
- equal:
|
|
path: spec.proxy.https.url
|
|
value: "https://secure-proxy.example.com:3128"
|
|
|
|
- it: should render http proxy with credential secret reference
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://proxy.example.com:3128"
|
|
credentialSecretRef: "proxy-credentials"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://proxy.example.com:3128"
|
|
- equal:
|
|
path: spec.proxy.http.credentialSecretRef
|
|
value: "proxy-credentials"
|
|
|
|
- it: should render https proxy with credential secret reference
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
https:
|
|
url: "https://secure-proxy.example.com:3128"
|
|
credentialSecretRef: "secure-proxy-creds"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.https.url
|
|
value: "https://secure-proxy.example.com:3128"
|
|
- equal:
|
|
path: spec.proxy.https.credentialSecretRef
|
|
value: "secure-proxy-creds"
|
|
|
|
- it: should render proxy with noProxy list
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://proxy.example.com:3128"
|
|
noProxy:
|
|
- "localhost"
|
|
- "127.0.0.1"
|
|
- ".example.local"
|
|
- "10.0.0.0/8"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://proxy.example.com:3128"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "localhost"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "127.0.0.1"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: ".example.local"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "10.0.0.0/8"
|
|
|
|
- it: should render complete proxy configuration with all options
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://proxy.example.com:3128"
|
|
credentialSecretRef: "proxy-credentials"
|
|
https:
|
|
url: "https://secure-proxy.example.com:3128"
|
|
credentialSecretRef: "secure-proxy-creds"
|
|
noProxy:
|
|
- "localhost"
|
|
- "127.0.0.1"
|
|
- ".local"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://proxy.example.com:3128"
|
|
- equal:
|
|
path: spec.proxy.http.credentialSecretRef
|
|
value: "proxy-credentials"
|
|
- equal:
|
|
path: spec.proxy.https.url
|
|
value: "https://secure-proxy.example.com:3128"
|
|
- equal:
|
|
path: spec.proxy.https.credentialSecretRef
|
|
value: "secure-proxy-creds"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "localhost"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "127.0.0.1"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: ".local"
|
|
|
|
- it: should render proxy configuration with empty noProxy list
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://proxy.example.com:3128"
|
|
noProxy: []
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://proxy.example.com:3128"
|
|
- notExists:
|
|
path: spec.proxy.noProxy
|
|
|
|
- it: should not render proxy when configured as empty object
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy: {}
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- notExists:
|
|
path: spec.proxy
|
|
|
|
- it: should render proxy with only http without credentials
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
http:
|
|
url: "http://unauthenticated-proxy.example.com:8080"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.http.url
|
|
value: "http://unauthenticated-proxy.example.com:8080"
|
|
- notExists:
|
|
path: spec.proxy.http.credentialSecretRef
|
|
- notExists:
|
|
path: spec.proxy.https
|
|
|
|
- it: should render proxy with https and noProxy without http
|
|
set:
|
|
scaleset.name: "test"
|
|
auth.url: "https://github.com/org"
|
|
auth.githubToken: "gh_token12345"
|
|
controllerServiceAccount.name: "arc"
|
|
controllerServiceAccount.namespace: "arc-system"
|
|
proxy:
|
|
https:
|
|
url: "https://secure-proxy.example.com:3128"
|
|
noProxy:
|
|
- "internal.example.com"
|
|
- "*.local"
|
|
release:
|
|
name: "test-name"
|
|
namespace: "test-namespace"
|
|
asserts:
|
|
- equal:
|
|
path: spec.proxy.https.url
|
|
value: "https://secure-proxy.example.com:3128"
|
|
- notExists:
|
|
path: spec.proxy.http
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "internal.example.com"
|
|
- contains:
|
|
path: spec.proxy.noProxy
|
|
content: "*.local"
|