Commit graph

3999 commits

Author SHA1 Message Date
peaklabs-dev
d15f1b9b94
fix(email): Emails are not sent in multiple cases
- fix(email): transactional emails are all not sent if `Use system wide (transactional) email settings` is disabled and no other email provide is setup on the Notifications page
- fix(email): no emails are sent if SMTP username and SMTP password are empty (which is the case in dev for example)
- fix(email): Wrong test email notification is used, causing the transactional email test notification to fail if no email provider is set up on the Notifications page.
2025-04-02 16:28:14 +02:00
peaklabs-dev
1384de7566
fix(docs): comment out execute for now
- Due to security concerns, execute is disabled, so we need to comment out the code as well to update the docs.
2025-04-01 20:57:20 +02:00
peaklabs-dev
7519e6a939
fix(ui): Instance Backup settings
- Only show and enable instance backup settings when the server is functional
2025-04-01 14:31:38 +02:00
Andras Bacsai
9f67633f2c feat(api): add endpoints for retrieving application logs and deployments 2025-03-31 17:38:54 +02:00
Andras Bacsai
799855ea28 refactor(dev): remove OpenAPI generation functionality 2025-03-31 17:38:50 +02:00
Andras Bacsai
107eb8836b
Merge pull request #5444 from karan-vk/main
Feat(api): Add Pull Request deployment support to WebHooks
2025-03-31 17:34:02 +02:00
Andras Bacsai
ee5c0f0413 fix(deploy): validate team ID before deployment 2025-03-31 17:33:01 +02:00
Andras Bacsai
d8248ba153
Update app/Http/Controllers/Api/DeployController.php
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-03-31 17:23:58 +02:00
Andras Bacsai
99dd516d6b
Update app/Http/Controllers/Api/DeployController.php
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-03-31 17:22:40 +02:00
Andras Bacsai
9e18d6e43a
Merge pull request #5487 from Messanga11/features/app-deployments
Features/app deployments
2025-03-31 16:53:35 +02:00
Andras Bacsai
adc3d95254 fix: only get apps for the current team 2025-03-31 16:52:51 +02:00
Karan V
69cde67273
Merge branch 'next' into main 2025-03-31 22:35:28 +09:00
Andras Bacsai
18c4729c09
Merge pull request #5482 from djsisson/fix_custome_healthcheck
removed start interval as it is not a valid option and is not defined…
2025-03-31 15:29:34 +02:00
Andras Bacsai
fcfd00eebe feat(application): add SPA configuration and update Nginx generation logic 2025-03-31 15:10:50 +02:00
Andras Bacsai
d6d1c9ad82 feat(database): add CA certificate generation for database servers 2025-03-31 14:02:15 +02:00
__m__
3b04d3df91 feat(deployments): add list application deployments api route 2025-03-31 12:31:17 +01:00
Darren Sisson
887a96dd35 removed start interval as it is not a valid option and is not defined in coolify 2025-03-31 10:44:29 +01:00
Karan V
a442d35332
Merge branch 'next' into main 2025-03-30 23:38:51 +09:00
Andras Bacsai
b376d6df2a reverting: encrypting mount and fs_path 2025-03-29 22:16:12 +01:00
Andras Bacsai
34e1587068 refactor(database-backup): remove existing Docker container before backup upload 2025-03-28 22:45:12 +01:00
Andras Bacsai
c2941abe57 fix(file-storage): double save on compose volumes 2025-03-28 22:10:33 +01:00
Andras Bacsai
7686ebfd6c refactor(file-storage): add loadStorageOnServer method for improved error handling 2025-03-28 21:05:34 +01:00
Andras Bacsai
0b41378014 refactor(proxy): remove redundant stop call in restart method 2025-03-28 20:54:27 +01:00
Andras Bacsai
d110c93ba9 refactor(email): enhance sender information formatting in email logic 2025-03-28 20:44:28 +01:00
Andras Bacsai
ebb81aff68 refactor(email): allow custom email recipients in email sending logic 2025-03-28 19:09:36 +01:00
Andras Bacsai
6d9887afba refactor(email): remove unnecessary whitespace in email sending logic 2025-03-28 18:46:46 +01:00
Andras Bacsai
2b046c4bc4 refactor(email): streamline email sending logic and improve configuration handling 2025-03-28 18:44:10 +01:00
Andras Bacsai
39cb270eb7 refactor(email): improve error handling by passing context to handleError 2025-03-28 18:44:03 +01:00
Andras Bacsai
09636b413e refactor(email): validate team membership for email recipients 2025-03-28 14:55:13 +01:00
Karan Vijayakumar
f0a1abc55d fix(DeployController): cast 'pr' query parameter to integer
Ensure the 'pr' query parameter is consistently treated as an integer to avoid type-related issues in subsequent logic
2025-03-28 01:50:21 +09:00
Karan Vijayakumar
2947a9ff1d feat(deploy): add pull request ID parameter to deploy endpoint 2025-03-28 01:16:29 +09:00
Andras Bacsai
ebd9485acb refactor(database): change MySQL daemon command to MariaDB daemon 2025-03-27 10:14:40 +01:00
Andras Bacsai
3be6be4c1b refactor(database): require PEM key file for SSL certificate regeneration 2025-03-27 10:02:25 +01:00
Andras Bacsai
1857a54d92 refactor(database): update import statements for Auth in database components 2025-03-26 18:31:42 +01:00
Andras Bacsai
44bf3f4ee3 refactor(database): streamline event listeners in Redis General component 2025-03-26 18:30:52 +01:00
Andras Bacsai
d6d16f3844
Merge pull request #5433 from coollabsio/debug-emails
Emails
2025-03-26 17:27:34 +01:00
Andras Bacsai
d7ded7f8e5 refactor(database): enhance SSL configuration handling for various databases 2025-03-26 17:24:46 +01:00
Andras Bacsai
5693b59874 refactor(database): update MongoDB SSL configuration for improved security 2025-03-26 12:25:58 +01:00
Andras Bacsai
63c496feee refactor(models): remove unnecessary cloud check in isEnabled method 2025-03-26 09:44:11 +01:00
Andras Bacsai
11bfc37db7 refactor(notifications): update Telegram button URL for staging environment 2025-03-26 08:31:11 +01:00
Andras Bacsai
f7122ec520 refactor(proxy): improve port availability checks with multiple methods 2025-03-25 18:28:01 +01:00
Andras Bacsai
be95695ee8 refactor(models): add is_directory attribute to LocalFileVolume model 2025-03-25 09:40:36 +01:00
Andras Bacsai
3f9fd1404b refactor(docker): update image references to use centralized registry URL 2025-03-25 08:17:13 +01:00
Andras Bacsai
e891318396 refactor(configuration): centralize configuration management in ConfigurationRepository 2025-03-24 21:01:27 +01:00
Andras Bacsai
7b8e2e7175 fix(ssl): handle missing CA certificate in SSL regeneration job 2025-03-24 20:29:54 +01:00
Andras Bacsai
cef4596011 fix(console): handle missing root user in password reset command 2025-03-24 18:00:31 +01:00
Andras Bacsai
e7f32a1c44 refactor(notifications): standardize getRecipients method signatures 2025-03-24 17:55:10 +01:00
Andras Bacsai
5e6c112fcc feat(github): enhance repository loading and validation in applications 2025-03-24 14:29:17 +01:00
Andras Bacsai
806d892031 refactor(application): streamline healthcheck parsing from Dockerfile 2025-03-24 11:43:10 +01:00
Andras Bacsai
d7d80e926e feat(user): implement session deletion on password reset 2025-03-21 15:45:29 +01:00
Andras Bacsai
26f4d37346 feat(notifications): add discord ping functionality and settings 2025-03-21 12:16:33 +01:00
Andras Bacsai
2ec3af8d2c
Merge branch 'next' into feat/api-services-create-custom-compose 2025-03-21 11:33:06 +01:00
Andras Bacsai
e0e54d6d82
Merge pull request #5344 from plumelo/feat/api-services-create-custom-compose
feat(api): improve services API
2025-03-21 11:32:16 +01:00
Andras Bacsai
120facfca3 feat(api): unify service creation endpoint and enhance validation 2025-03-21 11:31:17 +01:00
Meghea Iulian
d08774d083
feat(api): update Services api routes and handlers 2025-03-20 08:28:28 +02:00
Benjamin Grant
37c2a2b6ad
fix: correct some spellings 2025-03-19 19:49:59 +00:00
Meghea Iulian
d16888b707
feat(api): separate create and one-click routes
Moves previous POST /services to POST /services/one-click.
Adds new POST /services that takes a docker_compose.
2025-03-19 10:22:34 +02:00
Meghea Iulian
5a7ced9438
feat(api): add api to create custom services
Add separate API to create services with custom Docker compose instead
of oneclick services implement as a POST to /services/compose.
This is somewhat similar to /applications/dockercompose but that API is
the only one in ApplicationsController that actually works with the `Service` model.
2025-03-19 06:51:20 +02:00
Andras Bacsai
ca5371a7d4
Merge pull request #5340 from DekraIT/main
fix(issue#4746): Do not use setGitImportSettings inside of generateGitLsRemoteCommands
2025-03-18 10:50:16 +01:00
Andras Bacsai
b888d86d90
Merge pull request #5341 from plumelo/feat/application-docker-compose-name
fix(api): use name from request payload
2025-03-18 10:38:37 +01:00
Darren Sisson
8aef5df539 change cleanup logic when restarting containers 2025-03-17 17:52:34 +00:00
Andras Bacsai
950acffe0b refactor(database): streamline SSL configuration handling across database types 2025-03-17 15:15:54 +01:00
Andras Bacsai
009cee1bbd
Merge branch 'next' into feat-db-ssl 2025-03-17 15:15:24 +01:00
Andras Bacsai
b8f99bbda0 fix(core): redirect healthcheck route for dockercompose applications 2025-03-17 11:28:43 +01:00
Piotr Wójcik
0baeaa982b
Merge branch 'next' into docker-network-aliases 2025-03-16 14:50:26 +01:00
Andras Bacsai
8a11de9b1a fix(core): improve instantSave logic and error handling 2025-03-15 22:26:59 +01:00
Andras Bacsai
798aab6955 refactor(ScheduledTask): clean up code formatting and remove unused import 2025-03-14 16:11:41 +01:00
Andras Bacsai
282bb5c4cd fix(redis): set default redis_username for new instances
Added functionality to automatically assign a default 'redis_username' of 'default' when a StandaloneRedis instance is retrieved without an existing username. This ensures that all instances have a valid username, improving consistency and reducing potential errors in subsequent operations. Additionally, updated the redisUsername method to create a runtime environment variable for 'REDIS_USERNAME' with a default value if it does not already exist, enhancing the robustness of the configuration management.
2025-03-14 16:11:31 +01:00
Andras Bacsai
595370df92 feat(LocalFileVolume): add binary file detection and update UI logic
Implemented a new attribute to detect binary files in the LocalFileVolume model, enhancing the file handling capabilities. The isBinary method checks for binary content based on specific criteria, allowing for better management of file types. Additionally, updated the file storage UI to conditionally display conversion options based on the binary status of the file, improving user experience and preventing unintended actions on binary files. These changes contribute to a more robust and user-friendly file management system.
2025-03-14 14:55:38 +01:00
Meghea Iulian
57f0a7d400 fix(api): use name from request payload
In POST `/applications/dockercompose`  the `name` parameter is required.
The API thou ignores it and generates its own name for the service.
2025-03-14 14:41:05 +02:00
DekraIt
08f0661757 fix(issue#4746): Do not use setGitImportSettings inside of generateGitLsRemoteCommands 2025-03-14 05:14:18 +01:00
Andras Bacsai
a07b581478 fix(database): simplify container name generation in StartDatabaseProxy 2025-03-12 16:46:31 +01:00
Andras Bacsai
078ef62eb8 fix(database): handle unsupported database types in StartDatabaseProxy
Added a default case to the switch statement in StartDatabaseProxy to throw an exception for unsupported database types. This change improves error handling and ensures that only valid database types are processed, enhancing the robustness of the database proxy functionality.
2025-03-12 16:35:47 +01:00
Andras Bacsai
18fe524cdb fix(database): limit container name length for database proxy
Updated the container name generation logic in StartDatabaseProxy to ensure the resulting name does not exceed 32 characters. This change prevents potential issues with container name length restrictions, enhancing the robustness of the database proxy setup.
2025-03-12 16:34:42 +01:00
Andras Bacsai
d894c3d903 feat(database): implement two-step confirmation for database deletion
Added a new delete method in the Database component that includes a two-step confirmation process requiring the user to enter their password. If two-step confirmation is disabled, the deletion proceeds without password verification. Additionally, a confirmation modal has been integrated into the database view to prompt users before deletion, enhancing the safety of this critical operation.
2025-03-12 16:33:35 +01:00
Andras Bacsai
fa619550c2 fix(database): correct container name generation for service databases 2025-03-12 16:33:00 +01:00
Andras Bacsai
8c1cc62f46
Merge branch 'next' into fix/wrong-container-name-for-database-proxy 2025-03-12 15:41:08 +01:00
Andras Bacsai
a7318c2d77 fix(domain): dispatch refreshStatus event after successful domain update 2025-03-12 15:37:06 +01:00
Andras Bacsai
f73c74bd44 feat(github-source): Enhance GitHub App configuration with manual and private key support
- Add support for manual GitHub App configuration
- Introduce private key selection for GitHub Apps
- Enable editing of previously disabled GitHub App fields
- Add error handling for permission checks
- Implement a manual GitHub App creation method
2025-03-11 14:15:22 +01:00
Andras Bacsai
337e12f5c6
Merge pull request #5245 from janwiebe-jump/fix-gitea
Gitea webhook sends action synchronized
2025-03-11 10:21:56 +01:00
Andras Bacsai
e7e0cb6666
Merge pull request #5162 from notm1ke/main
feat(oauth): Add support for configuring and passing hd parameter to Google
2025-03-10 19:25:18 +01:00
Andras Bacsai
c3d77e31b2 fix(database): Improve database type detection for Supabase Postgres images 2025-03-10 15:47:59 +01:00
Andras Bacsai
96cf9abef8 fix(api): docker compose based apps creationg through api 2025-03-10 11:18:14 +01:00
Andras Bacsai
1909865a33 refactor(billing): Enhance Stripe subscription status handling and notifications 2025-03-01 12:43:21 +01:00
Andras Bacsai
07cbec7ddc feat(billing): Add Stripe past due subscription status tracking 2025-03-01 12:43:12 +01:00
Andras Bacsai
3169803259 fix(billing): Restrict Stripe subscription status update to 'active' only 2025-03-01 12:10:28 +01:00
Andras Bacsai
5ac43fd426 fix(billing): Handle 'past_due' subscription status in Stripe processing 2025-02-28 14:41:54 +01:00
Andras Bacsai
1c21652d5d fix(core): Improve label generation and merging for applications and services 2025-02-28 12:44:20 +01:00
Andras Bacsai
fb3f5e0a3e fix(core): Clean up unnecessary files during application image build 2025-02-28 11:23:54 +01:00
Andras Bacsai
2f826c56e8 fix(core): Adding a new server should not try to make the default docker network 2025-02-28 11:23:08 +01:00
janwiebe-jump
37553e79b7
Gitea webhook sends action synchronized 2025-02-27 17:25:33 +01:00
Andras Bacsai
3f62225ec3 refactor(scheduled-tasks): Improve scheduled task creation and management 2025-02-27 13:26:35 +01:00
Andras Bacsai
1e28cf56ac fix(ui): Correct redirect routes after task deletion 2025-02-27 13:26:24 +01:00
Andras Bacsai
dea125f679 refactor(notifications): Improve transactional email settings handling
- Replace `! $type` checks with `blank($type)` for consistency
- Modify email settings configuration to handle null/disabled states
- Ensure proper fallback and configuration of email providers
2025-02-27 12:56:37 +01:00
Andras Bacsai
f98c58a0a3 fix(ui): Restrict service retrieval to current team 2025-02-27 12:17:23 +01:00
Andras Bacsai
4e38872f71 fix(notifications): Correct environment URL path in application notifications 2025-02-27 11:56:39 +01:00
Andras Bacsai
27e4882d57 feat(core): You can validate compose files with docker compose config
fix(core): labels are now accepted with both compose styles
refactor: remove lots of ray's
2025-02-27 11:29:04 +01:00
Andras Bacsai
359806472b fix(ui): Set default SMTP encryption to starttls 2025-02-27 10:08:34 +01:00
Andras Bacsai
40ad118492 fix(core): add server functionality check before dispatching container status 2025-02-22 12:51:22 +01:00
peaklabs-dev
225f24e650
chore: improve code quality suggested by code rabbit 2025-02-19 18:04:58 +01:00
🏔️ Peak
9557957f18
Merge branch 'next' into feat-db-ssl 2025-02-19 17:57:59 +01:00
Gauthier A.
0d12b8296e fix wrong database container name + code simplification 2025-02-19 00:05:46 +01:00
Andras Bacsai
65b925252c feat(core): prevent using servers with existing resources as build servers 2025-02-18 16:44:16 +01:00
Andras Bacsai
372b064dba fix(core): improve server selection error handling in Docker component 2025-02-18 16:44:05 +01:00
Andras Bacsai
6e802f43ba fix(core): update service status refresh event handling 2025-02-17 09:52:18 +01:00
Mike M
4a0cab8be3 Added support for passing hd parameter to Google via existing tenant column in oauth_settings 2025-02-16 16:44:22 -08:00
Andras Bacsai
694b0ac249 feat(core): add error logging and cron parsing to docker/server schedules 2025-02-15 13:21:23 +01:00
Andras Bacsai
b53e289bcd fix(core): improve connection testing with dynamic disk configuration for s3 backups 2025-02-13 10:07:58 +01:00
Andras Bacsai
be1742a85c fix(s3-storage): optimize team admin notification query 2025-02-13 09:55:24 +01:00
Andras Bacsai
a25e2072d3 fix(deployment): improve server selection for deployment cancellation
- Add fallback for build server and deployment server selection
- Use `ownedByCurrentTeam()` scope when finding servers
- Handle cases where server IDs might be null
2025-02-12 10:51:26 +01:00
Andras Bacsai
619a42b11a
Merge pull request #4771 from lucienbl/next
fix: pull latest image from registry when using build server
2025-02-12 10:31:38 +01:00
peaklabs-dev
f288852753
fix(notification): always send SSL notifications 2025-02-11 20:55:33 +01:00
peaklabs-dev
d74c578a4a
fix(ssl): add --tls arg to DrangflyDB 2025-02-11 20:34:45 +01:00
peaklabs-dev
4fdd5679c9
fix(ui): enable SSL is not working correctly for KeyDB 2025-02-11 20:18:42 +01:00
peaklabs-dev
0a738e6bff
fix(ssl): KeyDB port and caCert args are missing 2025-02-11 20:18:19 +01:00
🏔️ Peak
43adb74755
Merge branch 'next' into feat-db-ssl 2025-02-11 17:41:45 +01:00
🏔️ Peak
e73c9b5f98
fix: system-wide GitHub apps (#5114)
- fix(ui): system-wide GitHub Apps are not shown in the create a new Application dialog
- fix: query logic error that shows all system-wide apps, regardless of whether they are public or private.
- fix: clicking on a system-wide GitHub app from a team other than the one that created it resulted in a 404 error.
2025-02-11 17:07:57 +01:00
Gary Tou
9f61672cb3
feat(slack): Show message title in notification previews (#5063) 2025-02-11 16:31:37 +01:00
Gary Tou
5528212b41
fix(slack): Notification settings URL in HighDiskUsage message (#5071) 2025-02-11 16:27:48 +01:00
peaklabs-dev
268fca3477
feat: SSL notification 2025-02-10 21:31:31 +01:00
peaklabs-dev
3e95387e10
Full: SSL Support for KeyDB 2025-02-10 21:29:45 +01:00
peaklabs-dev
90e681e24b
feat: Full SSL support for DrangonflyDB 2025-02-10 21:29:20 +01:00
peaklabs-dev
4547647e98
feat(ssl): improve Redis and remove modes 2025-02-10 19:23:39 +01:00
peaklabs-dev
6b6a9f57f3
fix(ui): remove unused mode for MongoDB 2025-02-10 15:26:05 +01:00
peaklabs-dev
5c12f7273e
feat: New mode implementation for MongoDB 2025-02-10 15:18:29 +01:00
peaklabs-dev
484fc5140b
fix(ssl): rename Redis mode to verify-ca as it is not verify-full 2025-02-08 16:43:15 +01:00
🏔️ Peak
c7840bdf1b
Merge branch 'next' into feat-db-ssl 2025-02-07 23:01:46 +01:00
peaklabs-dev
7b30b1aff1
feat(ssl): Full SSL support for Redis 2025-02-07 22:36:36 +01:00
peaklabs-dev
aad717d22f
fix(ssl): permission issue with MariDB cert and key and paths 2025-02-07 21:08:14 +01:00
peaklabs-dev
5b347f3d0f
fix(ssl): remove mode selection for MariaDB as it is not supported 2025-02-07 21:07:40 +01:00
peaklabs-dev
c1e7a5721e
fix(ssl): adjust ca paths for MySQL 2025-02-07 20:09:11 +01:00
peaklabs-dev
cd63760770
fix(ssl): when regenerating SSL certs the cert is not singed with the new CN 2025-02-07 19:36:52 +01:00
peaklabs-dev
a539bfd765
fix(ssl): server id 2025-02-07 18:45:12 +01:00
peaklabs-dev
bd33f65c0a
feat(ssl): new modes for MongoDB and get caCert and mountPath correctly 2025-02-07 18:31:41 +01:00
peaklabs-dev
62fb2c2877
fix(ssl): ger caCert and mountPath correctly 2025-02-07 18:30:07 +01:00
peaklabs-dev
836006798f
fix(ssl): remove caCert even if it is a folder by accident 2025-02-07 18:28:58 +01:00
peaklabs-dev
6a52f51851
fix(ssl): get caCert correctly 2025-02-07 18:27:30 +01:00
peaklabs-dev
69a6010839
fix(ssl): fix SSL regeneration to sign with CA cert and use mount path 2025-02-07 18:12:55 +01:00
peaklabs-dev
35cd9573ab
fix(ssl): add mount path to DB to fix regeneration of certs 2025-02-07 18:11:26 +01:00
peaklabs-dev
f92c170db1
feat(ssl): ability to create .pem certs and add clientAuth to extendedKeyUsage 2025-02-07 18:07:55 +01:00
peaklabs-dev
1a4c2c3dc9
fix(ssl): fix MariaDB and MySQL need CA cert 2025-02-06 15:14:57 +01:00
peaklabs-dev
6eabfd5c8e
feat/fix(ssl): fix some issues and improve ssl generation helper
- set default country to XX
- fix array handling of the subjectAlternativeNames so that no indexes are added or skipped
- add extendedKeyUsage to server certs to make them more secure
- add keyAgreement to server certs
- remove authorityKeyIdentifier as it caused the following issue: unable to get local issuer certificate
- removed duplicated distinguished_name entries
- improved formatting
2025-02-06 15:13:08 +01:00
peaklabs-dev
367eebc9fc
feat: Add full SSL support to MongoDB 2025-02-05 22:56:29 +01:00
peaklabs-dev
844f40188a
feat(ssl): Add SSL relationships to all DBs 2025-02-05 22:19:13 +01:00
peaklabs-dev
852be5fd93
feat(ssl): check for SSL renewal twice daily 2025-02-05 22:11:10 +01:00
peaklabs-dev
806d9af569
feat(ssl): improve SSL generation and security a lot
- rename some variables for better clarity
- format subjectAltNames correctly
- setup extensions more securely and improve them a lot
- use finally block to remove tempConfig
2025-02-05 22:09:37 +01:00
peaklabs-dev
951a454cbc
fix(ssl): regenerating certs for a specific DB
- fix: add mount path to make file mounts work correctly
- fix: get CA cert of the server not some random cert
2025-02-05 21:22:54 +01:00
peaklabs-dev
ba24630c28
fix(ssl): make sure when regenerating the CA cert it is not overwritten with a server cert 2025-02-05 21:13:30 +01:00
peaklabs-dev
7666cec462
fix(ssl): wrong ssl cert is loaded to the server and UI error when regenerating SSL 2025-02-05 21:10:37 +01:00
peaklabs-dev
1003858632
feat(ssl): Add openssl.conf to configure SSL extension properly 2025-02-05 18:06:38 +01:00
peaklabs-dev
a3c4f86e80
fix(ssl): do not remove SSL directory 2025-02-05 18:03:55 +01:00
peaklabs-dev
e81ed1aad8
feat(ssl): Add full MariaDB SSL support 2025-02-04 21:08:20 +01:00
peaklabs-dev
8f2b45c8b5
fix(ssl): use 1 instead of on for mysql 2025-02-04 20:52:23 +01:00
peaklabs-dev
80fc7c7b97
fix(ssl): use mountPath parameter not a hardcoded path 2025-02-04 18:31:09 +01:00
peaklabs-dev
3f857c6dac
feat(ssl): Add full MySQL SSL Support 2025-02-04 18:29:35 +01:00
peaklabs-dev
d6a39f2ed3
fix(ssl): always create ca crt on disk even if it is already there 2025-02-04 16:57:40 +01:00
peaklabs-dev
da148f93a6
feat(ssl): regenerate CA cert and all other certs logic 2025-02-04 16:55:36 +01:00
peaklabs-dev
3c62130e86
fix(ssl): improve SSL cert file mounts
- If SSL is disabled, delete the SSL crt and file mounts in the DB
- If SSL is disabled, delete the SSL folder
- If SSL is enabled, make sure the file mounts are added inside the helper
- remove old file mounts first to make sure the ssl crt content is always up to date and no duplicates are added
2025-02-04 16:34:24 +01:00
peaklabs-dev
6de76ca3f8
fix(deletion): fix DB deletion
- delete file mounts, volume mounts, envs, ssl crts, backups and detach tags correctly when deleting
2025-02-04 15:32:56 +01:00
Andras Bacsai
1c12cb98d9 feat(deployment): ensure private key is stored in filesystem before deployment 2025-02-04 15:23:28 +01:00
Andras Bacsai
d632eb2be9 refactor: simplify service start and restart workflows 2025-02-04 14:34:34 +01:00
Andras Bacsai
65a7610e48
Merge pull request #5029 from IARayan/IARayan-bitbucket-preview-deployment-fix-pullrequest-update
fix: Handle pullrequest:updated for reliable preview deployments
2025-02-04 13:55:16 +01:00
Andras Bacsai
186a3fc75b
Merge pull request #5038 from Vann-Dev/main
feat(api): add applications logs api
2025-02-04 13:33:30 +01:00
Andras Bacsai
8033a89dee fix(ui): simplify service templates loading logic 2025-02-04 13:30:27 +01:00
Andras Bacsai
fbb6ce3fce fix(core): enhance Slack deployment success notification formatting 2025-02-04 12:44:31 +01:00
Andras Bacsai
df129b83b3 fix(core): update Slack notification formatting to use bold correctly 2025-02-04 12:40:04 +01:00
Andras Bacsai
3da921e2ac fix(core): improve deployment failure Slack notification formatting 2025-02-04 12:36:39 +01:00
Vann
2e652490c1 chore: add openapi response 2025-02-04 02:56:15 +00:00
peaklabs-dev
fd5b7492f8
chore(ui): improve valid until handling 2025-02-03 23:21:09 +01:00
peaklabs-dev
53510928d2
feat(ssl): regenerate certificate and valid until UI 2025-02-03 22:54:31 +01:00
peaklabs-dev
cd335e9e00
fix(ssl): make sure the subjectAlternativeNames are unique and stored correctly 2025-02-03 22:42:15 +01:00
peaklabs-dev
2fbb898c89
feat(ssl): regenerate SSL certs job 2025-02-03 22:37:12 +01:00
peaklabs-dev
fba95c3729
fix(migration): store subjectAlternativeNames as a json array in the db 2025-02-03 22:35:00 +01:00
🏔️ Peak
f871c1067b
Merge branch 'next' into feat-db-ssl 2025-02-03 22:20:51 +01:00
peaklabs-dev
72a2f79d88
feat(ssl): improve ssl generation
- add default state and country
- rename parameters for more clarity
- set subjectAltName
- delete old certificate before creating new one
- Set CN and subjectAltNames in DB for automatic renewal
2025-02-03 22:11:29 +01:00
peaklabs-dev
9d9fbd6859
feat(databases): add CA SSL crt location to Postgres URLs 2025-02-03 22:06:53 +01:00
peaklabs-dev
498bf04559
feat(migration): add CN and alternative names to DB 2025-02-03 22:05:32 +01:00
peaklabs-dev
5f357e3d92
fix(database): fix volume and file mounts and naming
- fix: Volume and file mounts are unmounted if there are more than 1
- rename the crt and key to server key and crt to follow best practices
- move crt and key to a more standardized location
2025-02-03 22:03:45 +01:00
Andras Bacsai
f4575e531f fix(backup): escape special characters in database backup commands 2025-02-03 21:49:13 +01:00
peaklabs-dev
a1e650e699
chore: rename ca crt folder to ssl 2025-02-03 21:42:28 +01:00
Andras Bacsai
c45c64a1a1 fix(ui): always redirect to dashboard after team switch 2025-02-03 21:38:40 +01:00
Andras Bacsai
035db67180
Merge pull request #5036 from sistracia/next
fix(api): domain check when updating domain
2025-02-03 21:28:42 +01:00
Andras Bacsai
1e9a4aa5b6 fix(core): remove --remove-orphans flag from proxy startup command to prevent other proxy deletions (db) 2025-02-03 21:24:27 +01:00
Andras Bacsai
2a03544593 fix(core): stopping database is not disabling db proxy 2025-02-03 21:23:43 +01:00
Andras Bacsai
0ff7c468c8 fix(ui): skip SERVICE_FQDN and SERVICE_URL variables during update 2025-02-03 15:44:15 +01:00
Vann
11a5ec7c38 feat: add lines query parameter 2025-02-02 13:43:31 +00:00
Vann
7b60d76b77 feat: remove ansi color from log 2025-02-02 10:01:01 +00:00
sistracia
43e8d17197 fix(api): domain check when updating domain 2025-02-02 14:52:05 +07:00
Vann
e7988fc295 feat: container logs 2025-02-01 17:21:38 +00:00
Van-Dev
b1d6167e89
feat: add application api route 2025-02-01 22:09:59 +07:00
Islam Adel
2c80595e45
Merge branch 'next' into IARayan-bitbucket-preview-deployment-fix-pullrequest-update 2025-02-01 16:59:08 +02:00
Islam Adel
672a5d0bc5
fix: Handle pullrequest:updated for reliable preview deployments
The repo:push payload lacks the destination branch name, using push.changes.0.new.name instead. While sufficient for updates, this causes failures in preview deployments when a PR receives new commits—Coolify looks for git_branch in the applications table but finds the source branch instead.

By also processing pullrequest:updated, we ensure preview deployments remain in sync. However, this event triggers on various actions (e.g., PR title changes, reviewer updates), causing extra redeploys. Since Coolify doesn’t store commit hashes for preview deployments, handling these extra redeploys is our best workaround for Bitbucket.
2025-02-01 12:24:23 +02:00
peaklabs-dev
7406ee67c2
chore(ssl): rename CA cert to coolify-ca.crt because of conflicts 2025-01-31 18:27:20 +01:00
Andras Bacsai
83f0f9fca4 fix(core): improve public repository URL parsing for branch and base directory 2025-01-31 18:17:00 +01:00
peaklabs-dev
85c777d2a4
feat(ssl): use new improved helper for SSL generation
- use CA cert and key for SSL cert generation
- remove unused parameters
- add a few more echo with log output
2025-01-31 13:56:20 +01:00
peaklabs-dev
02475c5232
feat(ssl): improve SSL helper
- improve function parameters
- set default validity to 1 year as resources need to be manually restarted to use the new certificates
- use the CA cert to sign certificates
2025-01-31 13:37:34 +01:00
peaklabs-dev
34216af497
fix(db): SSL certificates table and model
- server_id is a foreign id
- server_id must be unique as each server can only have 1 CA cert
- resource_id must be unique as each resource can only have 1 SSL cert
2025-01-31 12:35:34 +01:00
peaklabs-dev
0915303769
feat(ssl): Add Coolify CA Certificate when adding a new server 2025-01-31 12:27:29 +01:00
peaklabs-dev
e1245f49f1
fix(ui): select component should not always uses title case 2025-01-31 11:57:30 +01:00
peaklabs-dev
34188450eb
feat(ssl): improve SSL helper
- improve security by making certificates valid for only 90 days instead of 10 years
- add SubjectAltName
- remove unnecessary parameters
- use carbon immutable to make sure expiration date stays the same
2025-01-30 19:52:21 +01:00
peaklabs-dev
d280f11b6b
feat(ssl): migrate to ECCcertificates using secp521r1
- Replace RSA 4096 with ECDSA secp521r1 for stronger security (256-bit vs 112-bit)
- Faster certificate generation (3-4x speed improvement)
- 75% smaller key sizes (0.8KB vs 3.2KB) improves storage and transmission
2025-01-30 19:21:18 +01:00
peaklabs-dev
546001890c
chore(ssl): improve code in ssl helper 2025-01-30 14:37:12 +01:00
peaklabs-dev
3632f29af8
feat(ssl): ssl generation helper 2025-01-30 14:17:12 +01:00
peaklabs-dev
2ac9147532
chore(migration): remove unused columns 2025-01-30 14:16:52 +01:00
peaklabs-dev
429453af36
fix(ui): make sure file mounts do not showing the encrypted values 2025-01-30 14:16:27 +01:00
peaklabs-dev
9f9349925a
fix(ssl): permission of ssl crt and key inside the container 2025-01-30 12:58:48 +01:00
peaklabs-dev
b124904245
feat(db): setup ssl during Postgres start
- create ssl directory
- create a new certificate if one does not already exist
- add the certificates to the file store so that they are created as file mounts
- add SSL startup commands
2025-01-29 13:30:45 +01:00
peaklabs-dev
92a4b5fce7
feat(db): add ssl mode to Postgres URLs 2025-01-29 13:28:42 +01:00
peaklabs-dev
875d1d49bb
feat(ui): Add ssl settings to Postgres ui 2025-01-29 13:25:05 +01:00
peaklabs-dev
3f582a1ea4
feat(migration): Add ssl_certificates table and model 2025-01-29 13:03:13 +01:00
Andras Bacsai
a764a07e7e revert: remove Cloudflare async tag attributes 2025-01-28 14:38:55 +01:00
Andras Bacsai
98a9985dce feat(vite): add Cloudflare async script and style tag attributes 2025-01-28 14:30:11 +01:00
Andras Bacsai
55fb4e5d20
Merge pull request #4945 from nktnet1/feat-env-coolify-resource-uuid
feat(env): added COOLIFY_RESOURCE_UUID environment variable
2025-01-28 13:46:17 +01:00
Andras Bacsai
e9fd2d8d6f feat(core): add dynamic label reset for application settings 2025-01-28 13:38:26 +01:00
Andras Bacsai
1ec15af1ad fix(database): adjust MongoDB restore command and import view styling 2025-01-28 12:41:22 +01:00
Andras Bacsai
d8877884d7
Merge pull request #4933 from nktnet1/fix-coolify-env-quotes
fix: remove quotes in COOLIFY_CONTAINER_NAME
2025-01-28 11:24:19 +01:00
Andras Bacsai
cd0320f392
Merge pull request #4938 from hederson/fix-swarm-proxy
Fix swarm proxy and detach param
2025-01-28 11:11:56 +01:00
Andras Bacsai
e049559e53 fix(database): detect more postgres database image types 2025-01-28 11:05:50 +01:00
Andras Bacsai
8f1bde2534 fix(core): check cron expression on save 2025-01-28 11:01:50 +01:00
Andras Bacsai
497a7ac15a
Merge pull request #4990 from esarbanis/cron-validation-on-update
fix: validate cron expression in Scheduled Task update
2025-01-28 11:00:53 +01:00
Andras Bacsai
bfe4200012 fix: cleanup old scheduled_task_executions 2025-01-28 10:19:41 +01:00
Efthymis Sarmpanis
01b9cbdfea fix: validate cron expression in Scheduled Task update 2025-01-27 22:50:54 +02:00
Andras Bacsai
fddaf9134d fix: disable certain parts if readonly label is turned off 2025-01-27 14:05:18 +01:00
peaklabs-dev
d5504ea546
refactor(s3): improve S3 bucket endpoint formatting
- remove the bucket name from the DigitalOcean endpoint
- always add https in front if it is not http or already https
2025-01-25 23:44:12 +01:00
peaklabs-dev
12c7ee2879
fix(s3): DigitalOcean storage buckets do not work 2025-01-25 23:40:40 +01:00
peaklabs-dev
91d90ccb6c
fix(ui): Cloudflare tunnel configuration should be an info, not a warning 2025-01-24 20:02:31 +01:00
Khiet Tam Nguyen
a55d1996d7
feat(env): added COOLIFY_RESOURCE_UUID environment variable 2025-01-24 22:04:34 +11:00
peaklabs-dev
8b6b1b6a9d
fix(storage): Hetzner storage buckets not working
- fix: Hetzner buckets do not work for backups
- refactor: removed special handling for Hetzner as it is no longer needed
2025-01-23 18:51:24 +01:00
Hederson Boechat
071cabdc31 fix(proxy) update traefik proxy config for docker swarm 2025-01-23 11:57:34 -03:00
peaklabs-dev
ec9f8de873
fix(labels): generate labels when they are empty not when they are already generated 2025-01-23 14:57:18 +01:00
peaklabs-dev
cc640ad710
fix(labels): docker labels do not generated correctly 2025-01-23 12:42:53 +01:00
peaklabs-dev
09d64d4bf6
feat(terminal): show terminal unavailable if the container does not have a shell on the global terminal UI 2025-01-23 11:51:01 +01:00
peaklabs-dev
007e291bef
fix(terminal): terminal shows that it is not available, even though it is 2025-01-23 11:50:06 +01:00
Khiet Tam Nguyen
c4bf91e5b4
fix: remove quotes in COOLIFY_CONTAINER_NAME 2025-01-23 13:08:31 +11:00
peaklabs-dev
3f2f1cf966
chore(core): EnvironmentVariable Model now extends BaseModel to remove duplicated code 2025-01-22 20:14:44 +01:00
peaklabs-dev
9f3c6b4b76
fix(env): shared variables can not be updated 2025-01-22 17:02:11 +01:00
Andras Bacsai
c3c032ebbd fix(core): update environment variable generation logic in ApplicationDeploymentJob to handle different build packs 2025-01-22 15:13:40 +01:00
Andras Bacsai
bae8b9a938 feat(core): add SOURCE_COMMIT variable to build environment in ApplicationDeploymentJob 2025-01-22 15:01:48 +01:00
Andras Bacsai
3cf21d440e fix(core): correct spelling of 'resourable' to 'resourceable' in Nixpacks configuration for ApplicationDeploymentJob 2025-01-22 14:16:48 +01:00
Andras Bacsai
fda1fdc435 fix(core): update application_id references to resourable_id and resourable_type for Nixpacks configuration 2025-01-22 14:15:42 +01:00
Andras Bacsai
52a38f238b fix(redis): update environment variable keys from standalone_redis_id to resourceable_id 2025-01-22 11:54:53 +01:00
peaklabs-dev
1799081ebd
fix(parser): resource URL should only be parsed if there is one 2025-01-21 18:55:07 +01:00
peaklabs-dev
31992f4d02
fix(ui):show error on terminal if container has no shell (bash/sh) 2025-01-21 18:36:38 +01:00
peaklabs-dev
a230a42599
fix(email): transactional email sending 2025-01-21 14:53:44 +01:00
Andras Bacsai
4b74ca56c3 feat(core): wip version of coolify.json 2025-01-21 14:09:12 +01:00
Andras Bacsai
7e58cb9125 fix: load service templates on cloud 2025-01-21 13:39:53 +01:00
Andras Bacsai
e83164e537 fix: envs with special chars during build 2025-01-21 13:05:20 +01:00
Andras Bacsai
3bc85b1a8c fix: validate private key through API
feat: able to add base64 encoded private key, not just oneline
2025-01-20 13:59:02 +01:00
Andras Bacsai
c891102db6 fix: add public key attribute to privatekey model 2025-01-20 13:59:02 +01:00
Andras Bacsai
57f61d4589 fix: docker image parser 2025-01-20 13:59:02 +01:00