Skip to content

Commit 03f16a1

Browse files
- Added robot test Set Statement Update Auth Scenario Working.
1 parent eada3e7 commit 03f16a1

File tree

4 files changed

+81
-2
lines changed

4 files changed

+81
-2
lines changed
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"type": "service_account",
3+
"project_id": "silly-project-01",
4+
"private_key_id": "silly-key-id",
5+
"private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEAsTfIs92qRg+srgviU9EHJfcgjn/38QFJTa0xYPSNSLSj4hXw\niyPyZ4ih6nIfW2NP4tvwK3piQrmHx/pQesrp5exKF3b97tf+Cvf9gM+i/3wJGhEb\nE24Py91+/5aXf6TfkuhNutZ3v5qzHYRtWcr3AXcD2WAThF6hxmvQTFTYqcyUb6vl\nt7evG6OleifU5rAKmD8Odk8Hs1skwAmlWjWT1uouWVegFv53a8eUilNiBSnYy/PA\nYchL2fGI8Os+CFyju+ns6dG9H7bAOywvZZaTzlVNvJ42gop03l5xzEwHkUKlcukg\nhyDtP5FTeD5liYUJ/Xqq6Xn6Rjck/AgTwqYePwIDAQABAoIBAQCdS08X3oJ4hwcU\nwDWVgW1f1DYQZSLzxdmDWVr/nHAefT8Mt752MWTBYnOcfMi6O663Q9GrNYgrgzMy\nW0m9g4cRbaXhp9sBeLLil3RpNWKOc1A807v9he39W86SGt7DC9rpMMl1MVC+PxgF\n9fl8/no40aMX+H+6OKhMTntmlNRt+E1WUIGBk9cScb37e+oAStfS0Z6c8kQ9CkOZ\nHwydCtq8gQDpkRYMM3m7j3j9mr2Rma1o8xcBbgbomYn6y2xPQf1B4rs9fb8txngv\nGxA+QSRSXNMQmQFLmoc6d3XHFZQ5LX7atRhHsnt4blb8GNqJg8FsTFED68cWKoNp\n0Lk7c/9xAoGBAOLplpGdg3ezAMtFR5gAi8pV9vGJairJsuBij22uK0rItNkaff4G\nYyciybCKJZfXTcOzYq/CGh8KwxhN6RECmHm+bHfnxFDdHXS8e0bs8oTlR7w3yHs4\nhrplBMCwyAgSsma7s8aNBfdkDlPMxYmvytWdHf3T4mj6C5LGlFzpTLmpAoGBAMfv\naHNPLCoJjvQmNlzboN0sLZYhRl2YgW86mM0MoW7pO4cY4On5twbdFD7AtHIKF4j5\nomsMVfTDvKZ+jbHoJFuvvhozq0T/LpEx5b6d27A4pfacmG0zNaLaopoDYQ6wBvYD\n4L9OScFRrtf/X3ZgLzsmNpEVlqyUU2tbCAJVa5mnAoGBAI7ODVmVNPD3Mc+7ySPr\nbA6p7WDzZ2KIT9ARl0yiqVJGYDKmDpb5NBukNCSrvJ8D/EfmtHwCf2f74O6B0eVH\nqegspJ0NuqpdjjUyja8EXliu52eX/880su3Jt6UBXNJf2fD3vlt90zxvtuicXdGa\nVd/8IqzlVX9VpkT4PtT+arAJAoGAZkmknYG+7Y7QVTaLj3xJ0327oNhLQK06YyaO\ncDFrEew/KUHgJ7Q7IEbRCb3bU5C4M7rLjorUGxJdHK0YXxGOMF48GvmeQQFw2JW3\nnYrzjzecKQw6q3uMkFHc6ICcEkCafxjCzf0GnOHmWtlrBIv2/gLx3c42tPp5py3+\nbfs3vncCgYEA0x6tF67q3zt+daUMUox6LimkkDJLsfqnmKjvHFAhKQaqOObWaody\nfGOzlf/KLX15uicYWeCwRrs03OjBfk6LEtVddsZOrjJEp8+6gA8KEf58MJhNuRVj\no3qSe9po1TMj0/hvzd32klXslpqQjXFjm9U3lAxfcRdgWsG7SciOAAs=\n-----END RSA PRIVATE KEY-----\n",
6+
"client_email": "[email protected]",
7+
"client_id": "11",
8+
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
9+
"token_uri": "https://non.existent.host:7777/token",
10+
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
11+
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/silly-sa%40silly-project-01.iam.gserviceaccount.com"
12+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"type": "service_account",
3+
"project_id": "silly-project-01",
4+
"private_key_id": "silly-key-id",
5+
"private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEAsTfIs92qRg+srgviU9EHJfcgjn/38QFJTa0xYPSNSLSj4hXw\niyPyZ4ih6nIfW2NP4tvwK3piQrmHx/pQesrp5exKF3b97tf+Cvf9gM+i/3wJGhEb\nE24Py91+/5aXf6TfkuhNutZ3v5qzHYRtWcr3AXcD2WAThF6hxmvQTFTYqcyUb6vl\nt7evG6OleifU5rAKmD8Odk8Hs1skwAmlWjWT1uouWVegFv53a8eUilNiBSnYy/PA\nYchL2fGI8Os+CFyju+ns6dG9H7bAOywvZZaTzlVNvJ42gop03l5xzEwHkUKlcukg\nhyDtP5FTeD5liYUJ/Xqq6Xn6Rjck/AgTwqYePwIDAQABAoIBAQCdS08X3oJ4hwcU\nwDWVgW1f1DYQZSLzxdmDWVr/nHAefT8Mt752MWTBYnOcfMi6O663Q9GrNYgrgzMy\nW0m9g4cRbaXhp9sBeLLil3RpNWKOc1A807v9he39W86SGt7DC9rpMMl1MVC+PxgF\n9fl8/no40aMX+H+6OKhMTntmlNRt+E1WUIGBk9cScb37e+oAStfS0Z6c8kQ9CkOZ\nHwydCtq8gQDpkRYMM3m7j3j9mr2Rma1o8xcBbgbomYn6y2xPQf1B4rs9fb8txngv\nGxA+QSRSXNMQmQFLmoc6d3XHFZQ5LX7atRhHsnt4blb8GNqJg8FsTFED68cWKoNp\n0Lk7c/9xAoGBAOLplpGdg3ezAMtFR5gAi8pV9vGJairJsuBij22uK0rItNkaff4G\nYyciybCKJZfXTcOzYq/CGh8KwxhN6RECmHm+bHfnxFDdHXS8e0bs8oTlR7w3yHs4\nhrplBMCwyAgSsma7s8aNBfdkDlPMxYmvytWdHf3T4mj6C5LGlFzpTLmpAoGBAMfv\naHNPLCoJjvQmNlzboN0sLZYhRl2YgW86mM0MoW7pO4cY4On5twbdFD7AtHIKF4j5\nomsMVfTDvKZ+jbHoJFuvvhozq0T/LpEx5b6d27A4pfacmG0zNaLaopoDYQ6wBvYD\n4L9OScFRrtf/X3ZgLzsmNpEVlqyUU2tbCAJVa5mnAoGBAI7ODVmVNPD3Mc+7ySPr\nbA6p7WDzZ2KIT9ARl0yiqVJGYDKmDpb5NBukNCSrvJ8D/EfmtHwCf2f74O6B0eVH\nqegspJ0NuqpdjjUyja8EXliu52eX/880su3Jt6UBXNJf2fD3vlt90zxvtuicXdGa\nVd/8IqzlVX9VpkT4PtT+arAJAoGAZkmknYG+7Y7QVTaLj3xJ0327oNhLQK06YyaO\ncDFrEew/KUHgJ7Q7IEbRCb3bU5C4M7rLjorUGxJdHK0YXxGOMF48GvmeQQFw2JW3\nnYrzjzecKQw6q3uMkFHc6ICcEkCafxjCzf0GnOHmWtlrBIv2/gLx3c42tPp5py3+\nbfs3vncCgYEA0x6tF67q3zt+daUMUox6LimkkDJLsfqnmKjvHFAhKQaqOObWaody\nfGOzlf/KLX15uicYWeCwRrs03OjBfk6LEtVddsZOrjJEp8+6gA8KEf58MJhNuRVj\no3qSe9po1TMj0/hvzd32klXslpqQjXFjm9U3lAxfcRdgWsG7SciOAAs=\n-----END RSA PRIVATE KEY-----\n",
6+
"client_email": "[email protected]",
7+
"client_id": "11",
8+
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
9+
"token_uri": "https://non.existent.host:7777/token",
10+
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
11+
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/silly-sa%40silly-project-01.iam.gserviceaccount.com"
12+
}

