Install
This directory is reserved for ordered, idempotent installation scripts for Atlas.
Phase 2A provides the shared Bash framework and a bootstrap scaffold. It does not install .NET, SQL Server, nginx, Docker, or other future platform components.
What Belongs Here
- Bootstrap scripts.
- Package installation scripts.
- Service installation scripts.
- Storage, runtime, and tooling setup scripts.
- Validation wrappers for installation phases.
- Shared Bash framework libraries under
lib/. - Component manifests under
manifests/.
What Must Not Be Stored Here
- Secrets, passwords, tokens, private keys, or live credentials.
- One-off experiments.
- Generated logs.
- Downloaded package caches.
- Application source code.
- Deployment artefacts.
Naming Conventions
Future phase scripts should use a two-digit numeric prefix followed by a short lower-case hyphenated name:
phases/10-dotnet.sh
phases/20-sql-server.sh
phases/30-nginx.sh
phases/40-docker.sh
phases/90-validate-platform.sh
Scripts must follow SERVER-STANDARDS.md.
Expected Future Structure
Current Phase 2A structure:
bootstrap.sh
lib/
manifests/
phases/
Current Phase 2 installer:
install/phases/10-dotnet.sh
The .NET installer installs only the required .NET SDK packages and verifies them with dotnet --list-sdks.
Current installed SDKs:
- .NET 8 SDK
8.0.128 - .NET 10 SDK
10.0.109
.NET 8 is installed from the official Ubuntu .NET backports PPA. .NET 10 is installed from the built-in Ubuntu package feeds.
Runtime output belongs outside the repository:
/var/log/atlas/install//var/log/atlas/reports//var/lib/atlas/
Security Considerations
- Use
sudoonly for commands that need it. - Do not print secrets.
- Do not embed credentials.
- Validate package sources and signing keys.
- Make scripts safe to rerun.