Skip to content

Commit 1f4b9d0

Browse files
authored
Merge pull request #81 from IBM/avir_cs_2025_q2
patch: custom credentials secret type
2 parents 9786abc + ea70e68 commit 1f4b9d0

File tree

5 files changed

+11674
-7204
lines changed

5 files changed

+11674
-7204
lines changed

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ easy_install --upgrade "ibm-secrets-manager-sdk"
4747
Secrets Manager uses token-based Identity and Access Management (IAM) authentication.
4848

4949
With IAM authentication, you supply an API key that is used to generate an access token. Then, the access token is included in each API request to Secrets Manager. Access tokens are valid for a limited amount of time and must be regenerated.
50-
5150
Authentication for this SDK is accomplished by using [IAM authenticators](https://github.com/IBM/ibm-cloud-sdk-common/blob/master/README.md#authentication). Import authenticators from `ibm_cloud_sdk_core.authenticators`.
5251

5352
### Examples

examples/test_secrets_manager_v2_examples.py

Lines changed: 105 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -218,16 +218,11 @@ def test_list_secret_versions_example(self):
218218

219219
secret_version_id_for_get_secret_version_link = secret_version_metadata_collection['versions'][0]['id']
220220
secret_id_for_create_secret_version_link = secret_version_metadata_collection['versions'][0]['secret_id']
221-
secret_version_id_for_get_secret_version_metadata_link = secret_version_metadata_collection['versions'][0][
222-
'id']
223-
secret_version_id_for_update_secret_version_metadata_link = \
224-
secret_version_metadata_collection['versions'][0]['id']
225-
secret_id_for_create_secret_version_locks_link = secret_version_metadata_collection['versions'][0][
226-
'secret_id']
227-
secret_version_id_for_create_secret_version_locks_link = secret_version_metadata_collection['versions'][0][
228-
'id']
229-
secret_version_id_for_delete_secret_version_locks_link = secret_version_metadata_collection['versions'][0][
230-
'id']
221+
secret_version_id_for_get_secret_version_metadata_link = secret_version_metadata_collection['versions'][0]['id']
222+
secret_version_id_for_update_secret_version_metadata_link = secret_version_metadata_collection['versions'][0]['id']
223+
secret_id_for_create_secret_version_locks_link = secret_version_metadata_collection['versions'][0]['secret_id']
224+
secret_version_id_for_create_secret_version_locks_link = secret_version_metadata_collection['versions'][0]['id']
225+
secret_version_id_for_delete_secret_version_locks_link = secret_version_metadata_collection['versions'][0]['id']
231226
except ApiException as e:
232227
pytest.fail(str(e))
233228

@@ -623,6 +618,85 @@ def test_create_secret_version_action_example(self):
623618
except ApiException as e:
624619
pytest.fail(str(e))
625620

621+
@needscredentials
622+
def test_list_secret_tasks_example(self):
623+
"""
624+
list_secret_tasks request example
625+
"""
626+
try:
627+
print('\nlist_secret_tasks() result:')
628+
629+
# begin-list_secret_tasks
630+
631+
response = secrets_manager_service.list_secret_tasks(
632+
secret_id=secret_id_for_get_secret_link,
633+
)
634+
secret_task_collection = response.get_result()
635+
636+
print(json.dumps(secret_task_collection, indent=2))
637+
638+
# end-list_secret_tasks
639+
640+
except ApiException as e:
641+
pytest.fail(str(e))
642+
643+
@needscredentials
644+
def test_get_secret_task_example(self):
645+
"""
646+
get_secret_task request example
647+
"""
648+
try:
649+
print('\nget_secret_task() result:')
650+
651+
# begin-get_secret_task
652+
653+
response = secrets_manager_service.get_secret_task(
654+
secret_id=secret_id_for_get_secret_link,
655+
id=secret_id_for_get_secret_link,
656+
)
657+
secret_task = response.get_result()
658+
659+
print(json.dumps(secret_task, indent=2))
660+
661+
# end-get_secret_task
662+
663+
except ApiException as e:
664+
pytest.fail(str(e))
665+
666+
@needscredentials
667+
def test_replace_secret_task_example(self):
668+
"""
669+
replace_secret_task request example
670+
"""
671+
try:
672+
print('\nreplace_secret_task() result:')
673+
674+
# begin-replace_secret_task
675+
676+
custom_credentials_new_credentials_model = {
677+
'id': 'b49ad24d-81d4-5ebc-b9b9-b0937d1c84d5',
678+
'payload': {'token': 'xF9v7OztItL5DOnFgHfS9NCT1sLTUew8KYZcZfxI'},
679+
}
680+
681+
secret_task_prototype_model = {
682+
'status': 'credentials_created',
683+
'credentials': custom_credentials_new_credentials_model,
684+
}
685+
686+
response = secrets_manager_service.replace_secret_task(
687+
secret_id=secret_id_for_get_secret_link,
688+
id=secret_id_for_get_secret_link,
689+
task_put=secret_task_prototype_model,
690+
)
691+
secret_task = response.get_result()
692+
693+
print(json.dumps(secret_task, indent=2))
694+
695+
# end-replace_secret_task
696+
697+
except ApiException as e:
698+
pytest.fail(str(e))
699+
626700
@needscredentials
627701
def test_list_secrets_locks_example(self):
628702
"""
@@ -756,7 +830,7 @@ def test_list_configurations_example(self):
756830
limit=10,
757831
sort='config_type',
758832
search='example',
759-
secret_types=['iam_credentials', 'public_cert', 'private_cert'],
833+
secret_types=['iam_credentials', 'public_cert', 'private_cert', 'custom_credentials'],
760834
)
761835
while pager.has_next():
762836
next_page = pager.get_next()
@@ -1011,6 +1085,25 @@ def test_delete_secret_example(self):
10111085
except ApiException as e:
10121086
pytest.fail(str(e))
10131087

1088+
@needscredentials
1089+
def test_delete_secret_task_example(self):
1090+
"""
1091+
delete_secret_task request example
1092+
"""
1093+
try:
1094+
# begin-delete_secret_task
1095+
1096+
response = secrets_manager_service.delete_secret_task(
1097+
secret_id=secret_id_for_get_secret_link,
1098+
id=secret_id_for_get_secret_link,
1099+
)
1100+
1101+
# end-delete_secret_task
1102+
print('\ndelete_secret_task() response status code: ', response.get_status_code())
1103+
1104+
except ApiException as e:
1105+
pytest.fail(str(e))
1106+
10141107
@needscredentials
10151108
def test_delete_configuration_example(self):
10161109
"""
@@ -1046,6 +1139,7 @@ def test_delete_notifications_registration_example(self):
10461139
except ApiException as e:
10471140
pytest.fail(str(e))
10481141

1142+
10491143
# endregion
10501144
##############################################################################
10511145
# End of Examples for Service: SecretsManagerV2

0 commit comments

Comments
 (0)