ceterion Deployment Framework 2610: Package Deployment via HTTPS, Job API, and New Database

The ceterion Deployment Framework 2610 is now available. This first release since 2607 makes cDF cloud-ready: Packages and jobs can now be accessed via REST API over HTTPS, both for the ceterion Service Worker and for custom orchestration tools. Underlying this is a new database with run data stored in SQL Server and unique GUIDs for all objects.

Greater reach. Greater integration. Greater consistency.

Highlights

Package Provisioning via REST API: Cloud-Ready via HTTPS

Since version 2503, cDF's REST API has been expanding with every release; version 2604 introduced object-specific access for computer accounts, and version 2605 introduced object-bound API keys. With version 2610, the API now also delivers the packages themselves without requiring an SMB share.

  • api/assure-package checks whether a package is available as a ZIP file and automatically starts the creation process if necessary
  • Clear status feedback: unavailable (503), creating (202), error (500), ready (200)
  • api/get-package/<Guid> outputs the ZIP package as a data stream
  • Endpoints authenticate using their trusted computer account or an object-bound API key; with an API key, authentication is possible even without a domain connection.
  • The location for storing ZIP packages can be configured via PackagesZipRepository in the appsettings.json

Job API for Orchestration

New endpoints enable the execution of runs for the ceterion Service Worker and external orchestration tools.

  • api/collect-jobs Retrieves up to 100 upcoming runs; scheduled runs are retrieved only when they are due
  • Claimed runs are assigned to the account that requested them and cannot be claimed twice; unprocessed claims expire after 5 minutes.
  • api/set-jobstatus reports running, error or finished Back, including a description of the error via ErrorDetails
  • For recurring deployments, the next run is automatically created upon completion
  • api/get-jobstatus Returns the status of current and historical runs via GET or POST
  • New Role ApiServiceWorker supplements the existing API role model

New Database: Runs and Metadata in SQL Server

Run data and metadata are now stored in the database and form the basis for the new interfaces.

  • Storage mode for run data can be configured via DataStorage in the appsettings.json
  • The default is FilesAndDatabase, or DatabaseOnly or FilesOnly
  • Inventory data is automatically migrated upon first launch

Stable Object Identity via GUID

Every object and folder now has a GUID that remains unchanged throughout its entire lifecycle.

  • GUIDs are preserved when moving or renaming files; copies are assigned a new GUID
  • Existing objects and folders are automatically assigned a GUID when they are first launched
  • The change log references objects by GUID; the history remains uniquely traceable even after objects are moved
  • Bulk Moves no longer need to adjust change log entries and therefore run significantly faster

Further improvements

  • Bulk Move now triggers only one collective event instead of one event per object
  • API requests reliably return results instead of 404 errors even after an AppPool recycle, even with concurrent requests
  • Restoring the oldest backup no longer deletes the object; restores of scripts, script sets, and packages are logged in the change log
  • Simultaneous permission checks on folders are running smoothly
  • Closing the browser during a redirect no longer causes an unnecessary error in the Event Log
  • Canceling in the Content tab during installation works correctly; the installation sequence is marked as canceled
  • SQL installation script with parameters for DatabaseName, ApplicationLogin and SkipInitialSetup

Starting with version 2610, cDF delivers packages and jobs via an address rather than a share: this provides greater reach for distribution, greater integration with orchestration tools, and greater data consistency.