clear-skies-aws 1.10.1__tar.gz → 1.10.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/PKG-INFO +1 -1
  2. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/pyproject.toml +1 -1
  3. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/akeyless_with_ssm_cache.py +15 -7
  4. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/LICENSE +0 -0
  5. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/README.md +0 -0
  6. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/__init__.py +0 -0
  7. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/__init__.py +0 -0
  8. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/action_aws.py +0 -0
  9. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/assume_role.py +0 -0
  10. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/assume_role_test.py +0 -0
  11. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/ses.py +0 -0
  12. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/ses_test.py +0 -0
  13. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/sns.py +0 -0
  14. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/sns_test.py +0 -0
  15. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/sqs.py +0 -0
  16. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/sqs_test.py +0 -0
  17. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/step_function.py +0 -0
  18. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/actions/step_function_test.py +0 -0
  19. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/__init__.py +0 -0
  20. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/dynamo_db_backend.py +0 -0
  21. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/dynamo_db_backend_test.py +0 -0
  22. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/dynamo_db_condition_parser.py +0 -0
  23. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/dynamo_db_condition_parser_test.py +0 -0
  24. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/dynamo_db_parti_ql_backend.py +0 -0
  25. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/dynamo_db_parti_ql_backend_test.py +0 -0
  26. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/sqs_backend.py +0 -0
  27. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/backends/sqs_backend_test.py +0 -0
  28. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/__init__.py +0 -0
  29. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/cli.py +0 -0
  30. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/cli_websocket_mock.py +0 -0
  31. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_api_gateway.py +0 -0
  32. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_api_gateway_web_socket.py +0 -0
  33. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_elb.py +0 -0
  34. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_http_gateway.py +0 -0
  35. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_invocation.py +0 -0
  36. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_sns.py +0 -0
  37. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_sqs_standard_partial_batch.py +0 -0
  38. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/lambda_sqs_standard_partial_batch_test.py +0 -0
  39. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/contexts/wsgi.py +0 -0
  40. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/di/__init__.py +0 -0
  41. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/di/standard_dependencies.py +0 -0
  42. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/handlers/__init__.py +0 -0
  43. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/handlers/secrets_manager_rotation.py +0 -0
  44. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/handlers/simple_body_routing.py +0 -0
  45. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/__init__.py +0 -0
  46. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/cli_websocket_mock.py +0 -0
  47. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_api_gateway.py +0 -0
  48. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_api_gateway_test.py +0 -0
  49. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_api_gateway_web_socket.py +0 -0
  50. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_elb.py +0 -0
  51. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_http_gateway.py +0 -0
  52. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_invocation.py +0 -0
  53. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_sns.py +0 -0
  54. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/input_outputs/lambda_sqs_standard.py +0 -0
  55. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/mocks/__init__.py +0 -0
  56. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/mocks/actions/__init__.py +0 -0
  57. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/mocks/actions/ses.py +0 -0
  58. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/mocks/actions/sns.py +0 -0
  59. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/mocks/actions/sqs.py +0 -0
  60. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/mocks/actions/step_function.py +0 -0
  61. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/__init__.py +0 -0
  62. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/additional_configs/__init__.py +0 -0
  63. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/additional_configs/iam_db_auth.py +0 -0
  64. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/additional_configs/iam_db_auth_with_ssm.py +0 -0
  65. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/additional_configs/mysql_connection_dynamic_producer_via_ssh_cert_bastion.py +0 -0
  66. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/additional_configs/mysql_connection_dynamic_producer_via_ssm_bastion.py +0 -0
  67. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/parameter_store.py +0 -0
  68. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/parameter_store_test.py +0 -0
  69. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/secrets_manager.py +0 -0
  70. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/secrets/secrets_manager_test.py +0 -0
  71. {clear_skies_aws-1.10.1 → clear_skies_aws-1.10.2}/src/clearskies_aws/web_socket_connection_model.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: clear-skies-aws
3
- Version: 1.10.1
3
+ Version: 1.10.2
4
4
  Summary: clearskies bindings for working in AWS
5
5
  License: MIT
6
6
  Author: Conor Mancone
@@ -2,7 +2,7 @@
2
2
 
3
3
  [tool.poetry]
4
4
  name = "clear-skies-aws"
5
- version = "1.10.1"
5
+ version = "1.10.2"
6
6
  description = "clearskies bindings for working in AWS"
7
7
  authors = [
8
8
  "Conor Mancone <cmancone@gmail.com>",
@@ -1,16 +1,24 @@
1
+ import re
2
+
1
3
  from clearskies.secrets import AKeyless
4
+
5
+
2
6
  class AkeylessWithSsmCache(AKeyless):
3
7
  _boto3 = None
8
+
4
9
  def __init__(self, requests, environment, boto3):
5
10
  super().__init__(requests, environment)
6
11
  self._boto3 = boto3
7
- if not self._environment.get('AWS_REGION', True):
8
- raise ValueError("To use parameter store you must use set the 'AWS_REGION' environment variable")
12
+ if not self._environment.get("AWS_REGION", True):
13
+ raise ValueError(
14
+ "To use parameter store you must use set the 'AWS_REGION' environment variable"
15
+ )
9
16
 
10
17
  def get(self, path, refresh=False):
11
- ssm = self._boto3.client('ssm', region_name='us-east-1')
12
- # we have spaces in our akeyless names but parameter store doesn't allow that
13
- ssm_name = path.replace(' ', '-')
18
+ ssm = self._boto3.client("ssm", region_name="us-east-1")
19
+ # AWS SSM parameter paths only allow a-z, A-Z, 0-9, -, _, ., /, @, and :
20
+ # Replace any disallowed characters with hyphens
21
+ ssm_name = re.sub(r"[^a-zA-Z0-9\-_\./@:]", "-", path)
14
22
  # if we're not forcing a refresh, then see if it is in paramater store
15
23
  if not refresh:
16
24
  missing = False
@@ -19,7 +27,7 @@ class AkeylessWithSsmCache(AKeyless):
19
27
  except ssm.exceptions.ParameterNotFound:
20
28
  missing = True
21
29
  if not missing:
22
- value = response['Parameter']['Value']
30
+ value = response["Parameter"]["Value"]
23
31
  if value:
24
32
  return value
25
33
 
@@ -31,7 +39,7 @@ class AkeylessWithSsmCache(AKeyless):
31
39
  ssm.put_parameter(
32
40
  Name=ssm_name,
33
41
  Value=value,
34
- Type='SecureString',
42
+ Type="SecureString",
35
43
  Overwrite=True,
36
44
  )
37
45