diff --git a/Dockerfile b/Dockerfile index e86f528..3621bc3 100755 --- a/Dockerfile +++ b/Dockerfile @@ -31,7 +31,7 @@ RUN mkdir -p /app/extracted && tar -zxvf oc-catalog.tar.gz -C /app/extracted #---------------------------------------------------------------------------------------------- -FROM golang:alpine +FROM scratch WORKDIR /app COPY --from=builder /app/extracted/oc-catalog /usr/bin/ diff --git a/infrastructure/nats.go b/infrastructure/nats.go index 92b50b8..8bba5a2 100644 --- a/infrastructure/nats.go +++ b/infrastructure/nats.go @@ -31,6 +31,19 @@ func EmitNATS(user string, message tools.PropalgationMessage) { // si on la stocke en base, elle va se dépréciée plus encore si le user n'est pas un partenaire. // elle ne sera pas maintenue à jour. Si c'est une ressource publique et qu'elle change // l'offre peut disparaitre mais subsisté chez nous. +// alors si on en dispose et qu'on souhaite l'exploité. On doit en vérifier la validité... ou... +// la mettre à jour. Le problème de la mise à jour c'est qu'on peut facilement +// overflow.... de stream pour avoir à jour sa ressource. +// donc l'idée est que la vérification soit manuelle... ou lors d'une vérification de dernière instance. + +// si une ressource est exploitée dans un workflow ou un shared workspace. +// elle doit être vérifié par les pairs engagés. +// si la donnée est déclaré comme donnée de l'emmetteur alors on vérifie que la signature est bien émise, par +// l'emmetteur. Sinon... on doit interrogé le pair qui a émit la donnée. Est ce que la donnée est à jour. +// lui va vérifier la signature de la ressource qu'il possède correspondante si elle existe, si non. AIE. +// on demande à nos indexeurs qui eux vont prendre un pool de noeud dont ils disposent et leur posé la question. +// est ce que la donnée est valide pour un booking ? là tout le monde va répondre oui ou non. +// si non, on refuse func ListenNATS() { tools.NewNATSCaller().ListenNats(map[tools.NATSMethod]func(tools.NATSResponse){