or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

Files

docs

athena-queries.mdcloudwatch-logging.mdecr-integration.mdecs-orchestration.mdemr-processing.mdindex.mdparameter-store.mdpipes-orchestration.mdrds-operations.mdredshift-integration.mds3-storage.mdsecrets-management.md

parameter-store.mddocs/

0

# Parameter Store Configuration

1

2

Access AWS Systems Manager Parameter Store for configuration management and secure parameter storage in Dagster pipelines.

3

4

## Capabilities

5

6

### Parameter Store Resource

7

8

```python { .api }

9

class ParameterStoreResource(ResourceWithBoto3Configuration):

10

"""

11

Resource for accessing SSM Parameter Store.

12

"""

13

14

def get_parameter(self, name: str, with_decryption: bool = True) -> str:

15

"""

16

Get parameter value from Parameter Store.

17

18

Parameters:

19

name: Parameter name

20

with_decryption: Decrypt SecureString parameters

21

22

Returns:

23

str: Parameter value

24

"""

25

26

def get_parameters_by_path(

27

self,

28

path: str,

29

recursive: bool = True,

30

with_decryption: bool = True

31

) -> Dict[str, str]:

32

"""

33

Get parameters by path prefix.

34

35

Parameters:

36

path: Parameter path prefix

37

recursive: Include nested paths

38

with_decryption: Decrypt SecureString parameters

39

40

Returns:

41

Dict: Parameter name to value mapping

42

"""

43

44

class ParameterStoreTag:

45

"""

46

Tag filter for Parameter Store queries.

47

"""

48

key: str

49

values: List[str]

50

51

class SSMResource(ResourceWithBoto3Configuration):

52

"""

53

General SSM resource for broader SSM operations.

54

"""

55

56

def parameter_store_resource(**kwargs) -> ParameterStoreResource: ...

57

def ssm_resource(**kwargs) -> SSMResource: ...

58

```

59

60

## Usage Examples

61

62

```python

63

from dagster import op, job, Definitions

64

from dagster_aws.ssm import ParameterStoreResource

65

66

@op(required_resource_keys={"params"})

67

def get_configuration(context):

68

params = context.resources.params

69

70

# Get individual parameter

71

api_key = params.get_parameter("/app/prod/api-key")

72

73

# Get all parameters for environment

74

config = params.get_parameters_by_path("/app/prod/")

75

76

return {

77

"api_key": api_key,

78

"database_url": config["/app/prod/database-url"],

79

"cache_ttl": int(config["/app/prod/cache-ttl"])

80

}

81

82

@job(

83

resource_defs={

84

"params": ParameterStoreResource(region_name="us-east-1")

85

}

86

)

87

def configured_job():

88

get_configuration()

89

90

defs = Definitions(jobs=[configured_job])

91

```