managing-deploymentlisted
Install: claude install-skill samfolo/personal-site
# Managing Deployment
Deployment and infrastructure maintenance for the site.
## When to Use
Consult this skill when troubleshooting failed deployments, modifying the GitHub Actions workflow, or diagnosing build issues. The gcloud and GitHub MCP servers are available for direct Cloud Run and repository operations.
## Architecture
Every push triggers deployment via GitHub Actions:
- **main branch** → Production (100% traffic)
- **other branches** → Preview (tagged revision, no traffic)
## Key Files
| File | Purpose |
|------|---------|
| `.github/workflows/deploy.yml` | CI/CD workflow |
| `Dockerfile` | Multi-stage Docker build |
## Pre-Deployment Verification
Before pushing, verify the build will succeed:
```bash
npm run check # TypeScript and Astro checks
npm run lint # ESLint
npm run build # Full production build
```
If `npm run build` succeeds locally, the Docker build should succeed in CI.
## Docker Build
Multi-stage build defined in `Dockerfile`:
1. **Build stage**: Installs all dependencies, runs `npm run build`
2. **Runtime stage**: Production dependencies only, copies built output
Check the Dockerfile for current Node version and port configuration.
## Diagnosing Build Failures
### TypeScript Errors
```bash
npm run check
```
Fix all errors before pushing.
### ESLint Errors
```bash
npm run lint --fix
```
### Missing Dependencies
If build fails with module not found:
1. Check the import path is correct
2. Verify package is in `packag