<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Architecture on eds-inventory</title><link>https://cdeever.github.io/eds-inventory/docs/architecture/</link><description>Recent content in Architecture on eds-inventory</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://cdeever.github.io/eds-inventory/docs/architecture/index.xml" rel="self" type="application/rss+xml"/><item><title>Sources, Store and Clients</title><link>https://cdeever.github.io/eds-inventory/docs/architecture/system/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cdeever.github.io/eds-inventory/docs/architecture/system/</guid><description>&lt;h1 id="sources-store-and-clients"&gt;Sources, Store and Clients&lt;a class="anchor" href="#sources-store-and-clients"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;&lt;a href="https://cdeever.github.io/eds-inventory/docs/architecture/system/system.svg"&gt;&lt;img src="https://cdeever.github.io/eds-inventory/docs/architecture/system/system.svg" alt="eds-inventory: sources (Discogs, iTunes, MusicBee, Spotify, Tidal, and by hand) are collected into the inventory&amp;rsquo;s store; enrichment asks outside services once per album; clients such as EdS ask over HTTP." /&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;A first picture, drawn before anything is built. It shows the shape the&#10;requirements so far describe, and will change as they settle.&lt;/p&gt;&#10;&lt;h2 id="sources"&gt;Sources&lt;a class="anchor" href="#sources"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Where the owner&amp;rsquo;s music is kept today. Each stays the truth for what it&#10;holds.&lt;/p&gt;</description></item><item><title>Where It Runs</title><link>https://cdeever.github.io/eds-inventory/docs/architecture/tenant/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cdeever.github.io/eds-inventory/docs/architecture/tenant/</guid><description>&lt;h1 id="where-it-runs"&gt;Where It Runs&lt;a class="anchor" href="#where-it-runs"&gt;&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;eds-inventory runs in &lt;strong&gt;EdS&amp;rsquo;s Deevnet IoTaaS tenant&lt;/strong&gt;, beside EdS&amp;rsquo;s own&#10;services. It is its own project, in its own repository, with its own&#10;releases; it shares a tenant with its first client, not a codebase.&lt;/p&gt;&#10;&lt;h2 id="why-the-same-tenant"&gt;Why the same tenant&lt;a class="anchor" href="#why-the-same-tenant"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;A tenant has no way in.&lt;/strong&gt; Deevnet IoTaaS&amp;rsquo;s tenant fabric has no inbound&#10;path by design (Deevnet ADR-0001, Deevnet ADR-0003); it is why EdS&amp;rsquo;s&#10;broker lives outside EdS&amp;rsquo;s tenant. A service in another tenant could not be&#10;asked over HTTP by EdS&amp;rsquo;s services without a path Deevnet IoTaaS does not&#10;offer. In the same tenant, EdS asks the inventory as &lt;code&gt;lightd&lt;/code&gt; asks&#10;&lt;code&gt;palette&lt;/code&gt;: one service to another, on the same network.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Nothing is invented for it.&lt;/strong&gt; No new path between tenants, and no&#10;Deevnet IoTaaS decision to wait on.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Sharing a tenant does not change the boundary. The inventory still knows&#10;nothing about EdS, and is still reached only through its contract.&lt;/p&gt;</description></item></channel></rss>