Migrate 0.53

Migrate an existing instance

Before upgrading your CDS Instance:

Before upgrading

Organization

The version 0.52.0 introduced the notion of Organization in CDS for all authentication drivers. In 0.53.0, organizations are now mandatory so you need to add them before upgrading to 0.53.0.

[api.auth]
    allowedOrganizations = ["my-organization"]
    [api.auth.local]
      organization = "my-organization"
    [api.auth.github]
      organization = "my-organization"
    [api.auth.gitlab]
      organization = "my-organization"
    [api.auth.oidc]
      organization = "my-organization"      
    [api.auth.corporateSSO] # There is no organization in SSO configuration, as it's provided by the SSO itself
    [api.auth.ldap] # There is no organization in ldap configuration as it's provided by the company ldap field 
cdsctl admin organization add my-organization
cdsctl admin organization list
+--------------------------------------+-----------------+
|                  ID                  |      NAME       |
+--------------------------------------+-----------------+
| 47cc19b8-918e-4bc3-b291-b1cf1ba233ef | my-organization |
+--------------------------------------+-----------------+

cdsctl admin organization user-migrate my-organization

Upgrading to 0.53.0

This version contains changes on database table used to authenticate users, this will requires CDS to be stopped before the migration.

# The field enabled was renamed by signinEnabled in auth api.auth
[api.auth]
    [api.auth.local]
      signinEnabled = true
    [api.auth.github]
      signinEnabled = true
    [api.auth.gitlab]
      signinEnabled = true
    [api.auth.oidc]
      signinEnabled = true
    [api.auth.corporateSSO]
      signinEnabled = true
    [api.auth.ldap]
      signinEnabled = true

# The common configuration for auth drivers were moved to a new config section called drivers
[api.drivers]    
    [api.drivers.github]
      url = ""
      apiUrl = ""
      clientId = ""
      clientSecret = ""
    [api.drivers.gitlab]
      url = ""
      applicationID = ""
      secret = ""
    [api.drivers.oidc]
      ...
    [api.drivers.corporateSSO]
      ...
    [api.drivers.ldap]
      ...