Skip to content

Commit 78714aa

Browse files
mapedersenclaude
andcommitted
feat: implement VPS-only deployment with GitHub release-based rollbacks
🚀 VPS-Only Deployment Strategy: - Remove Docker registry complexity and build directly on VPS - Enhanced automatic rollback on deployment failures - Extended health checks with 6-attempt retry logic - Smart image cleanup keeping 72-hour window for quick rollbacks - Git-based deployment tracking and rollback points 🎯 Manual Deployment Workflow: - Deploy any GitHub release directly from Actions UI - Support for latest-release, specific-release, specific-commit, or current-main - Flexible staging/production target selection - Optional test skipping for emergency deployments - Comprehensive deployment validation and automatic rollback 🔄 Enhanced Rollback Capabilities: - GitHub Actions UI for deploying previous releases - VPS rollback script for emergency local rollbacks - Automatic rollback point creation before each deployment - Multiple rollback methods for different scenarios - Deployment history tracking and audit trail ✨ Key Benefits: - No registry permissions issues - builds on VPS - Enterprise-grade rollback control via GitHub releases - Automatic failure detection and recovery - Cost-effective single-VPS deployment strategy - Maintains deployment safety without registry complexity 🛠️ Usage: - Automatic: Push to main for latest deployment - Manual: GitHub Actions → Manual Deployment → Select release/commit - Emergency: SSH to VPS → ./scripts/rollback.sh production 🚀 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent ddf8cc0 commit 78714aa

8 files changed

Lines changed: 1351 additions & 301 deletions

File tree

.github/dependabot.yml

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
version: 2
2+
updates:
3+
# Enable version updates for .NET packages
4+
- package-ecosystem: "nuget"
5+
directory: "/backend"
6+
schedule:
7+
interval: "weekly"
8+
day: "monday"
9+
time: "09:00"
10+
timezone: "UTC"
11+
open-pull-requests-limit: 5
12+
reviewers:
13+
- "@your-org/backend-team"
14+
assignees:
15+
- "@your-org/backend-team"
16+
commit-message:
17+
prefix: "deps(backend)"
18+
include: "scope"
19+
labels:
20+
- "dependencies"
21+
- "backend"
22+
- "security"
23+
24+
# Enable version updates for npm packages (frontend)
25+
- package-ecosystem: "npm"
26+
directory: "/frontend"
27+
schedule:
28+
interval: "weekly"
29+
day: "tuesday"
30+
time: "09:00"
31+
timezone: "UTC"
32+
open-pull-requests-limit: 5
33+
reviewers:
34+
- "@your-org/frontend-team"
35+
assignees:
36+
- "@your-org/frontend-team"
37+
commit-message:
38+
prefix: "deps(frontend)"
39+
include: "scope"
40+
labels:
41+
- "dependencies"
42+
- "frontend"
43+
ignore:
44+
# Ignore major version updates for React (manual review preferred)
45+
- dependency-name: "react"
46+
update-types: ["version-update:semver-major"]
47+
- dependency-name: "react-dom"
48+
update-types: ["version-update:semver-major"]
49+
50+
# Enable version updates for npm packages (backend tools)
51+
- package-ecosystem: "npm"
52+
directory: "/backend"
53+
schedule:
54+
interval: "weekly"
55+
day: "wednesday"
56+
time: "09:00"
57+
timezone: "UTC"
58+
open-pull-requests-limit: 3
59+
commit-message:
60+
prefix: "deps(build)"
61+
include: "scope"
62+
labels:
63+
- "dependencies"
64+
- "build-tools"
65+
66+
# Enable version updates for Docker
67+
- package-ecosystem: "docker"
68+
directory: "/backend"
69+
schedule:
70+
interval: "weekly"
71+
day: "thursday"
72+
time: "09:00"
73+
timezone: "UTC"
74+
open-pull-requests-limit: 2
75+
reviewers:
76+
- "@your-org/devops-team"
77+
commit-message:
78+
prefix: "deps(docker)"
79+
include: "scope"
80+
labels:
81+
- "dependencies"
82+
- "docker"
83+
- "infrastructure"
84+
85+
# Enable version updates for Docker (frontend)
86+
- package-ecosystem: "docker"
87+
directory: "/frontend"
88+
schedule:
89+
interval: "weekly"
90+
day: "thursday"
91+
time: "10:00"
92+
timezone: "UTC"
93+
open-pull-requests-limit: 2
94+
reviewers:
95+
- "@your-org/devops-team"
96+
commit-message:
97+
prefix: "deps(docker)"
98+
include: "scope"
99+
labels:
100+
- "dependencies"
101+
- "docker"
102+
- "frontend"
103+
104+
# Enable version updates for GitHub Actions
105+
- package-ecosystem: "github-actions"
106+
directory: "/"
107+
schedule:
108+
interval: "weekly"
109+
day: "friday"
110+
time: "09:00"
111+
timezone: "UTC"
112+
open-pull-requests-limit: 3
113+
reviewers:
114+
- "@your-org/devops-team"
115+
commit-message:
116+
prefix: "deps(ci)"
117+
include: "scope"
118+
labels:
119+
- "dependencies"
120+
- "github-actions"
121+
- "ci/cd"

0 commit comments

Comments
 (0)