One image serves every Site, so a new Site is three small files: an inventory entry, a vars file naming its web address and data root, and a config that seeds its theme and first category list (baked into the image, which is why a new Site needs a new tag). Both reuse the directory their old static menus were served from, and the caddy role drops the snippet the retired nginx-menu playbook wrote for each hostname, so a deploy repoints each address at its own container with nothing else to do. The seeded category lists are a starting point, not a decision: categories, names and icons are all editable in each Site's own admin. A test now checks the inventory, config and vars agree for every Site and that no config is orphaned, because a half-added Site was the obvious way to get this wrong.
58 lines
1.0 KiB
JSON
58 lines
1.0 KiB
JSON
{
|
|
"site": "menu.greatbear.in",
|
|
"brand": {
|
|
"name": "The Great Bear",
|
|
"tagline": "Craft Microbrewery",
|
|
"logo": "/assets/favicon.svg"
|
|
},
|
|
"theme": {
|
|
"steel": "#faf8f5",
|
|
"rail": "#f4f1ea",
|
|
"paper": "#ffffff",
|
|
"accent": "#c59b58",
|
|
"copper": "#b08544"
|
|
},
|
|
"sections": [
|
|
{
|
|
"slug": "food",
|
|
"label": "Food",
|
|
"shortLabel": "Food",
|
|
"order": 1
|
|
},
|
|
{
|
|
"slug": "bar",
|
|
"label": "Bar",
|
|
"shortLabel": "Bar",
|
|
"order": 2
|
|
},
|
|
{
|
|
"slug": "wine",
|
|
"label": "Wine",
|
|
"shortLabel": "Wine",
|
|
"order": 3
|
|
},
|
|
{
|
|
"slug": "straight-drinks",
|
|
"label": "Straight Drinks",
|
|
"shortLabel": "Drinks",
|
|
"order": 4
|
|
},
|
|
{
|
|
"slug": "delivery",
|
|
"label": "Delivery",
|
|
"shortLabel": "Delivery",
|
|
"order": 5
|
|
},
|
|
{
|
|
"slug": "whats-on",
|
|
"label": "What's On",
|
|
"shortLabel": "What's On",
|
|
"order": 6
|
|
}
|
|
],
|
|
"limits": {
|
|
"maxUploadBytes": 31457280,
|
|
"maxPagesPerSet": 40
|
|
}
|
|
}
|