Update Installation.md for helper scripts system #102
Labels
No labels
apache
api
api-contract
api-gateway
authentication
automation
breaking-change
comments
component/deployment
component/documentation
component/service-management
configuration
contact-form
coordination/cross-repo
coordination/needed
core
deployment
development
development-ready
digital-sovereignty
distribution
effort
large
effort
medium
effort
small
enhancement
frontend
furt-service
furt/gateway
furt/installation
gateway
gateway-integration
generator
gitea-testing
health-check
help-wanted
hugo
hugo-integration
infrastructure
installation
logging
low-tech
mail
meta
meta/duplicate
meta/planning
meta/wontfix
monitoring
observability
openapi
organization
packaging
performance
planning
platform/linux
priority
high
priority
low
priority
medium
production
question
sagjan
security
service
service-analytics
service-development
service-formular2mail
service-newsletter
service-request
service-sagjan
session
blocker
session
handover
session
next
shortcode
specs
ssl
status
blocked
status
done
status
in-progress
status
review
status
to-go
systemd
testing
tooling
type
admin
type
bug
type
config
type
deployment
type
docs
type
enhancement
type
feature
type
handover
type
infrastructure
type
installation
type
maintenance
type
migration
type/refactor
type
research
type
security
type/testing
v0.1.0
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: DAW/furt#102
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Purpose
Update Installation.md to include the new helper scripts system from Issue #87.
Current Gap
Installation.md currently describes manual step-by-step installation. With the new helper scripts system (install.sh + 6 helper scripts), users have multiple installation paths but the documentation doesn't reflect this.
Required Documentation Updates
1. Installation Methods Section
Add overview of available installation methods:
./install.sh(recommended)./install.sh --upgrade2. Helper Scripts Documentation
Document each helper script with purpose and usage:
install.sh- Main orchestrator with --upgrade supportscripts/setup-user.sh- System user creationscripts/setup-directories.sh- Directory structurescripts/sync-files.sh- Source file installationscripts/create-service.sh- Service creation from templatesscripts/validate-config.sh- Configuration validationscripts/health-check.sh- Health check functionality3. Update Workflow Documentation
Add section for updating existing installations:
4. Troubleshooting Updates
Add troubleshooting section for helper scripts:
Structure Changes
Before (current)
After (updated)
Success Criteria
Dependencies
Target Audience
Related Issues
Update: Successful walter Installation Test + Documentation Restructure Plan
walter Test Results - Helper Scripts Work Perfectly
Test Environment: walter (OpenBSD VM)
Method: Package installation with
./install.shResult: ✅ Complete Success
Installation Flow:
All 6 Helper Scripts executed successfully:
setup-user.sh- Created_furtusersetup-directories.sh- Created/usr/local/etc/furt,/usr/local/share/furt,/var/log/furtsync-files.sh- Copied source files correctlycreate-service.sh- Created/etc/rc.d/furtfrom templatevalidate-config.sh- Config validation (expected warning for missing config)health-check.sh- Service health verificationAPI Testing successful:
Documentation Restructure Plan
Current Problem: Installation.md has grown to 600+ lines - violates DAW minimalist principles.
DAW Philosophy for Documentation:
Proposed Structure:
1. Quick-Install.md (NEW) - 50-100 lines max
Manual Installation
[Link to Manual-Install.md for full understanding]
Next Steps
[Config & Testing - minimal essential only]
Manual Installation Guide
Understanding the Installation Process
[Why each step is necessary - educational focus]
Step-by-Step Manual Process
[Current detailed content, but structured for learning]
What the Helper Scripts Do
[Mapping manual steps to automated scripts]
furt Configuration Guide
Understanding Multi-Tenant Architecture
[Why API keys, SMTP routing, etc.]
Configuration Examples
[Real-world scenarios]
Security Considerations
[File permissions, network access, etc.]
Helper Scripts Reference
Script Overview
[What each script does and why]
Manual Equivalent
[For each script, show the manual commands it replaces]
Troubleshooting Scripts
[When scripts fail, how to debug]
Multi-Platform Testing Update (3/4 Platforms Complete)
Successful Platform Tests
Critical Issues Identified
1. Config Path Inconsistency
Problem: Helper Scripts create
/etc/furt/, start.sh searches/usr/local/etc/furt/Impact: All Linux distributions affected
Workaround: Manual
cp config/furt.conf.example /usr/local/etc/furt/furt.conf2. systemd Service Type Issue
Problem: Repository template uses
Type=simplebut start.sh runs with&(forking)Impact: Linux distributions (Debian, Arch) - service fails
Fix:
Type=forkingin systemd template3. JSON Library Platform Differences
Problem:
lua-cjsonavailablelua51-dkjsonavailablerequire('cjson')Fix Applied: Manual sed replacement for Arch testing
Needed: Flexible JSON library detection in code
4. Missing SSL/TLS Dependency Check
Problem: start.sh checks lua-socket and lua-cjson but not lua-sec
Impact: Service starts but fails silently on SMTP SSL connections
Documentation Restructure Requirements
Based on testing, Installation.md needs platform-specific sections:
Quick-Install.md - Automated installation (updated helper scripts)
Manual-Install.md - Step-by-step with platform differences
Platform-Notes.md - JSON libraries, systemd vs rc.d, config paths
Troubleshooting.md - Common multi-platform issues
Remaining Testing
Implementation Priority
Scope-Korrektur: FreeBSD entfernt aus Multi-Platform-Testing
Grund für Scope-Änderung
Nach Session-Analyse: FreeBSD ist nicht Teil der DAW-Plattform-Strategie.
DAW-Blog unterstützt nur 3 Plattformen:
FreeBSD-Probleme:
Multi-Platform-Testing-Ergebnis (Final)
Installation.md-Restructure (Updated Scope)
Quick-Install.md + Platform-Notes.md: Nur OpenBSD/Debian/Arch
Manual-Install.md: OpenBSD-focused mit Linux-Hinweisen
3-Platform-Support bleibt DAW-konform ohne Corporate-Multi-Platform-Versprechen.
Additional Service-Management Features Impact
Update zu Issue #100 Scope-Erweiterung:
Zusätzliche Documentation-Requirements
Service-Management-Features (Issue #100)
doas rcctl reload furt/sudo systemctl reload furtUpdated Documentation Structure
Quick-Install.md: Service-Commands erweitern
Troubleshooting.md: PID-File spezifische Issues
Stale PID-Files nach Crashes
Permission-Probleme mit /var/run/
Service-Status-Verification
Platform-Notes.md: rc.d vs systemd Service-Command-Unterschiede
Testing-Coordination: Issue #100 Implementation bereit - Documentation kann parallel aktualisiert werden
Dokumentation im wiki erstellt