-
Notifications
You must be signed in to change notification settings - Fork 9
Open
Description
Background
I recently executed an initiative to stand-up my own Wave deployment, using the existing state of the Wave documentation as my guide. I found it confusing that installation/configuration settings were documented across a few different places in the repo hierarchy:
- wave/docs/install/kubernetes
- Contains manifests for
waveapp itself but does not contain other necessary manifests like EFS StorageClass / PV / PVCs /wave-buildresources. - Ingress resource defined in "Next Steps" (technically true, but realistically should live with rest of application manifests).
- Has details on pre-requisite infrastructure (Postgres) that is also required by Docker-Compose Wave Lite deployment.
- Has ECR token IAM permissions that intermingle permissions needed for proxy flow only and those needed for build flow (e.g.
ecr:UploadLayerPart.
- Contains manifests for
- wave/docs/install/configure-wave-build
- Has manifests for Wave build. Defines PV/PVC for
wavenamespace but not the second set of PV/PVC needed forwave-buildnamespace. - Has an updated Deployment different from the base manifest (despite most content being similar).
- No admonition re: specific provisioning settings required by backing EFS instance.
- Mixes basic setup steps with Production-readiness activities (e.g. dedicated node pools) which are more suited to being in the pre-requisites section.
- Has manifests for Wave build. Defines PV/PVC for
- wave/docs/configure-wave.md
- Mixes generic config (SMTP), with cloud-specific (SES), with Build-specific (security scanning and ECR cache repository permission), with ECR lifecycle suggestions.
- Contains small tables of subset of configurations
- wave/docs/configuration.md
- Laundry list of configuration values
- Description quality varies between sections (e.g. missing good description for why one might want to activate the blobCache
- Documented default values do not always reflect underlying value in code (e.g.
wave.build.status.duration) - Mixes infrastructure/deployment-related settings (e.g. S3 cache authentication with actual application-level settings.
- wave/docs/install/docker-compose
- Duplication of postgres config.
- Subset of
wave-config.ymlapp configuration (_maybe ok to keep separate since formatting is slightly different than the Kubernetes ConfigMap).
Proposed Approach
I'm not sure how to resolve all problems / whether it's worth resolving everything. To begin, however, I'd advise:
- Collapse all infrastructure/K8s deployment activity into a single page.
- Single source configuration into a single page (laundry-list, with subsections for K8s & Docker-Compose).
- TBD ...
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels