Commit Graph

71 Commits

Author SHA1 Message Date
Andras Bacsai 6fe4ebeb7e Refactor docker run commands in upgrade script to remove project name specification 2025-12-14 10:22:11 +01:00
Andras Bacsai c6945c86ea Parse Docker images dynamically from docker-compose files
Replace hardcoded image pulls (postgres:15-alpine, redis:7-alpine,
coolify-realtime:1.0.10) with dynamic extraction using
`docker compose config --images`. This ensures the upgrade script
automatically handles new services and version changes without
manual updates.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 22:12:33 +01:00
Andras Bacsai 20a9855c04 Address CodeRabbit review feedback
- Fix null-safe operator on currentTeam() call in Upgrade.php
- Add --rm flag to docker run in upgrade.sh for cleanup consistency
- Store beforeunload handler as named reference and clean up on success
- Add clarifying comments for upgrade method calls
- Add error state handling with close option in upgrade modal
- Add step mapping documentation comment in upgrade-progress component

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 21:42:19 +01:00
Andras Bacsai dc9f612df4 Clean up status file after upgrade and reduce data exposure
- Delete status file 10 seconds after upgrade completes
- Reduce stale timeout from 30 to 10 minutes
- Remove timestamp from API response (internal detail)
- Treat timestamp parse failures as stale for security

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 21:14:31 +01:00
Andras Bacsai b8cfc3f7c9 Add real-time upgrade progress tracking via status file
- upgrade.sh now writes status to /data/coolify/source/.upgrade-status
- New /api/upgrade-status endpoint reads status file for real progress
- Frontend polls status API instead of simulating progress
- Falls back to health check when service goes down during restart

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 21:11:32 +01:00
Andras Bacsai 30ac4e079c Fix variable expansion in upgrade log message
Use double quotes for LATEST_IMAGE variable in log output so it
expands correctly inside the nohup subshell.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 17:22:01 +01:00
Andras Bacsai 1f7888f515 Use nohup for container restart to survive SSH disconnect
When upgrade is triggered from Coolify UI, the SSH connection is lost when
the coolify container stops. Using nohup ensures the container stop/start
sequence continues in the background even after the connection drops.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 15:41:09 +01:00
Andras Bacsai f4dbae1805 Revert container stop order to original
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 15:39:08 +01:00
Andras Bacsai f3ccacb2da Stop coolify container last during upgrade
Reorder container stop sequence to stop dependencies first (db, redis,
realtime) before stopping the main coolify container. This prevents the
upgrade process from being interrupted when triggered from Coolify UI.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 15:36:01 +01:00
Andras Bacsai 7dc93001e3 Improve log file format with timestamps and sections
- Add log() helper for timestamped entries
- Add log_section() for clear section headers
- Include upgrade metadata at start (version, registry, etc.)
- Log each step with clear descriptions
- Add completion timestamp at end
- Track container operations individually

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 15:32:49 +01:00
Andras Bacsai 6a9027dcbf Add human-friendly output to upgrade script
- Show clear progress with numbered steps (1/6 through 6/6)
- Display header and footer banners
- Show individual image pull progress
- Show which containers are being stopped
- Display final success message with version and log location
- Keep detailed logging to file for debugging

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 15:18:57 +01:00
Andras Bacsai c45cbc04c8 Pull images before stopping containers during upgrade
Ensures images are available before taking down the system. If pull fails
(rate limits, network issues, expired tokens), upgrade aborts safely
without leaving Coolify in a broken state.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 14:54:24 +01:00
Andras Bacsai 0c46da0a23 Fix Docker container race condition during upgrades
Stop and remove existing Coolify containers before starting new ones to prevent conflicts when project name changes from 'source' to 'coolify'. This resolves volume and container name conflicts during upgrades from older installations.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-12 11:28:53 +01:00
Andras Bacsai 65a83fe050 Fix Docker container race condition during upgrades
Add --project-name coolify to docker compose commands to ensure consistent
container naming when executed inside helper containers. Remove --force-recreate
to only recreate containers when image or configuration changes, reducing
race condition risk during concurrent upgrades.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-10 14:14:43 +01:00
Andras Bacsai 727c45a7dc fix: add -L flag to curl commands for CDN redirects
Fixes issue #7348 where curl fails to follow HTTP 302 redirects from the CDN
when fetching versions.json and docker-compose files. The -L flag instructs
curl to automatically follow redirects to the final destination URL, resolving
silent installation failures.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 12:57:03 +01:00
Andras Bacsai acb408a2b7 refactor(upgrade): enhance logging and quoting in upgrade scripts
- Improve logging statements for better clarity and consistency.
- Add quotes around variables in commands to prevent potential issues with spaces.
- Ensure consistent handling of environment variable updates and backups.
2025-09-24 13:18:48 +02:00
peaklabs-dev 64f3fdc463 refactor(upgrade): improve upgrade script
- remove unused VERSION variable.
- add backup functionality of the .env file on each run of the upgrade script.
- skip .env backup when coming from the install script
- add improved handling and more logging for updating environment-variable values.
- remove not needed line
2025-08-29 15:28:31 +02:00
peaklabs-dev f53f671656 fix(installation): path to config file for docker login 2025-04-02 14:35:37 +02:00
peaklabs-dev 1016b000c6 fix(installation): mount the docker config
- Mount docker config during installation to use docker credentials, if there are any.
2025-04-02 14:28:00 +02:00
Andras Bacsai c26209f187 refactor(nightly): update version numbers and enhance upgrade script 2025-03-27 10:47:08 +01:00
Andras Bacsai 8f0955bcd8 refactor(network): check for existing coolify network before creation 2025-03-25 12:34:03 +01:00
Andras Bacsai bc297c4296 refactor(network): enhance docker network creation with ipv6 fallback 2025-03-25 11:27:59 +01:00
Andras Bacsai 1fcfac07b1 refactor(env): add centralized registry URL to environment configuration 2025-03-25 09:03:59 +01:00
Andras Bacsai 54eb4e3ffe feat: add log file check message in upgrade script for better troubleshooting 2025-01-17 17:22:52 +01:00
Andras Bacsai 47e9e69ce0 fixes 2024-11-10 22:07:41 +01:00
Andras Bacsai 60de7dc711 fix: upgrade.sh 2024-11-10 21:44:34 +01:00
Andras Bacsai 983ce240e2 feat: add upgrade logs to /data/coolify/source 2024-11-08 13:54:58 +01:00
Loïc Tosser 5ef2d476a4 Implementing support for Alpine Linux 2024-09-07 10:35:26 +04:00
Andras Bacsai 148c7d212c update install scripts to pull the latest helper version during installation 2024-09-06 14:33:06 +02:00
Andras Bacsai f8d6ce2730 Update memory limit to 128MB in horizon configuration 2024-09-02 10:22:10 +02:00
Andras Bacsai 4169d727fd fix: infra files 2024-09-02 09:53:09 +02:00
Andras Bacsai 5f0a8bc4f2 revert infra things 2024-08-30 13:31:52 +02:00
Andras Bacsai 14fc067057 fix: let's wait for healthy container during installation and wait an extra 20 seconds (for migrations) 2024-08-30 11:56:34 +02:00
Andras Bacsai 8b5f4a597c chore: Update version to 1.3.4 in install.sh and 1.0.6 in upgrade.sh 2024-08-29 14:23:17 +02:00
Andras Bacsai 065e1b588b refactor: Remove unnecessary code for creating coolify network in upgrade.sh 2024-08-29 14:22:58 +02:00
Andras Bacsai 294721eef9 fix: autoupdate process 2024-06-04 21:57:00 +02:00
Andras Bacsai 3df80f2653 fix: autoupdate 2024-04-29 09:57:46 +02:00
Andras Bacsai fcd100df39 Fix typos and grammatical errors in email templates and form view 2024-02-29 09:16:02 +01:00
Andras Bacsai caf6e3a23e fix 2023-12-06 14:23:18 +01:00
Andras Bacsai b106705c8d wip 2023-12-05 14:18:44 +01:00
Andras Bacsai 5cc22a8271 wip: 🌮 2023-12-05 13:56:11 +01:00
Andras Bacsai 862177d61a wip 2023-12-05 12:16:48 +01:00
Andras Bacsai 41280aa780 wip 2023-12-05 12:13:57 +01:00
Andras Bacsai ce49f26c53 wip 2023-12-05 11:17:52 +01:00
Andras Bacsai 810b55163c revert: wip 2023-12-04 21:37:30 +01:00
Andras Bacsai a3e088199f wip 2023-12-04 21:06:02 +01:00
Andras Bacsai 42ee4ca032 wip: broadcast 2023-12-04 20:47:32 +01:00
Andras Bacsai 2d7bbbe300 wip: swarm 2023-11-29 10:06:52 +01:00
Andras Bacsai c82e02218f version++ 2023-10-24 11:08:59 +02:00
Andras Bacsai 678b264688 fix: make sure coolfiy network exists on install 2023-10-24 11:08:05 +02:00