-
Notifications
You must be signed in to change notification settings - Fork 1
/
deployment.yaml
142 lines (142 loc) · 6.67 KB
/
deployment.yaml
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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
---
targetArn: arn:aws:iot:ap-southeast-2:926078734639:thinggroup/ReceiptPrinterGroup
deploymentName: ReceiptPrinterDeployment
components:
aws.greengrass.Cli:
componentVersion: "2.1.0"
aws.greengrass.LogManager:
componentVersion: "2.1.0"
configurationUpdate:
merge: >-
{
"logsUploaderConfiguration": {
"systemLogsConfiguration": {
"uploadToCloudWatch": "true",
"minimumLogLevel": "INFO",
"diskSpaceLimit": "500",
"diskSpaceLimitUnit": "MB",
"deleteLogFileAfterCloudUpload": "false"
},
"componentLogsConfiguration": [
{
"componentName": "io.datapos.ReceiptPrinterHTTPInterface",
"minimumLogLevel": "DEBUG",
"diskSpaceLimit": "200",
"diskSpaceLimitUnit": "MB",
"deleteLogFileAfterCloudUpload": "false"
},
{
"componentName": "io.datapos.ReceiptPrinterMQTTInterface",
"minimumLogLevel": "DEBUG",
"diskSpaceLimit": "200",
"diskSpaceLimitUnit": "MB",
"deleteLogFileAfterCloudUpload": "false"
},
{
"componentName": "io.datapos.ReceiptPrinter",
"minimumLogLevel": "DEBUG",
"diskSpaceLimit": "200",
"diskSpaceLimitUnit": "MB",
"deleteLogFileAfterCloudUpload": "false"
}
]
},
"periodicUploadIntervalSec": "300"
}
aws.greengrass.Nucleus:
componentVersion: "2.1.0"
# To enable debug logging for the Nucleus:
# configurationUpdate:
# merge: "{ \"logging\": { \"level\": \"DEBUG\" } }"
io.datapos.ReceiptPrinter:
componentVersion: "1.0.0"
configurationUpdate:
# printer:
# The name of the receipt printer. To list the printers on a device, run `lpstat -p`. See
# README.md for instructions to set up the PDF printer for testing.
# destinationPassword:
# The password for the devices set in the DB for printos-serverless-service. Currently, all
# devices in a deployment must use the same password.
# mockPrintOSJar: false
# Set this to "true" if you don't have access to PrintOS.jar. See the Without the Private
# Dependencies section of the README for more details.
merge: >-
{
"printer": "PDF",
"destinationPassword": "blueberry",
"mockPrintOSJar": "false"
}
io.datapos.ReceiptPrinterHTTPInterface:
componentVersion: "1.0.0"
configurationUpdate:
# printServerUrl:
# The base URL for your printos-serverless-service
# (https://github.com/DataPOS-Labs/printos-serverless-service) deployment. Used to report
# the status of the print jobs so printos-serverless-service knows when to stop retrying
# them.
# dataposApiUrl:
# The base URL for the DataPOS Public API, which is exposed by Core Services
# (https://stash.agiledigital.com.au/projects/QFX/repos/merivale/browse/server/modules/core-services).
# Used to report the health status of the device.
# vendorUsername:
# The vendor's username for authenticating with the DataPOS Public API. Used to report the
# health status of the device.
# vendorPassword:
# The vendor's password for authenticating with the DataPOS Public API. Used to report the
# health status of the device.
# mqttEndpointAddress:
# The address to connect to the AWS MQTT broker. You can find this in the AWS console at
# https://console.aws.amazon.com/iot/home#/settings
# or by running
# aws iot describe-endpoint --endpoint-type iot:Data-ATS
# See also:
# https://docs.aws.amazon.com/iot/latest/developerguide/iot-connect-devices.html#iot-connect-device-endpoints
# TODO: deploy.sh could set mqttEndpointAddress automatically. We could make it automatic for
# local deploys as well, but it would be more complicated because currently you don't
# need the AWS CLI set up to deploy locally. It's also apparently possible for the
# components to get the endpoint address using the Greengrass SDK, but the docs for that
# are confusing and the Greengrass SDK only supports Java and Python:
# https://docs.aws.amazon.com/greengrass/v2/developerguide/ipc-component-configuration.html
# We might also be able to use the AWS SDK, but I'm not sure if that will work in the
# component code (and it's yet another dependency):
# https://github.com/DataPOS-Labs/print-provision/blob/175a6b90c20b45113e50b059e8d8ad8ca9a7b825/provision.js#L81
# componentVersion:
# Must be the same as the componentVersion field above.
merge: >-
{
"printServerUrl": "https://3qpbp0efwe.execute-api.ap-southeast-2.amazonaws.com/dev",
"dataposApiUrl": "https://public-api.shared.staging.datapos.io",
"vendorUsername": "brod",
"vendorPassword": "1234",
"mqttEndpointAddress": "a117qnlskg6hvb-ats.iot.ap-southeast-2.amazonaws.com",
"componentVersion": "1.0.0"
}
io.datapos.ReceiptPrinterMQTTInterface:
componentVersion: "1.0.0"
configurationUpdate:
# dataposApiUrl:
# The base URL for the DataPOS Public API, which is exposed by Core Services
# (https://stash.agiledigital.com.au/projects/QFX/repos/merivale/browse/server/modules/core-services).
# Used to report the health status of the device.
# vendorUsername:
# The vendor's username for authenticating with the DataPOS Public API. Used to report the
# health status of the device.
# vendorPassword:
# The vendor's password for authenticating with the DataPOS Public API. Used to report the
# health status of the device.
# mqttEndpointAddress:
# The address to connect to the AWS MQTT broker. You can find this in the AWS console or by
# running
# aws iot describe-endpoint --endpoint-type iot:Data-ATS
# See also:
# https://docs.aws.amazon.com/iot/latest/developerguide/iot-connect-devices.html#iot-connect-device-endpoints
# componentVersion:
# Must be the same as the componentVersion field above.
merge: >-
{
"dataposApiUrl": "https://public-api.shared.staging.datapos.io",
"vendorUsername": "brod",
"vendorPassword": "1234",
"mqttEndpointAddress": "a117qnlskg6hvb-ats.iot.ap-southeast-2.amazonaws.com",
"componentVersion": "1.0.0"
}