mirror of
https://github.com/psviderski/uncloud.git
synced 2026-11-10 04:34:17 +00:00
* fix(compose): strip and resolve pre-deploy hook secrets like service env (fixes #422) normaliseContainerForStore only cleared Config.Env and ServiceSpec.Container.Env before writing a container record to the replicated Corrosion store, leaving ServiceSpec.PreDeploy.Env in place. A secret set via x-pre_deploy.environment therefore replicated to every machine in the cluster, unlike the same value set via environment. ResolveSecrets had the same asymmetry in the other direction: it only resolved secret://name references in service.Environment, so a reference placed in the pre-deploy hook's environment passed through unresolved as a literal string. HasCommandSecretRefs is extended the same way for consistency. Add tests pinning both behaviours. * update docs that secret references are available for pre-deploy hooks --------- Co-authored-by: Pasha Sviderski <me@psviderski.name>
Website
Landing page
Landing page is a single static HTML file located at ./landing/index.html. It is built
using Tailwind CSS.
Local development
cd landing
open index.html
# Watch the Tailwind CSS class changes and rebuild style.css
npm run dev
Docs and Blog
/docs and /blog are built using Docusaurus, a modern static website generator.
Local Development
npm start
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Deployment
Both the landing page and Docusaurus site are built into a single Docker image that runs Caddy web server to serve the static files.
Before building a production image, test the build locally:
docker compose -f compose.local.yaml up --build
Verify:
- http://localhost:8000 — should show the landing page
- http://localhost:8000/docs/ — should show the docs generated by Docusaurus
- http://localhost:8000/blog/ — should show the blog generated by Docusaurus
Deploy to production
make website-image-push
uc deploy