stackql-deploy 2.0.8

Infrastructure-as-code framework for declarative cloud resource management using StackQL
/*+ exists */
SELECT count(*) as count
FROM databricks_account.provisioning.credentials
WHERE account_id = '{{ account_id }}'
AND credentials_name = '{{ credentials_name }}' ;

/*+ create */
INSERT INTO databricks_account.provisioning.credentials (
credentials_name,
aws_credentials,
account_id
)
SELECT 
'{{ credentials_name }}',
'{{ aws_credentials }}',
'{{ account_id }}'
;

/*+ statecheck, retries=5, retry_delay=10 */
SELECT count(*) as count
FROM databricks_account.provisioning.credentials
WHERE 
credentials_name = '{{ credentials_name }}' AND
JSON_EXTRACT(aws_credentials, '$.sts_role.role_arn') = '{{ aws_cross_account_role.arn }}' AND
account_id = '{{ account_id }}';

/*+ exports */
SELECT
credentials_name,
credentials_id,
JSON_EXTRACT(aws_credentials, '$.sts_role.external_id') as external_id
FROM databricks_account.provisioning.credentials
WHERE account_id = '{{ account_id }}'
AND credentials_name = '{{ credentials_name }}';

/*+ delete */
DELETE FROM databricks_account.provisioning.credentials
WHERE account_id = '{{ account_id }}'
AND credentials_id = '{{ credentials_id }}';