Combined deploy — unified TOMLs, Docker prod build, TFGrid deployment #46

Merged
mik-tf merged 18 commits from development_demo into development 2026-03-05 15:17:35 +00:00
Owner

Summary

Replaces PR #43 (development_combined_deploy) with the working development_demo branch.

  • Unified TOML format (one file per service with [server] + [ui] sections)
  • Docker prod build with all 13 service repos building successfully
  • entrypoint.sh backup/restore around stop_and_clean
  • OSIS seed-dir and contexts root,default for admin user
  • TFGrid deployment scripts + demo gateway terraform
  • Smoke tests updated for proxy-based routing
  • All 19 zinit services running, login working

Supersedes: #43

🤖 Generated with Claude Code

## Summary Replaces PR #43 (development_combined_deploy) with the working development_demo branch. - Unified TOML format (one file per service with [server] + [ui] sections) - Docker prod build with all 13 service repos building successfully - entrypoint.sh backup/restore around stop_and_clean - OSIS seed-dir and contexts root,default for admin user - TFGrid deployment scripts + demo gateway terraform - Smoke tests updated for proxy-based routing - All 19 zinit services running, login working Supersedes: #43 🤖 Generated with [Claude Code](https://claude.com/claude-code)
- Add Dockerfile.prod, entrypoint.sh, build-services.sh, build-wasm.sh,
  strip-build-sections.sh for containerized production builds
- Add deploy/single-vm/ Terraform and scripts for TFGrid deployment
- Add smoke tests (smoke_container.sh, smoke_gateway.sh) for automated
  verification of services, sockets, RPC, auth, and inspector
- Fix TOML exec lines to match actual binary names from feature branches:
  hero_osis_server/ui, hero_inspector_server/ui, hero_redis_server/ui,
  hero_voice_server/ui, hero_books_server, hero_foundry_server,
  hero_indexer_server
- Fix socket names in hero_auth and hero_fossil TOMLs to use _server suffix

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The orchestrator's execute_profile() calls stop_and_clean() which deletes
all non-zinit binaries from ~/hero/bin/. This is designed for dev mode
where binaries get rebuilt from source. In Docker, binaries are pre-baked,
so we backup before profile execution and restore after, then restart any
failed services.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Switch hero_embedder from build_repo to build_cargo (bypasses
  Makefile that depends on build_lib.sh unavailable in Docker)
- Fix hero_indexer exec: --http-bind → --socket (matches binary CLI)
- Fix hero_books exec: remove --port 8883 (binary auto-binds to UDS)
- Bump CACHE_BUST=26

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CACHE_BUST was declared as ARG but never used in the RUN command,
so changing it didn't actually invalidate the build cache.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The Docker container maps 8806→6666, but the proxy default is 8805.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Socket: default/ → root/ for hero_osis_server context directory
- RPC: /rpc/default → /hero_os_http/rpc/default (via proxy)
- RPC: /rpc/root → /hero_osis_ui/rpc/root (via proxy)
- OpenRPC: /openrpc.json → /hero_os_http/openrpc.json
- Auth: all /rpc/root → /hero_osis_ui/rpc/root

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add optional demo_gateway_name TF variable for second grid_name_proxy
- Add demo_gateway_url output
- Fix hero_osis TOML: add --seed-dir and --contexts root,default so
  admin user is seeded and both contexts are available

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Merge remote-tracking branch 'origin/development' into development_demo
All checks were successful
Build and Test / build (pull_request) Successful in 5m17s
987206d70d
# Conflicts:
#	services/user/hero_auth.toml
#	services/user/hero_books.toml
#	services/user/hero_fossil.toml
#	services/user/hero_indexer.toml
#	services/user/hero_inspector.toml
#	services/user/hero_osis.toml
#	services/user/hero_redis.toml
#	services/user/hero_voice.toml
refactor: update TOMLs and build script for renamed binaries
All checks were successful
Build and Test / build (pull_request) Successful in 5m13s
124f46325a
- hero_os: hero_os_openrpc → hero_os_server
- hero_proxy: hero_proxy_openrpc → hero_proxy_server, hero_proxy_http → hero_proxy_ui
- hero_fossil: hero_foundry_server → hero_fossil_server, hero_foundry_ui → hero_fossil_ui
- hero_auth: hero_auth → hero_auth_server
- hero_books: add [ui] section for hero_books_ui, fix embedder env to UDS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
refactor: update hero_os TOML and build script for hero_os_ui rename
Some checks failed
Build and Test / build (pull_request) Has been cancelled
8850e014ff
hero_os_http → hero_os_ui in both the service TOML exec and Docker build script.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
chore: bump CACHE_BUST=32 for binary renames test build
All checks were successful
Build and Test / build (pull_request) Successful in 5m17s
c0fc954833
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The script only removed top-level [build]/[install]/[download] sections
but missed inline build/download/install keys within [server] and [ui]
sections (unified TOML format). This caused hero_services_server to
generate .install dependencies in Docker containers where binaries are
pre-baked, preventing all services from starting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
fix: update build-wasm.sh for hero_os_ui → hero_os_app rename
All checks were successful
Build and Test / build (pull_request) Successful in 8m11s
541c30b976
The dx build --package flag and output path still referenced hero_os_ui
(now renamed to hero_os_app). Without this fix, the Dioxus WASM shell
assets are not built, leaving hero_os_ui serving 404 on all HTML routes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
mik-tf merged commit fc76621754 into development 2026-03-05 15:17:35 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_services!46
No description provided.