Skip to content

Commit 2ef6d89

Browse files
authored
Merge pull request #6 from usdot-jpo-ode/config/jpo-mec-deposit
Adding MEC Deposit Resources
2 parents a4cb454 + b89ac3b commit 2ef6d89

8 files changed

+70
-22
lines changed

docker-compose-connect.yml

+5
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,10 @@ services:
2424
depends_on:
2525
mongo:
2626
condition: service_healthy
27+
required: false
2728
kafka:
2829
condition: service_healthy
30+
required: false
2931
environment:
3032
CONNECT_BOOTSTRAP_SERVERS: ${KAFKA_BOOTSTRAP_SERVERS}
3133
CONNECT_REST_ADVERTISED_HOST_NAME: connect
@@ -54,6 +56,7 @@ services:
5456
- all
5557
- kafka_connect
5658
- kafka_connect_standalone
59+
- kafka_connect_setup
5760
image: jpo-jikkou
5861
build:
5962
context: jikkou
@@ -68,13 +71,15 @@ services:
6871
depends_on:
6972
kafka-connect:
7073
condition: service_healthy
74+
required: false
7175
environment:
7276
CONNECT_URL: ${CONNECT_URL}
7377
CONNECT_TASKS_MAX: ${CONNECT_TASKS_MAX}
7478
CONNECT_CREATE_ODE: ${CONNECT_CREATE_ODE}
7579
CONNECT_CREATE_GEOJSONCONVERTER: ${CONNECT_CREATE_GEOJSONCONVERTER}
7680
CONNECT_CREATE_CONFLICTMONITOR: ${CONNECT_CREATE_CONFLICTMONITOR}
7781
CONNECT_CREATE_DEDUPLICATOR: ${CONNECT_CREATE_DEDUPLICATOR}
82+
CONNECT_CREATE_MECDEPOSIT: ${CONNECT_CREATE_MECDEPOSIT}
7883
MONGO_CONNECTOR_USERNAME: ${MONGO_ADMIN_DB_USER}
7984
MONGO_CONNECTOR_PASSWORD: ${MONGO_ADMIN_DB_PASS:?}
8085
MONGO_DB_IP: ${MONGO_IP}

docker-compose-kafka.yml

+23-12
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ services:
1919
deploy:
2020
resources:
2121
limits:
22-
cpus: '1'
22+
cpus: "1"
2323
memory: 4G
2424
volumes:
2525
- kafka:/bitnami
@@ -40,10 +40,9 @@ services:
4040
KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
4141
logging:
4242
options:
43-
max-size: "10m"
43+
max-size: "10m"
4444
max-file: "5"
4545

46-
4746
kafka-setup:
4847
profiles:
4948
- all
@@ -58,11 +57,12 @@ services:
5857
deploy:
5958
resources:
6059
limits:
61-
cpus: '0.5'
60+
cpus: "0.5"
6261
memory: 1G
6362
depends_on:
6463
kafka:
6564
condition: service_healthy
65+
required: false
6666
environment:
6767
KAFKA_BOOTSTRAP_SERVERS: ${KAFKA_BOOTSTRAP_SERVERS}
6868
KAFKA_TOPIC_PARTITIONS: ${KAFKA_TOPIC_PARTITIONS}
@@ -74,12 +74,13 @@ services:
7474
KAFKA_TOPIC_CREATE_GEOJSONCONVERTER: ${KAFKA_TOPIC_CREATE_GEOJSONCONVERTER}
7575
KAFKA_TOPIC_CREATE_CONFLICTMONITOR: ${KAFKA_TOPIC_CREATE_CONFLICTMONITOR}
7676
KAFKA_TOPIC_CREATE_DEDUPLICATOR: ${KAFKA_TOPIC_CREATE_DEDUPLICATOR}
77-
MONGO_CONNECTOR_USERNAME: ${MONGO_ADMIN_DB_USER}
78-
MONGO_CONNECTOR_PASSWORD: ${MONGO_ADMIN_DB_PASS}
79-
MONGO_DB_IP: ${MONGO_IP}
80-
MONGO_DB_NAME: ${MONGO_DB_NAME}
77+
KAFKA_TOPIC_CREATE_MECDEPOSIT: ${KAFKA_TOPIC_CREATE_MECDEPOSIT}
8178
volumes:
8279
- ${KAFKA_TOPIC_CONFIG_RELATIVE_PATH:-./jikkou/kafka-topics-values.yaml}:/app/kafka-topics-values.yaml
80+
logging:
81+
options:
82+
max-size: "10m"
83+
max-file: "5"
8384