test/robot/functional/stackql_mocked_from_cmd_line.robot

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7158,3 +7158,41 @@ Show Methods Path Level Parameters Considered as Exemplified by Azure Dev Center
71587158
... ${EMPTY}
71597159
... stdout=${CURDIR}/tmp/Show-Methods-Path-Level-Parameters-Considered-as-Exemplified-by-Azure-Dev-Center-Customization-Tasks-Methods.tmp
71607160
... stderr=${CURDIR}/tmp/Show-Methods-Path-Level-Parameters-Considered-as-Exemplified-by-Azure-Dev-Center-Customization-Tasks-Methods-stderr.tmp
7161+
7162+
Set Statement Update Auth Scenario Working
7163+
${inputStr} = Catenate
7164+
... set session "$.auth.google.credentialsfilepath"='${AUTH_GOOGLE_SA_KEY_PATH}';
7165+
... select name, id, network, split_part(network, '/', 8) as network_region from google.compute.firewalls where project \= 'testing-project' order by id desc;
7166+
${outputStr} = Catenate SEPARATOR=\n
7167+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7168+
... |${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}name${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}id${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}network${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}network_region${SPACE}|
7169+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7170+
... |${SPACE}selected-allow-rdesk${SPACE}${SPACE}${SPACE}|${SPACE}8888888888888${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7171+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7172+
... |${SPACE}default-allow-ssh${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}777777777777${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7173+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7174+
... |${SPACE}default-allow-rdp${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}${SPACE}${SPACE}6666666666${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7175+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7176+
... |${SPACE}default-allow-internal${SPACE}|${SPACE}5555555555555${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7177+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7178+
... |${SPACE}default-allow-icmp${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}4444444444444${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7179+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7180+
... |${SPACE}default-allow-https${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}33333333${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7181+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7182+
... |${SPACE}default-allow-http${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}${SPACE}22222222222${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7183+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7184+
... |${SPACE}allow-spark-ui${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|${SPACE}${SPACE}111111111111${SPACE}|${SPACE}https://www.googleapis.com/compute/v1/projects/testing-project/global/networks/default${SPACE}|${SPACE}global${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}${SPACE}|
7185+
... |------------------------|---------------|----------------------------------------------------------------------------------------|----------------|
7186+
Should Stackql Exec Inline Equal Both Streams
7187+
... ${STACKQL_EXE}
7188+
... ${OKTA_SECRET_STR}
7189+
... ${GITHUB_SECRET_STR}
7190+
... ${K8S_SECRET_STR}
7191+
... ${REGISTRY_NO_VERIFY_CFG_STR}
7192+
... ${AUTH_CFG_DEFECTIVE_STR}
7193+
... ${SQL_BACKEND_CFG_STR_CANONICAL}
7194+
... ${inputStr}
7195+
... ${outputStr}
7196+
... ${EMPTY}
7197+
... stdout=${CURDIR}/tmp/Set-Statement-Update-Auth-Scenario-Working-Working.tmp
7198+
... stderr=${CURDIR}/tmp/Set-Statement-Update-Auth-Scenario-Working-Working-stderr.tmp

test/robot/lib/stackql_context.py

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -185,9 +185,12 @@ def get_registry_mocked(execution_env :str) -> RegistryCfg:
185185
get_unix_path(os.path.join('test', 'registry-deprecated')),
186186
nop_verify=True
187187
)
188+
189+
_AUTH_GOOGLE_SA_KEY_PATH = os.path.join(REPOSITORY_ROOT, 'test', 'assets', 'credentials', 'dummy', 'google', 'functional-test-dummy-sa-key.json')
190+
188191
_AUTH_CFG={
189192
"google": {
190-
"credentialsfilepath": get_unix_path(os.path.join(REPOSITORY_ROOT, 'test', 'assets', 'credentials', 'dummy', 'google', 'functional-test-dummy-sa-key.json')),
193+
"credentialsfilepath": _AUTH_GOOGLE_SA_KEY_PATH,
191194
"type": "service_account"
192195
},
193196
"okta": {
@@ -224,6 +227,9 @@ def get_registry_mocked(execution_env :str) -> RegistryCfg:
224227
}
225228
}
226229

230+
_AUTH_CFG_DEFECTIVE= copy.deepcopy(_AUTH_CFG)
231+
_AUTH_CFG_DEFECTIVE["google"]["credentialsfilepath"] = get_unix_path(os.path.join(REPOSITORY_ROOT, 'test', 'assets', 'credentials', 'dummy', 'google', 'defective-dummy-sa-key.json'))
232+
227233
_AUTH_PLUS_EXTERNAL_POSTGRES = copy.deepcopy(_AUTH_CFG)
228234

229235
_AUTH_PLUS_EXTERNAL_POSTGRES["pgi"] = {
@@ -233,9 +239,11 @@ def get_registry_mocked(execution_env :str) -> RegistryCfg:
233239
}
234240
}
235241

242+
_AUTH_GOOGLE_SA_KEY_PATH_DOCKER = os.path.join('/opt', 'stackql', 'credentials', 'dummy', 'google', 'docker-functional-test-dummy-sa-key.json')
243+
236244
_AUTH_CFG_DOCKER={
237245
"google": {
238-
"credentialsfilepath": get_unix_path(os.path.join('/opt', 'stackql', 'credentials', 'dummy', 'google', 'docker-functional-test-dummy-sa-key.json')),
246+
"credentialsfilepath": _AUTH_GOOGLE_SA_KEY_PATH_DOCKER,
239247
"type": "service_account"
240248
},
241249
"okta": {
@@ -272,6 +280,9 @@ def get_registry_mocked(execution_env :str) -> RegistryCfg:
272280
}
273281
}
274282

283+
_AUTH_CFG_DEFECTIVE_DOCKER= copy.deepcopy(_AUTH_CFG_DOCKER)
284+
_AUTH_CFG_DEFECTIVE_DOCKER["google"]["credentialsfilepath"] = get_unix_path(os.path.join('/opt', 'stackql', 'credentials', 'dummy', 'google', 'docker-defective-dummy-sa-key.json'))
285+
275286
_AUTH_PLUS_EXTERNAL_POSTGRES_DOCKER = copy.deepcopy(_AUTH_CFG_DOCKER)
276287

277288
_AUTH_PLUS_EXTERNAL_POSTGRES_DOCKER["pgi"] = {
@@ -502,6 +513,8 @@ def get_registry_cfg(url :str, local_root :str, nop_verify :bool) -> dict:
502513

503514
AUTH_CFG_STR = json.dumps(_AUTH_CFG)
504515
AUTH_CFG_STR_DOCKER = json.dumps(_AUTH_CFG_DOCKER)
516+
AUTH_CFG_DEFECTIVE_STR = json.dumps(_AUTH_CFG_DEFECTIVE)
517+
AUTH_CFG_DEFECTIVE_STR_DOCKER = json.dumps(_AUTH_CFG_DEFECTIVE_DOCKER)
505518
AUTH_PLUS_EXTERNAL_POSTGRES = json.dumps(_AUTH_PLUS_EXTERNAL_POSTGRES)
506519
AUTH_PLUS_EXTERNAL_POSTGRES_DOCKER = json.dumps(_AUTH_PLUS_EXTERNAL_POSTGRES_DOCKER)
507520
AUTH_CFG_INTEGRATION_STR = json.dumps(_AUTH_CFG_INTEGRATION)
@@ -1082,6 +1095,8 @@ def get_variables(execution_env :str, sql_backend_str :str, use_stackql_preinsta
10821095
}
10831096
if execution_env == 'docker':
10841097
rv['AUTH_CFG_STR'] = AUTH_CFG_STR_DOCKER
1098+
rv['AUTH_CFG_DEFECTIVE_STR'] = AUTH_CFG_DEFECTIVE_STR_DOCKER
1099+
rv['AUTH_GOOGLE_SA_KEY_PATH'] = _AUTH_GOOGLE_SA_KEY_PATH_DOCKER
10851100
rv['AUTH_PLUS_EXTERNAL_POSTGRES'] = AUTH_PLUS_EXTERNAL_POSTGRES_DOCKER
10861101
rv['AUTH_CFG_STR_INTEGRATION'] = AUTH_CFG_INTEGRATION_STR_DOCKER
10871102
rv['GET_IAM_POLICY_AGG_ASC_INPUT_FILE'] = GET_IAM_POLICY_AGG_ASC_INPUT_FILE_DOCKER
@@ -1120,6 +1135,8 @@ def get_variables(execution_env :str, sql_backend_str :str, use_stackql_preinsta
11201135
rv['REGISTRY_SQL_VERB_CONTRIVED_NO_VERIFY_CFG_STR'] = _REGISTRY_SQL_VERB_CONTRIVED_NO_VERIFY_DOCKER
11211136
else:
11221137
rv['AUTH_CFG_STR'] = AUTH_CFG_STR
1138+
rv['AUTH_CFG_DEFECTIVE_STR'] = AUTH_CFG_DEFECTIVE_STR
1139+
rv['AUTH_GOOGLE_SA_KEY_PATH'] = _AUTH_GOOGLE_SA_KEY_PATH
11231140
rv['AUTH_PLUS_EXTERNAL_POSTGRES'] = AUTH_PLUS_EXTERNAL_POSTGRES
11241141
rv['AUTH_CFG_STR_INTEGRATION'] = AUTH_CFG_INTEGRATION_STR
11251142
rv['GET_IAM_POLICY_AGG_ASC_INPUT_FILE'] = GET_IAM_POLICY_AGG_ASC_INPUT_FILE

0 commit comments

Comments
 (0)