Render PaaS — Aquilia Documentation
Comprehensive guide and documentation for Render PaaS in the Aquilia framework. View API reference, examples, and implementation patterns.
Render PaaS Deployments Full lifecycle deployment orchestration, client libraries, and payloads The Render integration facilitates zero-downtime, fully-configured deployments. When you execute a deployment, Aquilia compiles your code, packages it inside a production-ready Docker container, wires dependency-injected integrations, configures security headers, provisions Render services, and polls until the system is healthy. Deployment Prerequisites To orchestrate deployments to the Render cloud platform, you must establish two distinct trust endpoints beforehand: Render API Authentication: You must configure your Render API token locally. This can be accomplished either via the interactive aq provider login render command or via the Aquilia Admin Panel configuration settings. Docker Registry Authorization: Because Render does not host custom container images directly, it relies on pulling built images from an external registry (e.g., Docker Hub, GitHub Container Registry). You must run docker login on your workstation so the deployer can push the compiled image to your repository. Deployment Pipeline Workflow Deploying an application executes a structured multi-phase orchestration pipeline managed by RenderDeployer : 1 Pre-flight Diagnostics Runs aq doctor and aq validate. The system inspects your dependency injection graph for unresolved services, checks module manifests for routing conflicts, and verifies that the local configuration is valid. 2 Container Compilation If the workspace contains a Dockerfile (or if one is generated on the fly via aq deploy dockerfile), the deployer spawns a Docker build process to compile your local workspace into a target image with the linux/amd64 architecture. 3 Docker Registry Push Validates Docker registry login credentials. The deployer pushes the compiled image to the remote container registry (such as Docker Hub or GHCR), so that Render can pull the image during its deployment run. 4 Owner and Context Introspection Retrieves workspace owner info from Render's API. The deployer inspects your active workspace integrations. If the workspace has has_db, has_cache, or has_auth modules active, Aquilia automatically structures corresponding environment variables: DATABASE_URL for PostgreSQL integrations REDIS_URL for Redis integrations AQ_AUTH_SECRET (cryptographically generated crypt-secure value for token validations) AQ_SIGNING_SECRET (cryptographically generated signing seed) 5 Render Provisioning & Webhook Setup Creates the service in Render (or patches the existing configuration if already provisioned). Synchronizes environment variables and attaches persistent disks if specified. 6 HTTP Headers Injection Injects standard security headers to secure the service (e.g. Strict-Transport-Security, X-Content-Type-Options, and X-Frame-Options: DENY) directly into Render's ingress routers. 7 Autoscaling & Deployment Wait Applies scaling targets and triggers the deployment. The pipeline loops, polling the Render deployment endpoint until the service status goes live. In the event of a build or start failure, the deployer aborts and rolls back to the previous deployment ID. The Render API Client The RenderClient class is a synchronous Python client implementing the official Render API v1. To prevent dependency bloat and eliminate supply-chain vulnerabilities, the client is written using Python's standard library urllib.request. It incorporates transient failure retries, cursor-based pagination, and automatic rate-limit throttling (by respecting the API's Retry-After headers with exponential backoff). The Render Deployer The RenderDeployer orchestrates the deployment process. It takes the credentials token from the secure credential store, reads configuration from workspace.py, and coordinates the compilation, upload, and verification phases. Payload Architecture When creating or patching services, the RenderDeployConfig converts snake_case structures into camelCase JSON properties required by the Render REST endpoints: POST /v1/services (Service Creation) Next Chapters 02 Secure Credential Store Key derivation cryptography, encrypted credentials payload formatting, and local audit logs. 03 CLI Reference Guide Complete command flags, environment variable synchronizations, and CLI diagnostics. ) } function ArrowRightIcon() { return ( )
Go to Homepage