8485
kafka-schema-registry:
8586
profiles:
@@ -91,11 +92,12 @@ services:
9192
deploy:
9293
resources:
9394
limits:
94-
cpus: '0.5'
95+
cpus: "0.5"
9596
memory: 1G
9697
depends_on:
9798
kafka:
9899
condition: service_healthy
100+
required: false
99101
ports:
100102
- "8081:8081"
101103
environment:
@@ -108,6 +110,10 @@ services:
108110
interval: 30s
109111
timeout: 10s
110112
retries: 4
113+
logging:
114+
options:
115+
max-size: "10m"
116+
max-file: "5"
111117

112118
kafka-ui:
113119
profiles:
@@ -120,19 +126,24 @@ services:
120126
deploy:
121127
resources:
122128
limits:
123-
cpus: '0.5'
129+
cpus: "0.5"
124130
memory: 1G
125131
ports:
126132
- 8001:8080
127133
depends_on:
128134
kafka:
129135
condition: service_healthy
136+
required: false
130137
environment:
131-
DYNAMIC_CONFIG_ENABLED: 'true'
138+
DYNAMIC_CONFIG_ENABLED: "true"
132139
KAFKA_CLUSTERS_0_NAME: local
133140
KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: ${KAFKA_BOOTSTRAP_SERVERS}
134141
KAFKA_CLUSTERS_0_KAFKACONNECT_0_NAME: kafka-connect
135142
KAFKA_CLUSTERS_0_KAFKACONNECT_0_ADDRESS: ${CONNECT_URL}
143+
logging:
144+
options:
145+
max-size: "10m"
146+
max-file: "5"
136147

137148
volumes:
138-
kafka:
149+
kafka:

docker-compose-mongo.yml

+9-4
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ services:
5252
- ./mongo/manage-volume-cron:/data/manage-volume-cron
5353
- ./mongo/manage_volume.js:/data/manage_volume.js
5454
healthcheck:
55-
test: "echo 'db.runCommand(\"ping\").ok' | mongosh --quiet --username ${MONGO_ADMIN_DB_USER} --password ${MONGO_ADMIN_DB_PASS} --authenticationDatabase admin --eval \"rs.status().ok\""
55+
# Removal of replica set status check as the mongo-setup container is what actually configures the replica set
56+
test: mongosh --quiet --username ${MONGO_ADMIN_DB_USER} --password ${MONGO_ADMIN_DB_PASS} --authenticationDatabase admin --eval "db.adminCommand('ping').ok"
5657
interval: 10s
5758
timeout: 10s
5859
retries: 10
@@ -66,7 +67,9 @@ services:
6667
image: mongo:8
6768
hostname: mongo_setup
6869
depends_on:
69-
- mongo
70+
mongo:
71+
condition: service_healthy
72+
required: false
7073
restart: on-failure
7174
deploy:
7275
resources:
@@ -88,7 +91,7 @@ services:
8891
CONNECT_CREATE_GEOJSONCONVERTER: ${CONNECT_CREATE_GEOJSONCONVERTER}
8992
CONNECT_CREATE_CONFLICTMONITOR: ${CONNECT_CREATE_CONFLICTMONITOR}
9093
CONNECT_CREATE_DEDUPLICATOR: ${CONNECT_CREATE_DEDUPLICATOR}
91-
94+
CONNECT_CREATE_MECDEPOSIT: ${CONNECT_CREATE_MECDEPOSIT}
9295
entrypoint: ["/bin/bash", "setup_mongo.sh"]
9396
volumes:
9497
- ${MONGO_SETUP_SCRIPT_RELATIVE_PATH}:/setup_mongo.sh
@@ -111,7 +114,9 @@ services:
111114
ports:
112115
- "8002:8081"
113116
depends_on:
114-
- mongo
117+
mongo:
118+
condition: service_healthy
119+
required: false
115120
environment:
116121
ME_CONFIG_MONGODB_ENABLE_ADMIN: "true"
117122
ME_CONFIG_BASICAUTH_USERNAME: ${MONGO_EXPRESS_USER}

jikkou/kafka-connectors-template.jinja

+5-1
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,8 @@ spec:
6969
{% else %}
7070
{{ create_connector(values.apps.ode_duplicated) }}
7171
{{ create_connector(values.apps.geojsonconverter_duplicated) }}
72-
{% endif %}
72+
{% endif %}
73+
74+
{% if system.env.CONNECT_CREATE_MECDEPOSIT %}
75+
{{ create_connector(values.apps.mecdeposit) }}
76+
{% endif %}

jikkou/kafka-connectors-values.yaml

+11-1
Original file line numberDiff line numberDiff line change
@@ -350,4 +350,14 @@ apps:
350350
collectionName: CmEventStateProgressionNotificationAggregation
351351
generateTimestamp: true
352352
timestampField: notificationGeneratedAt
353-
353+
mecdeposit:
354+
name: mecdeposit
355+
connectors:
356+
- topicName: topic.MecEtxMqttDepositMetrics
357+
collectionName: MecEtxMqttDepositMetrics
358+
useTimestamp: true
359+
timestampField: odeReceivedAt
360+
- topicName: topic.MecEtxApiDepositMetrics
361+
collectionName: MecEtxApiDepositMetrics
362+
useTimestamp: true
363+
timestampField: odeReceivedAt

jikkou/kafka-topics-template.jinja

+5-1
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,8 @@ spec:
7474

7575
{% if system.env.KAFKA_TOPIC_CREATE_DEDUPLICATOR %}
7676
{{ create_topics(values.apps.deduplicator) }}
77-
{% endif %}
77+
{% endif %}
78+
79+
{% if system.env.KAFKA_TOPIC_CREATE_MECDEPOSIT %}
80+
{{ create_topics(values.apps.mecdeposit) }}
81+
{% endif %}

jikkou/kafka-topics-values.yaml

+8-1
Original file line numberDiff line numberDiff line change
@@ -182,4 +182,11 @@ apps:
182182
cleanUpPolicy: compact
183183
- topicName: topic.KafkaConnectStatus
184184
partitions: 10
185-
cleanUpPolicy: compact
185+
cleanUpPolicy: compact
186+
mecdeposit:
187+
name: jpo-mecdeposit
188+
streamTopics:
189+
- topic.MecEtxMqttDepositMetrics
190+
- topic.MecEtxApiDepositMetrics
191+
tableTopics: {}
192+
customTopics: {}

sample.env

+4-2
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ RESTART_POLICY="on-failure:3"
2121
# - kafka
2222
# - mongo
2323
# - kafka_connect
24-
# - kafka-connect-setup
24+
# - kafka_connect_setup
2525
# - kafka_connect
2626
# - kafka_connect
27-
# - kafka-connect-setup
27+
# - kafka_connect_setup
2828
# - deduplicator
2929
# - deduplicator
3030
# EXAMPLE: COMPOSE_PROFILES=kafka_connect_standalone,kafka_ui,mongo_express
@@ -50,6 +50,7 @@ KAFKA_TOPIC_CREATE_ODE=true # Create topics for ODE
5050
KAFKA_TOPIC_CREATE_GEOJSONCONVERTER=true # Create topics for GeoJSON Converter
5151
KAFKA_TOPIC_CREATE_CONFLICTMONITOR=true # Create topics for Conflict Monitor
5252
KAFKA_TOPIC_CREATE_DEDUPLICATOR=true # Create topics for Deduplicator
53+
KAFKA_TOPIC_CREATE_MECDEPOSIT=true # Create topics for MecDeposit
5354
# Relative path to the Kafka topic yaml configuration script, upper level directories are supported
5455
# NOTE: This script is used to create kafka topics
5556
KAFKA_TOPIC_CONFIG_RELATIVE_PATH="./jikkou/kafka-topics-values.yaml"
@@ -117,6 +118,7 @@ CONNECT_CREATE_ODE=true # Create kafka connectors to MongoDB for
117118
CONNECT_CREATE_GEOJSONCONVERTER=true # Create kafka connectors to MongoDB for GeoJSON Converter
118119
CONNECT_CREATE_CONFLICTMONITOR=true # Create kafka connectors to MongoDB for Conflict Monitor
119120
CONNECT_CREATE_DEDUPLICATOR=true # Create kafka connectors to MongoDB for Deduplicator
121+
CONNECT_CREATE_MECDEPOSIT=true # Create kafka connectors to MongoDB for MecDeposit
120122
# Relative path to the Kafka Connector yaml configuration script, upper level directories are supported
121123
# NOTE: This script is used to create kafka connectors
122124
CONNECT_CONFIG_RELATIVE_PATH="./jikkou/kafka-connectors-values.yaml"

0 commit comments

Comments
 (0)