Repository navigation
feat: architecture page with the three scenarios - #4
Merged
Merged
Conversation
A page at /architecture showing how far the Keel Linux architecture goes, one inline SVG infographic per scenario, each with its status: - Standalone, available today: one LXC or VM with the whole stack, managed with keel inspect, keel diff and keel spec apply. The network change with its 120 second confirmation window (decision 0018) is marked as being released in keel 0.9.0. - Keel Cloud with three nodes, planned (decision 0020): one primary and two replicas on WireGuard, one etcd election by keel-quorum with fencing, replicas pulling files with rsync, keel-cloud optional, the operator's failover, rejoin and failback choices, and what the design does not promise. - Separated tiers, future: three application VMs, three database VMs with replication or Galera, the remote database of 0013 phase 1, and sharding as possible with 0013's caveat. Each diagram has a wide and a narrow variant, switched at 56rem, so the text stays legible at phone width. Colours come from the stylesheet's theme variables, so both themes work. The menu and the footer of every page gain an Architecture link.
From the review of the first version: - Scenario 1 is the project's goal, badged "Our goal, not yet released", with a sentence saying it runs from source and test images and has no release for end users. The page lead says the page shows the architecture the project aims for; no "Available today" remains. - The network converge is VM only: in an LXC container the host owns the network and keel only compares it. The tag reads "VM only, in keel 0.9.0, not yet released". - Webmin fact reworded after decision 0019. The application examples are WordPress, NodeBB and LAMP; there is no Odoo appliance. - Scenario 2: without Keel Cloud the public name is moved by hand after a failover; DNS delay mentions resolvers that ignore low TTLs; two or three of the three nodes hold the application. - Scenario 3 is marked not designed yet: only the remote database (0013 phase 1) and Galera (0013 phase 4) are planned, and the etcd labels on the application tier are gone. - SVG caption and small text raised to 13 px so it stays legible at phone width; the small inline badge may wrap. - index.html status no longer says nothing is served, and "What is next" no longer lists inspect, diff and apply as future. README lists the new page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What the page shows
A new page,
architecture.html(served by GitHub Pages at keellinux.org/architecture): the architecture the project aims for, in three scenarios, one inline SVG infographic each, with a status badge in the heading and inside the diagram.keel inspect,keel diff,keel spec apply. It runs from source and test images; there is no release for end users. The network change with its 120 s confirmation window is marked "VM only · in keel 0.9.0, not yet released": in an LXC container the host owns the network and keel only compares it. Webmin shows the network read-only (0019).Example addresses are IPv6 in 2001:db8::/32.
Decisions followed
0013, 0018, 0019, 0020 (final text), and BRIEF section 2 and problem 7.
Other changes
index.htmlandguidelines.html, and in the footers. Links usearchitecture.htmllikeguidelines.html, becausetools/sitecheck.pyresolves links to files; GitHub Pages also serves it at/architecture.index.htmlStatus: the stale "nothing is published" line now says what is served for testing and that there is no release for end users; "What is next" no longer lists inspect, diff and apply as future.README.mdlists the new page.style.css: badges, diagram classes on the existing theme variables, the choices table. No new dependency.Open question
index.htmlloads the Plausible analytics script;guidelines.htmland the new page do not. Left as is, matchingguidelines.html: should the script be on every page?How it was verified
python3 tools/sitecheck.py .: 3 pages, 7 assets, 0 findings.coverage run -m pytest -q tests, threshold 95): 38 passed, 99 percent.