Skip to content

Vayzo DevOps Portal

Operational knowledge base for Vayzo and the operational boundaries around the active projects. Vayzo uses a React/Vite frontend, .NET 8 backend, MySQL, Redis, Docker, K3s/Helm, Terraform, Hetzner Cloud, and Cloudflare. The portal itself is an MkDocs site published through Cloudflare Pages.

This is a step-by-step operational portal, not a code-reference dump. The core sections follow the same shape: Purpose → Prerequisites → Commands → Validation → Troubleshooting → Rollback.

Two staging architectures are documented here - use the current one

VayzoMart's real, live staging environment runs today on a shared-VPS Docker Compose architecture at https://stg.vayzomart.com - see Deployment → Staging (VPS), the canonical runbook, deployed via scripts/deploy-staging-vps.sh.

This portal also documents a separate, planned future Kubernetes/Helm/Terraform architecture (see Deployment → Staging (legacy) and Kubernetes & Helm), which remains on hold behind its own domain-registration and infrastructure prerequisites and is not currently used for VayzoMart's real staging or production traffic. Pages under that path are kept for historical/future-architecture reference - if a page's own hostname or command doesn't match stg.vayzomart.com / scripts/deploy-staging-vps.sh, you are reading the legacy path.

This distinction does not affect local development or this documentation portal itself, which is published independently (see "Portal hosting" below).

Fast paths

Operational flow

Identify repository + environment
          ↓
Validate source / CI
          ↓
Terraform plan/apply (only if infrastructure changed)
          ↓
Container build / image validation
          ↓
Kubernetes context + namespace pre-flight
          ↓
Helm lint/render/review
          ↓
Deploy
          ↓
Verification + smoke tests + monitoring
          ↓
Accept release OR rollback

Documentation-only changes use a smaller path:

branch → PR → GitHub docs CI → merge → Cloudflare Pages → portal verification

CI baseline

The repository CI currently validates:

Layer Validation
Backend dotnet restore → Release build → xUnit tests
Frontend npm ci → lint → production build
Documentation install requirements-docs.txt → mkdocs build --strict

Always treat the checked-in workflow as the current source of truth rather than copying an old test count into a runbook.

Conventions used throughout this portal

  • PowerShell is the default for commands run from a Windows developer workstation. Linux/Bash commands are labeled or obvious from their execution context.
  • Placeholders are deliberate. Examples use names such as <MYSQL_PASSWORD>, <CLOUDFLARE_API_TOKEN>, and <RAZORPAY_KEY_SECRET>; real values never belong in documentation.
  • Read-only checks come first. Confirm environment/context/version before a mutating command.
  • Production stays separate. Staging and production use distinct namespaces, values, data resources, and runbooks even when infrastructure components are shared.
  • Secrets are referenced by location/name, not value. See Secrets & Credentials.
  • Rollback is part of deployment planning. Record the previous known-good revision before production changes.

Portal hosting

The MkDocs site is configured by mkdocs.yml and is published at:

https://akshaya-devops.pages.dev/

Cloudflare Pages project:

akshaya-devops

The Pages site is documentation hosting only; it does not deploy the marketplace application or infrastructure.

Earlier working notes

This portal supersedes but does not delete the original working notes written during the infrastructure build-out. They remain under Legacy Reference for historical context and detailed audit/debugging transcripts.