From c06d6df88eb0676ea63f393f21d504b1302f09f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Drie=C3=9Fen?= Date: Tue, 29 Oct 2024 08:36:20 +0100 Subject: [PATCH 1/2] feat: stop storing the message in the datastore --- CHANGELOG.md | 4 ++++ bun.lockb | Bin 337048 -> 438256 bytes package.json | 16 ++++++++-------- src/ingest/events/post.js | 7 +++---- 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f19326..cdad9b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.9.2] - 2024-10-28 + +- feat: stop storing the message in the datastore + ## [1.9.1] - 2024-09-04 - chore: apply linter suggestions diff --git a/bun.lockb b/bun.lockb index 8121344718ef1493187ae38e91c97cecc06d681d..e617c6270fdbc7c72c45350d3f5879aeb4d26ae2 100755 GIT binary patch delta 128002 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≻d*|ggK00<^CLBUkn4n0|1jr-l+5J(3%1B7kRe%| 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 delta 62170 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%0DGW5PzR_D)BOeI>57+>_beRJd0M}u~M=w>? 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

xQ2XsITm+9YoEs&tMaZUQ8uE zLsOfnTLOp3w5N|KKqtz(ot>(wW-KV{S$)UMr(bN^U{tF2Q>Kx+6#PxQHYNKiWdIGU z#Q)&?n@D}htm-PED&cRMHuRVBo(qCfrP6oJJpL(zIiESHepmIKX8hBbFC(TB4P#?i z>I~-PYA`Q3(kd-)eBh|%@If6w9;Sb(zUMP~aua7a|1mlWOG!(kk*hk+hK0+f=QAb9 z>e)xD-*qi_!j~aa6mBpVRVDlc!!R|}u~Zigs)6XWhVpXB*ZUd>^~Uird<7y*oZY!o zE$nTZI=UlNJoH>y*_s9FcAtG(8oNDvjq=~Wx3LCF&lei<>4@kR;^s9*98)%vVmpeK zbiJ`?Qa1U8;(AZNAX{UsW_S=^*c9pA7v$Uo>8lsy>nfU8bJbWBV_kxK>^*Yjo|k6V zHlUsAp}A)4bDZF%{MjSqm}6lv7u}8daRuRBT=PM+oC3I;|2y zuh}n^$hP*O)m`h_3=$N{?pVFlNA~(GaF~F-g=u!A^~N6T|2bm70`brGvMHk#sV1n) zQ)6fcYL9J(4hQ&%?m9zLoS9K>u0e###vIIEHT$))E-o_5eP}&t_h3}Y4}LNI_rJ!s zV$87VY1B;ASMB>o;T!N>NVyu*x?cjHdaxV+Mnf*9qM7KfNqDQFk5#Y-Qp;k`s1Pmw zQkPn<(U5o8-BcE<*t#Pinf6Z6P0ZMz+FV>?f6|~EFN1FWrezGQvmNvfLB7rZ(!Z(1 za=yxwW$%2iX!WqZ%BRH-D)EV_I-)1u(=1ET(&pfM;2ZFeFUSP zz-Uf?RN|jIZ`}spu4$wb@Zuu&+%V{SDrMazbC3L2{-?iCK7Q2DK3KDt=_h3;-`rts z=|PvOJ^jMcP^Fyq+}v_s!Slc`l-8d#RKXA1!G2(|fj#Y97;4#W-k<|tSVn-Q1z5_Z z+6wZ_DzpcTt?cQ#L zwi<6bqaXVY_iXAB#*Nw)-dr>ja>{lRtGRy7xAJ=>#+h?@$3lJjG}Eu^+4w#EfO5KL zgJ>kD9|qCFPGU2giZ}t{h;?Ekj}zJv6+g+}4@A?=YKr9MFWxLCPZbx3;LwC1GV3g6 z7-0x=w|5p-)X=);_Kg#pSH=7B>9fUj{4uWBH=-Rm+DH{CGF9w`-*fFv6-Q_rkv3JV zPXp$NmRhgeq&Z@8dFqfMTKMrKOb8!2FvKA?CMqc`GAb%2HZ(dRE+`~2Iy^oiG%Ctr zXktu4C?42&x;q3XhJ}U3seen#Au2KVj0*zWGT37cS7?cn+Fecnd zCWXW$#U{i!#05nUj2V)c7&(w$XNYbA2~iP=(Fvh(4)HN@384cW;zJYuDi=REG$AA+ zG~QuQeB_W=&>bS99TFl!9fm{>92gZE8J`do9h?}2>Vq9ZVuppr1%-!FM21+03Nr8- zcjuLG6i(~JsZ)|e4Ewjb>RJ=}XLXTI86SU5`LsyHo zT7_%*TCo|GSuXn1zD%)FZr@DNM@t>=h!w~fmz1(2Yh;y}C54zD- zs)5(2#0t3yzlh!~>A_ObA$NVTSQc|Fcl#T0rxxaRI#a4gPgkIcE8byy?Aj=I-#ang z1b;}bZv|&k&qjuG$29%m9Rm}BXB6Zdo z;dqEgaHbaRq#x+FHBux=?WJsr%9LE`{&LB(3idp5 ze?t=-65>N*qQfG?sniN|W0QqcKljxNshXAoR!FO<#ww{!nee!v*oe>}p>foHmGldB z=_oap+d=)_ilxbTwPbB7Kd@zyFuLHVP=|=1_z0@JRV*mMye&Zo_sq#C*tl%% zlz&OoE6uQJC3#UTJIR^?TS?_jgW}?Xk{mJL5@HgPVnZFnqA=x7dPo+&s+b`$0~684 z#DvJG_?X~9p&<#5VR11-csfUh8gjzpViIG6lT`Y!ps2*q_}ta4q=DMpF?LcD{8{=o zQjM~heL=zT>;~lalT812(!T`3{kecM$I7#J2 zzW3uklp_B&QhPeKTB<^;e4vk0ZjwmNy`=JV%|nvtvlsG$YJ%FfCPwoMRj3ImH9(R-~lmg1^N^=%bJI5{|}8j-^=9zI{zSiBQGv6Si> zgPIT*8Y;8#1zkUhNuALR&3!*#3ZMp-k|!B=Lq$UtNahsVT{1KF4GszpjdBVPjfTHT zh>64N@sb^VSR_@qQAzNXv7vGC>RoJ5Ts#a**GZ~fORgK%2v?N=hnE-^0$&ysEALvJ zWv}k&N~f=h)oEN0OcLK7FqduJrLMGUfn>?;vdP`EK&p(t^Y>X4Xm4q$5_Rk@)lr)G zxtqj4D81ZO@~3)>r0?i)7pWu7TqL?6iyuj zBt12s2tuuiQWu(=E*&yaTOSfLBsM6)fjv3x>n&9y_Xtd)oSx87YJgOheEl&z?|b8O z3P1WwRp}{7HEC#fsf{uoNsA@Qy`Ck_H);@2QST!x%G||(&nQbH6_{fo=F<}jH d6%++yiU})AnHwbAav3UP=~`kgzSmGy`+xRW`Tzg` diff --git a/package.json b/package.json index 03e5087..effb96b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ard-eventhub", - "version": "1.9.1", + "version": "1.9.2", "description": "ARD system to distribute real-time (live) metadata for primarily radio broadcasts.", "main": "./src/ingest/index.js", "engines": { @@ -28,25 +28,25 @@ "license": "EUPL-1.2", "dependencies": { "@google-cloud/datastore": "^9.1.0", - "@google-cloud/pubsub": "^4.7.0", + "@google-cloud/pubsub": "^4.8.0", "@google-cloud/secret-manager": "^5.6.0", - "@swrlab/utils": "^2.0.1-beta", + "@swrlab/utils": "^2.0.2", "compression": "^1.7.4", - "dd-trace": "^5.22.0", - "express": "^4.19.2", + "dd-trace": "^5.24.0", + "express": "^4.21.1", "express-openapi-validator": "^5.3.4", - "firebase-admin": "^12.4.0", + "firebase-admin": "^12.7.0", "google-auth-library": "^9.14.1", "jsonwebtoken": "^9.0.2", "luxon": "^3.5.0", "slug": "^9.1.0", "swagger-ui-express": "^5.0.1", "ulid": "^2.3.0", - "winston": "^3.14.2" + "winston": "^3.15.0" }, "devDependencies": { "@biomejs/biome": "^1.8.3", - "@swrlab/style-guide": "^1.0.1", + "@swrlab/style-guide": "^1.0.2", "chai": "^4.5.0", "chai-http": "^4.4.0", "docsify-cli": "^4.4.4", diff --git a/src/ingest/events/post.js b/src/ingest/events/post.js index 9a2836f..b052385 100644 --- a/src/ingest/events/post.js +++ b/src/ingest/events/post.js @@ -7,9 +7,9 @@ // load node utils const { DateTime } = require('luxon') +const ULID = require('ulid') // load eventhub utils -const datastore = require('../../utils/datastore') const { createNewTopic, processServices } = require('../../utils/events') const logger = require('../../utils/logger') const pubsub = require('../../utils/pubsub') @@ -84,9 +84,8 @@ module.exports = async (req, res) => { message.services.map((service) => processServices(service, req)) ) - // save message to datastore - const savedMessage = await datastore.save(message, 'events') - message.id = savedMessage.id.toString() + // generate unique Id from the institution id and a random ULID + message.id = `${req.user.institutionId}-${ULID.ulid()}` // collect unknown topics from returning errors const newServices = [] From 2404a2f2a75f1fedebcb3de58c8ccec16a25235a Mon Sep 17 00:00:00 2001 From: Daniel Freytag Date: Wed, 30 Oct 2024 08:54:37 +0100 Subject: [PATCH 2/2] fix: update version in openapi --- openapi.json | 28 +------ openapi.yaml | 202 +++++++++++++++++++++++++-------------------------- 2 files changed, 105 insertions(+), 125 deletions(-) diff --git a/openapi.json b/openapi.json index 8f01d64..3f0ef75 100644 --- a/openapi.json +++ b/openapi.json @@ -11,7 +11,7 @@ "name": "European Union Public License 1.2", "url": "https://spdx.org/licenses/EUPL-1.2.html" }, - "version": "1.9.0" + "version": "1.9.2" }, "externalDocs": { "description": "ARD Eventhub Documentation", @@ -879,15 +879,7 @@ "properties": { "type": { "type": "string", - "enum": [ - "Episode", - "Section", - "Publication", - "Broadcast", - "Show", - "Season", - "Article" - ] + "enum": ["Episode", "Section", "Publication", "Broadcast", "Show", "Season", "Article"] }, "id": { "type": "string", @@ -925,25 +917,13 @@ "type": "string", "description": "If set, it needs to match the URL event parameter", "example": "de.ard.eventhub.v1.radio.track.playing", - "enum": [ - "de.ard.eventhub.v1.radio.track.playing", - "de.ard.eventhub.v1.radio.track.next" - ] + "enum": ["de.ard.eventhub.v1.radio.track.playing", "de.ard.eventhub.v1.radio.track.next"] }, "type": { "type": "string", "description": "The type of the element that triggered this event. See additional file in docs for details.", "example": "music", - "enum": [ - "audio", - "commercial", - "jingle", - "live", - "music", - "news", - "traffic", - "weather" - ] + "enum": ["audio", "commercial", "jingle", "live", "music", "news", "traffic", "weather"] }, "start": { "type": "string", diff --git a/openapi.yaml b/openapi.yaml index fffd25c..193de46 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -9,8 +9,8 @@ info: email: lab@swr.de license: name: European Union Public License 1.2 - url: "https://spdx.org/licenses/EUPL-1.2.html" - version: 1.9.0 + url: 'https://spdx.org/licenses/EUPL-1.2.html' + version: 1.9.2 externalDocs: description: ARD Eventhub Documentation url: https://swrlab.github.io/ard-eventhub/ @@ -47,24 +47,24 @@ paths: type: string example: my-password responses: - "200": + '200': description: Authentication successful content: application/json: schema: - $ref: "#/components/schemas/authResponse" - "400": + $ref: '#/components/schemas/authResponse' + '400': description: Bad Request (invalid input) content: application/json: schema: - $ref: "#/components/schemas/errorBadRequest" - "500": + $ref: '#/components/schemas/errorBadRequest' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /auth/refresh: post: tags: @@ -82,24 +82,24 @@ paths: type: string example: abcXYZ... responses: - "200": + '200': description: Authentication successful content: application/json: schema: - $ref: "#/components/schemas/authResponse" - "400": + $ref: '#/components/schemas/authResponse' + '400': description: Bad Request (invalid input) content: application/json: schema: - $ref: "#/components/schemas/errorBadRequest" - "500": + $ref: '#/components/schemas/errorBadRequest' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /auth/reset: post: tags: @@ -116,21 +116,21 @@ paths: type: string example: my-email@example.com responses: - "200": + '200': description: Request successful content: {} - "400": + '400': description: Bad Request (invalid input) content: application/json: schema: - $ref: "#/components/schemas/errorBadRequest" - "500": + $ref: '#/components/schemas/errorBadRequest' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /events/de.ard.eventhub.v1.radio.track.next: post: tags: @@ -140,34 +140,34 @@ paths: security: - bearerAuth: [] requestBody: - $ref: "#/components/requestBodies/eventV1RadioTrack" + $ref: '#/components/requestBodies/eventV1RadioTrack' responses: - "201": - $ref: "#/components/responses/eventV1RadioTrack" - "400": + '201': + $ref: '#/components/responses/eventV1RadioTrack' + '400': description: Bad Request (invalid input) content: application/json: schema: - $ref: "#/components/schemas/errorBadRequest" - "401": + $ref: '#/components/schemas/errorBadRequest' + '401': description: Missing authentication content: application/json: schema: - $ref: "#/components/schemas/errorUnauthorized" - "403": + $ref: '#/components/schemas/errorUnauthorized' + '403': description: Invalid authorization content: application/json: schema: - $ref: "#/components/schemas/errorForbidden" - "500": + $ref: '#/components/schemas/errorForbidden' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /events/de.ard.eventhub.v1.radio.track.playing: post: tags: @@ -177,34 +177,34 @@ paths: security: - bearerAuth: [] requestBody: - $ref: "#/components/requestBodies/eventV1RadioTrack" + $ref: '#/components/requestBodies/eventV1RadioTrack' responses: - "201": - $ref: "#/components/responses/eventV1RadioTrack" - "400": + '201': + $ref: '#/components/responses/eventV1RadioTrack' + '400': description: Bad Request (invalid input) content: application/json: schema: - $ref: "#/components/schemas/errorBadRequest" - "401": + $ref: '#/components/schemas/errorBadRequest' + '401': description: Missing authentication content: application/json: schema: - $ref: "#/components/schemas/errorUnauthorized" - "403": + $ref: '#/components/schemas/errorUnauthorized' + '403': description: Invalid authorization content: application/json: schema: - $ref: "#/components/schemas/errorForbidden" - "500": + $ref: '#/components/schemas/errorForbidden' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /subscriptions: get: tags: @@ -214,30 +214,30 @@ paths: security: - bearerAuth: [] responses: - "200": + '200': description: Subscriptions found content: application/json: schema: - $ref: "#/components/schemas/subscriptionsList" - "401": + $ref: '#/components/schemas/subscriptionsList' + '401': description: Missing authentication content: application/json: schema: - $ref: "#/components/schemas/errorUnauthorized" - "403": + $ref: '#/components/schemas/errorUnauthorized' + '403': description: Invalid authorization content: application/json: schema: - $ref: "#/components/schemas/errorForbidden" - "500": + $ref: '#/components/schemas/errorForbidden' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' post: tags: - subscriptions @@ -250,45 +250,45 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/subscriptionPost" + $ref: '#/components/schemas/subscriptionPost' required: true responses: - "201": + '201': description: Subscription created content: application/json: schema: - $ref: "#/components/schemas/subscriptionResponse" - "400": + $ref: '#/components/schemas/subscriptionResponse' + '400': description: Bad Request (invalid input) content: application/json: schema: - $ref: "#/components/schemas/errorBadRequest" - "401": + $ref: '#/components/schemas/errorBadRequest' + '401': description: Missing authentication content: application/json: schema: - $ref: "#/components/schemas/errorUnauthorized" - "403": + $ref: '#/components/schemas/errorUnauthorized' + '403': description: Invalid authorization content: application/json: schema: - $ref: "#/components/schemas/errorForbidden" - "404": + $ref: '#/components/schemas/errorForbidden' + '404': description: Topic for subscription not found content: application/json: schema: - $ref: "#/components/schemas/errorNotFound" - "500": + $ref: '#/components/schemas/errorNotFound' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /subscriptions/{name}: get: tags: @@ -300,45 +300,45 @@ paths: parameters: - name: name in: path - description: "`name` of the desired subscription" + description: '`name` of the desired subscription' required: true style: simple explode: false schema: type: string responses: - "200": + '200': description: Subscription found content: application/json: schema: type: array items: - $ref: "#/components/schemas/subscriptionResponse" - "401": + $ref: '#/components/schemas/subscriptionResponse' + '401': description: Missing authentication content: application/json: schema: - $ref: "#/components/schemas/errorUnauthorized" - "403": + $ref: '#/components/schemas/errorUnauthorized' + '403': description: Invalid authorization content: application/json: schema: - $ref: "#/components/schemas/errorForbidden" - "404": + $ref: '#/components/schemas/errorForbidden' + '404': description: Subscription not found content: application/json: schema: - $ref: "#/components/schemas/errorNotFound" - "500": + $ref: '#/components/schemas/errorNotFound' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' delete: tags: - subscriptions @@ -349,43 +349,43 @@ paths: parameters: - name: name in: path - description: "`name` of the desired subscription" + description: '`name` of the desired subscription' required: true style: simple explode: false schema: type: string responses: - "200": + '200': description: Subscription deleted content: application/json: schema: - $ref: "#/components/schemas/subscriptionDeleted" - "401": + $ref: '#/components/schemas/subscriptionDeleted' + '401': description: Missing authentication content: application/json: schema: - $ref: "#/components/schemas/errorUnauthorized" - "403": + $ref: '#/components/schemas/errorUnauthorized' + '403': description: Invalid authorization content: application/json: schema: - $ref: "#/components/schemas/errorForbidden" - "404": + $ref: '#/components/schemas/errorForbidden' + '404': description: Subscription not found content: application/json: schema: - $ref: "#/components/schemas/errorNotFound" - "500": + $ref: '#/components/schemas/errorNotFound' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' /topics: get: tags: @@ -395,18 +395,18 @@ paths: security: - bearerAuth: [] responses: - "200": + '200': description: Topics found content: application/json: schema: - $ref: "#/components/schemas/topicResponse" - "500": + $ref: '#/components/schemas/topicResponse' + '500': description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/errorInternalServerError" + $ref: '#/components/schemas/errorInternalServerError' components: requestBodies: eventV1RadioTrack: @@ -442,7 +442,7 @@ components: content: application/json: schema: - $ref: "#/components/schemas/eventV1PostBody" + $ref: '#/components/schemas/eventV1PostBody' required: true responses: eventV1RadioTrack: @@ -469,7 +469,7 @@ components: content: application/json: schema: - $ref: "#/components/schemas/eventV1ResBody" + $ref: '#/components/schemas/eventV1ResBody' securitySchemes: bearerAuth: type: http @@ -487,7 +487,7 @@ components: type: string description: ISO8601 compliant timestamp for the token expiry format: iso8601-timestamp - example: "2020-01-19T06:00:00+01:00" + example: '2020-01-19T06:00:00+01:00' token: type: string description: ready to use token for API queries @@ -616,7 +616,7 @@ components: When no Core ID is provided, the External ID will be converted by Eventhub. - example: "248000" + example: '248000' id: type: string description: Globally unique identifier, created by Eventhub @@ -695,7 +695,7 @@ components: type: string description: ISO8601 compliant timestamp format: iso8601-timestamp - example: "2020-01-19T06:00:00+01:00" + example: '2020-01-19T06:00:00+01:00' length: type: number format: float @@ -750,7 +750,7 @@ components: example: Person id: type: string - example: "1641010" + example: '1641010' isni: type: string description: ISNI ID if available @@ -771,7 +771,7 @@ components: items: minItems: 1 allOf: - - $ref: "#/components/schemas/services" + - $ref: '#/components/schemas/services' references: type: array description: related external entities @@ -779,7 +779,7 @@ components: items: minItems: 0 allOf: - - $ref: "#/components/schemas/reference" + - $ref: '#/components/schemas/reference' playlistItemId: type: string description: >- @@ -867,7 +867,7 @@ components: ID gets inserted by Eventhub as string-formatted number, but might be a true string in the future, do not expect this string to remain numbers only! - example: "1234567890" + example: '1234567890' eventV1ResBody: type: object properties: @@ -884,7 +884,7 @@ components: type: integer example: 0 event: - $ref: "#/components/schemas/eventV1PostBody" + $ref: '#/components/schemas/eventV1PostBody' trace: type: string example: null @@ -925,7 +925,7 @@ components: type: array items: allOf: - - $ref: "#/components/schemas/subscriptionResponse" + - $ref: '#/components/schemas/subscriptionResponse' subscriptionResponse: type: object properties: @@ -1016,7 +1016,7 @@ components: properties: id: type: string - example: "1234567890" + example: '1234567890' creator-slug: type: string example: ard-eventhub-swr @@ -1028,7 +1028,7 @@ components: example: prod created: type: string - example: "2021-03-25" + example: '2021-03-25' institution-slug: type: string example: sudwestrundfunk