Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v4.0.0-beta.381 #4598

Open
wants to merge 277 commits into
base: main
Choose a base branch
from
Open

v4.0.0-beta.381 #4598

wants to merge 277 commits into from

Conversation

andrasbacsai
Copy link
Member

@andrasbacsai andrasbacsai commented Dec 16, 2024

Changes

  • feat/fix: able to import full db backups for pg/mysql/mariadb
  • feat: restore backup from server file
  • feat: add infomaniak oauth
  • feat: Added a disk usage check frequency setting
  • feat: log horizon worker name to app deployment jobs.
  • feat: add is_coolify_host to the server API responses.
  • feat: Some new labels on all containers:
    • coolify.resourceName, coolify.serviceName, coolify.projectName, coolify.environementName
  • feat: New URL structure for better performance and fewer DB queries
  • feat: Docker volume data can optionally be cloned alongside the resource (so it is a true full clone of the resource, everything is exactly the same (except the name ofc)) --> Disabled it for now, see reasons: fix/feat: Improves Cloning #4777 (comment).
  • feat: Retention Options (whichever limit is reached first will trigger the cleanup):
    • Number of backups to keep -> A number of backups to keep
    • Days to keep backups -> A number of days to keep backups
    • Maximum storage (GB) -> A number of GB or decimal of maximum allowed storage for this backup job
  • feat: add backup retention days, backup amount and max allowed storage to S3
  • feat: add backup retention days and max allowed storage to locally stored backups
  • feat: when deleting a backup schedule you can now select to delete all backups form S3 as well
  • feat: when deleting a single backup you can now select to delete the backup form S3 as well
  • feat: New backup retention UI:
image
  • feat: Multi-delete on S3 and locally stored backups -> Now multiple backup files and backup executions are deleted together in parallel for improved performance and faster executions of deletion...
  • fix: only call removeOldBackups function in the DatabaseBackupJob.php if the backup is completed and successful, this caused problems before
  • fix: delete backup folder and parent folder if folders are empty when deleting local backups to cleanup unused folders
  • fix: Do not remove executions from DB until both S3 and local backups have been deleted and successfully processed otherwise backups will never be deleted from s3.
  • fix: All routes now use /environment/{environment_uuid} instead of the environment name -

    This helps because we can now use any character in environment names instead of being limited to URL save characters. Also, all other URLs are constructed with the uuid way, so we should do it consistently everywhere.

  • fix: Nixpacks predefined variables are now used as build-args and could be overwritten from the defined env variables in Coolify.
  • fix: Use local monaco-editor and not cloudflare cdn based (that's why we have +56K changed lines).
  • fix: use local dropzonejs
  • fix: Always use Docker cleanup frequency no matter if threshold or force cleanup is enabled
  • fix: disable copy button if the context is not secure (http)
  • fix: cloning resource name + volume names
  • fix: When having multiple Postgres init scripts, saving a change to one init script would delete all other init scripts.
  • fix: Changing the file name of an existing init script would create a new init script instead of renaming the file.
  • fix: Deleting an init script does not remove it form the server.
  • fix: Remove custom-postgres.conf if input is empty or null as the file is not needed on the server anymore
  • fix: some UI fixes
  • fix: API - Projects & Applications endpoints
  • fix: modal closing logic
  • fix: increase default php memory limit
  • fix: Penpot healthchecks
  • fix: Nocodb healthcheck
  • fix: Supabase template
  • fix: trigger with external db
  • fix: make DB public for supabase
  • fix: CSRF bug for labelstudio
  • fix: better cloud jobs handling.
  • fix: add lower timeout (ssh,docker) to jobs which are checking the servers, because it could cause problems if high number of jobs are running.
  • fix: instance wide GitHub apps are not available on other teams other then the source team
  • fix: Undefined variable $fs_path error on file mounts for databases
  • fix: SQLSTATE[42703]: Undefined column: 7 ERROR: column "additional_servers_count" of relation "applications" does not exist
  • fix: exclude computed count properties (additional_servers_count, additional_networks_count) loaded by global scope to prevent errors
  • fix: remove auto-generated properties (id, created_at and updated_at ) from replicate as that caused issues
  • fix: cloning a service to a separate server. To be able to clone a service to a new server we need to set the server_id to the DB as well, otherwise it will be cloned on the same server.
  • fix: volume naming after cloning
  • fix: project/ environment level cloning and also fixed resource level cloning (same fixes described below for both)
  • fix: Application cloning:
    • fix: disable auto-generated of URLs and labels if read-only labels is false.
    • fix: labels where not auto-generated for CloneMe (project / environment level cloning) if read-only labels is true, now they are generated again
    • fix: some settings get lost when cloning Applications because we need to clone the row in the application_settings table as well
    • fix: clone file and directory mounts
    • fix: clone tags
    • fix: clone scheduled tasks
    • fix: clone preview deployment settings
  • fix: Databases cloning:
    • fix: clone tags
    • fix: clone volumes
    • fix: clone file and directory mounts
    • fix: clone backup schedules
  • fix: Services cloning:
    • fix: clone environment variables
    • fix: clone tags
    • fix: clone scheduled task
    • fix: clone volumes
    • fix: clone file and directory mounts
    • fix: clone backup schedules for service databases
  • fix: for read-only labels, a read-only Monaco editor is displayed
  • chore: package updates.
  • chore: Refactored environment variable relationships
  • chore: Refactored a lot of DB queries to improve performance
  • chore: Upgraded all dependencies
  • chore: switched up read-only labels checkbox to make more sense -> Read-only labels are now the default and mean that they are read-only (not editable) and Coolify will autogenerate the labels, if you uncheck read-only you can edit them and Coolify will not autogenerate any labels.
  • refactor: refactored the UI and DB to make it easier to use - 0 now means unlimited retention (so a value is now required for retention).
  • refactor: simplified some code
  • refactor: refactored some duplicated code
  • refactor: refactored code to be more centralized in one location
  • chore: use CamleCase everywhere for new functions
  • chore: renamed number_of_backups_locally to database_backup_retention_amount_locally

New Services

  • Cockpit CMS
  • Teable
  • nodebb
  • calibre-web
  • actual-budget
  • rallly
  • Gotenberg

Issues

peaklabs-dev and others added 30 commits December 4, 2024 13:15
The service was called `radarr` instead of `fileflows`
Fix typo in fileflows.yaml
API was returning 500 instead of 404 due to attempting to load environments for a non-existent project
when $useBuildServer is set, $application->settings model does not yet exist. This change ensures the models exist before accessing them.
peaklabs-dev and others added 30 commits January 13, 2025 16:37
- use the new removeOldBackups function
- only call removeOldBackups function when the backup is completed and also only if the backup is successful
- fix: Delete folder and parent folder if folders are empty when deleting local backups.
- fix: Do not remove executions from DB until both S3 and local backups have been deleted and successfully processed otherwise backups will never be deleted from s3.
- fix: Server ID could be null
- feat: add storage retention to local storage as well
- fix: UI input for max storage now allows exact decimals so MB input is now also possible
- fix: Database column is now decimal instead of integer
- fix: variable naming of storage check no longer overwrites $backup - renamed it to $backupExecution
Feat: Improve backup retention (for database backups)
feat: template for Gotenberg, a Docker-powered stateless API for PDF files
fix: gotenberg template healthcheck
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment