-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdev.env.example
More file actions
117 lines (103 loc) · 4.05 KB
/
Copy pathdev.env.example
File metadata and controls
117 lines (103 loc) · 4.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# Required make variables
export AWS_DEFAULT_PROFILE=me
export LAB_SHORT_NAME="dd"
# Infrastructure Configuration
export JUPYTER_HUB_IMAGE_PATH="ghcr.io/asfopensarlab/opensciencelab-jupyterhub"
export JUPYTER_HUB_IMAGE_TAG="test"
export CRYPTNONO_ALERT_EMAIL="admin@example.com"
export EXECWHACKER_CRON_IMAGE_PATH="ghcr.io/asfopensarlab/opensciencelab-update-execwhacker"
export EXECWHACKER_CRON_IMAGE_TAG="test"
export IS_CRYPTNONO_ENABLED="true"
export UI_IAM_ROLE="aws-reserved/sso.amazonaws.com/AWSReservedSSO_Project-Admin_012345678910ABCD"
export ADMIN_USERS="nobody"
export PORTAL_DOMAINS="<CLOUDFRONT-URL>"
# volume Management Lambda - default values listed
export VOLUME_CRON_SCHEDULE="0 * * * ? *"
export SNAPSHOT_WARNING_DAYS="5,3,1"
export SNAPSHOT_GRACEPERIOD_DAYS=1
# Volume and snapshot lifecycle times
export DAYS_TILL_VOLUME_DELETION=2
export DAYS_TILL_SNAPSHOT_DELETION=7
# For running storage management lambda outside AWS
export AWS_CLI_PATH=/usr/local/bin/aws
export SSO_SECRET_ARN=arn:aws:secretsmanager:us-west-2:22333444455555:secret:sso-token/cluster-token-id
#
# Lab Profiles
#
# Possible profiles that a user can select to start a lab for all labs.
# The actual profiles available to the lab is determined by the AVAILABLE_LAB_PROFILES GitHub environment var
# Among those profiles available to the lab, the user will get those assigned from within the Portal
#
# [ lab_profiles."my_profile_name" ] # The profile name should be in quotes if it contains a decimal
# description = "Hello world"
# image_url = "http://..." # FQDN path to JupyterLab image that will be started"
# node = "" # Name of the node that the image will be starting on. Needs to match any defined below."
# hook_script = "" # The hook script to run on server startup. Defaults to None (no script ran).
# storage_capacity = "" # The size of the EBS volume used for user's home directory. Defaults to 10Gi. This cannot be shrunk - only expanded. If the config value is smaller than current storage values, it will be ignored.
#
export PROFILE_DEFINITIONS=$(cat << 'EOF'
[ "m6a.large" ]
description = "Hello m6a.large"
image_url = "ghcr.io/asfopensarlab/deployment-opensarlab-container_sar:test"
node = "m6a-large"
hook_script = "default.sh"
storage_capacity = "15Gi"
[ "m6a.xlarge" ]
description = "Hello m6a.xlarge"
image_url = "ghcr.io/asfopensarlab/deployment-opensarlab-container_sar:test"
node = "m6a-xlarge"
hook_script = "default.sh"
storage_capacity = "15Gi"
[ "sar" ]
description = "Hello, there sar"
image_url = "ghcr.io/asfopensarlab/deployment-opensarlab-container_sar:test"
node = "sar"
hook_script = "default.sh"
storage_capacity = "15Gi"
[ "Debug Server Profile" ]
description = "Debug"
image_url = "ghcr.io/asfopensarlab/deployment-opensarlab-container_sar:test"
node = "m6a-large"
storage_capacity = "15Gi"
EOF
)
#
# Nodes
#
# Possible k8s nodes that jupyterlab servers can start on for all labs.
# Nodes are selected based on the lab profile as defined above.
#
#
# [ lab_profiles."my-url-friendly-node-name" ] # Note that the node name must be url friendly since nodes are assigned domain paths by k8s
# required = boolean # Set to 'true' if node is required. Defaults to false. Optional.
# node_type = "core | user" # Required
# instance = ["t3a.large", "other_instance_size"] # The first instance size in the instance list will be the first to be tried, followed by any others in that order. Required.
# group_min_size = number # Required.
# group_max_size = number # Must be greater than zero. Required.
# root_volume_size = number # Size in GiB of root EC2 volume. Default is 20. This number must usually be 20 or greater. Optional.
#
export NODE_DEFINITIONS=$(cat << 'EOF'
[ core ]
required = true
node_type = "core"
instance = ["t3a.large"]
group_min_size = 1
group_max_size = 1
[ sar ]
node_type = "user"
instance = ["m5a.large", "m6a.large"]
group_min_size = 0
group_max_size = 5
[ m6a-large ]
node_type = "user"
instance = ["m6a.large"]
group_min_size = 0
group_max_size = 5
root_volume_size=21
[ m6a-xlarge ]
node_type = "user"
instance = ["m6a.xlarge"]
group_min_size = 0
group_max_size = 2
EOF
)