-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeploy.sh
executable file
·71 lines (56 loc) · 1.92 KB
/
deploy.sh
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
#!/bin/bash
set -e
LOCATION="europe-west3"
PROJECT_NAME="stupid-schedule"
TRIGGER="ping_schedule"
TOPIC="projects/$PROJECT_NAME/topics/$TRIGGER"
# Deploy function.
gcloud functions deploy f_scheduled \
--gen2 \
--entry-point main \
--memory=512 \
--runtime python311 \
--trigger-resource "$TRIGGER" \
--trigger-event google.pubsub.topic.publish \
--timeout 540s \
--region "$LOCATION" \
--env-vars-file env-vars.yaml \
--project "$PROJECT_NAME"
# Remove existing triggers.
gcloud scheduler jobs delete pubsub_cal_weekly \
--location "$LOCATION" \
--project "$PROJECT_NAME"
gcloud scheduler jobs delete pubsub_cal_daily \
--location "$LOCATION" \
--project "$PROJECT_NAME"
gcloud scheduler jobs delete pubsub_org_weekly \
--location "$LOCATION" \
--project "$PROJECT_NAME"
gcloud scheduler jobs delete pubsub_org_daily \
--location "$LOCATION" \
--project "$PROJECT_NAME"
# Create new triggers.
gcloud scheduler jobs create pubsub pubsub_cal_weekly \
--schedule "10 16 * * SUN" \
--topic "$TOPIC" \
--message-body '{"kind": "calendar_weekly"}' \
--location "$LOCATION" \
--project "$PROJECT_NAME"
gcloud scheduler jobs create pubsub pubsub_cal_daily \
--schedule "0 19 * * *" \
--topic "$TOPIC" \
--message-body '{"kind": "calendar_daily"}' \
--location "$LOCATION" \
--project "$PROJECT_NAME"
gcloud scheduler jobs create pubsub pubsub_org_weekly \
--schedule "0 16 * * SUN" \
--topic "$TOPIC" \
--message-body '{"kind": "org_weekly"}' \
--location "$LOCATION" \
--project "$PROJECT_NAME"
gcloud scheduler jobs create pubsub pubsub_org_daily \
--schedule "0 7 * * *" \
--topic "$TOPIC" \
--message-body '{"kind": "org_daily"}' \
--location "$LOCATION" \
--project "$PROJECT_NAME"