Releases: interuss/dss
v0.21.0-rc1
Release Notes for v0.21.0-rc1
Mandatory migration tasks
- Ensure RID schema has been migrated to version 4.0.0 since the datastore doesn't fallback anymore on the default database. If that not the case, please use the previous release and upgrade to schema 4.0.0 first.
- The RID cronjob has been moved to an external command, see #1261
- If you want to continue to cleanup old entries regularly, run the evict command as needed:
- Running the following command each 30 minutes will be equivalent to the previous situation
db-manager evict --rid_isa=True --rid_sub=True --rid_ttl=30m --scd_oir=False --scd_sub=False
- Helm charts, tanka files and terraform files has been updated with defaults that run RID cleanup as before and disable SCD cleanup
- Please review new parameters in each module specific documentation and update them as needed.
- If you want to continue to cleanup old entries regularly, run the evict command as needed:
- The test certificate
build/test-certs/auth2
public and private keys have been changed, see #1178. Please update your configuration if you used that public key. - A new
aux
store has been added, which implies a new migration job usingschema-manager
. If you ran migration jobs manually, make sure you run the migration for this new schema. Schemas are stored in theaux_
folder. - Upgrade terraform version to 12.2 if lower.
- The terraform variable
crdb_hostname_suffix
has been renamed todb_hostname_suffix
, please update your configuration accordingly. - The terraform variable
crdb_locality
has been renamed tolocality
and is now mandatory, please update your configuration accordingly. public_endpoint
parameter has been added as a mandatory argument. Please set it to the public endpoint of your DSS instance in order to register this instance as a participant in the pool information.- A immutable field has been changed in terraform / tanka
- Please remove any
*-schema-manager-*
jobs before upgrading chart / applying tanka configuration. - The job is only used for migrations and can be removed.
- Please remove any
Optional migration tasks
- Datastores parameters have been renamed to be more vendor-agnostic. The old ones have been deprecated but will continue to work for the time being.
- If you call the dss executable directly, you will need to update parameters as below.
- If you use helm/tanka to deploy the DSS, parameters have been renamed internally, you don't have to do anything.
Old parameter name | New parameter name | Description |
---|---|---|
cockroach_application_name | datastore_application_name | application name for tagging the connection to the database |
cockroach_db_name | datastore_db_name | database name to connect to |
cockroach_host | datastore_host | database host to connect to |
cockroach_port | datastore_port | database port to connect to |
cockroach_ssl_mode | datastore_ssl_mode | database sslmode |
cockroach_ssl_dir | datastore_ssl_dir | directory to ssl certificates. Must contain files: ca.crt, client..crt, client..key |
cockroach_user | datastore_user | database user to authenticate as |
max_open_conns | datastore_max_open_conns | maximum number of open connections to the database, default is 4 |
max_conn_idle_secs | datastore_max_conn_idle_secs | maximum amount of time in seconds a connection may be idle, default is 30 seconds |
cockroach_max_retries | datastore_max_retries | maximum number of attempts to retry a query in case of contention, default is 100 |
Important information
- Yugabyte support has been added to terraform, tanka and helm files. You're encouraged to use Yugabyte for new DSS Pool instances.
- The RID evict task is now deleting all expired entries instead of stopping after the first one, see #1253.
- The initial run may take longer than expected when deleting entries that may have been accumulating.
- Published images are now signed with sigstore, see how to verify it.
- Deployment documentation has been moved to a new website instead of various README in the repository tree.
Minimal database schema version
Schema | CockroachDB | Yugabyte |
---|---|---|
AUX | 1.0.0 | 1.0.0 |
RID | 4.0.0 | 1.0.1 |
SCD | 3.2.0 | 1.0.1 |
Validation
USS qualifier version: v0.21.0
Test configuration and report: see attachments
What's Changed
- Upgrade go version to 1.24; Upgrade golint-ci to 2.1.5; Fix linting issues; Generate new dummy keys for DummyOAuth by @mickmis in #1178
- Bump golang.org/x/crypto from 0.32.0 to 0.35.0 by @dependabot[bot] in #1173
- Bump golang.org/x/net from 0.33.0 to 0.38.0 by @dependabot[bot] in #1183
- [docs] Add DSS pool verification docs by @BenjaminPelletier in #1180
- [helm] Add basic support for yugabyte to helm charts by @the-glu in #1159
- [terraform-commons-dss] Better defaults for terraform-google-dss by @the-glu in #1187
- [yugabyte] certificates management by @the-glu in #1186
- [helm] Add TLS support on yugabyte by @the-glu in #1182
- [ci] extract unit & integration test coverage report by @Shastick in #1185
- [aux] Add CAs endpoint by @the-glu in #1194
- [ci] publish coverage data as an artifact for all master builds by @Shastick in #1193
- Yugabyte: Working GCP implementation by @the-glu in #1190
- [yugabyte] remove useless variable file by @the-glu in #1200
- [yugabyte] Working AWS implementation by @the-glu in #1191
- [yugabyte] Partially improve documentation by @the-glu in #1201
- [aux] Add DAR ID on yugabyte deployments by @the-glu in #1195
- [cmd] Add public endpoint flag by @the-glu in #1197
- [terraform] Fix cockroachdb condition by @the-glu in #1204
- [aux] Add store and basic pool instance informations by @the-glu in #1198
- [helm] Fix error with aux_ migration script by @the-glu in #1208
- [terraform] Rename crdb_hostname_suffix to db_hostname_suffix by @the-glu in #1203
- [terraform] Update example files for yugabyte by @the-glu in #1205
- Update Deprecated Terraform resources and set TF provider versions by @ZachHubbs in #1209
- [helm] Improve public endpoint setting with backward compatiblity by @the-glu in #1211
- [dss] sort cell ids in queries by @Shastick in #1112
- [tests] update monitoring image to latest release 0.16.0 by @Shastick in #1223
- [deploy] Move locality to a common variable and make it mandatory by @the-glu in #1212
- [tanka] Improve tanka configuration file to work with minikube by @the-glu in #1216
- [tanka] Add aux migrations by @the-glu in #1217
- [tanka] Make job uniques + add way for cleanup by @the-glu in #1218
- [tanka] Add public_endpoint argument by @the-glu in #1219
- [yugabyte] New pooling documentation by @the-glu in #1207
- [tanka] Add parameters to always enable schema manager by @the-glu in #1221
- [aux] Add heartbeat functionnality by @the-glu in #1213
- [tanka] Yugabyte, preparation by @the-glu in #1222
- [tanka] Yugabyte: base service and migrations by @the-glu in #1224
- [tanka] Yugabyte: add options to prepare for terraform output by @the-glu in #1227
- [tanka/terraform] Update terraform state to support latest tanka files, including yugabyte by...
v0.20.1
What's Changed
Deployment
- Update Deprecated Terraform resources and set TF provider versions by @ZachHubbs in #1209
New Contributors
- @ZachHubbs made their first contribution in #1209
Full Changelog: interuss/dss/v0.20.0...interuss/dss/v0.20.1
Required database schema versions
Schema | CockroachDB | Yugabyte |
---|---|---|
RID | 4.0.0 | 1.0.1 |
SCD | 3.2.0 | 1.0.1 |
AUX | N/A | N/A |
Validation
- USS qualifier version: v0.18.0
- Test configuration and report: see attachment
Known issues and remarks
DSS v0.20.1 doesn't support OVN Request, therefore it is expected that two tests have been skipped:(Edit: 29-08-2025) Skip was related to a USS qualifier misconfiguration. New test results have been attached. (v0.20.1-test-results-2.zip)Skipped: OVN Request Optional Extension to ASTM F3548-21
v0.20.0
What's Changed
DSS
- [yugabyte] SQL Migrations by @barroco in #1138
- [cleanup] Remove rid database v3 backward compatibility (RID schema version 4 is required after this commit) by @barroco in #1142
- Bump golang.org/x/net from 0.23.0 to 0.33.0 by @dependabot in #1145
- [yugabyte] Yugabyte compatible implementation by @barroco in #1143
- [yugabyte] Ensure notification_indexes are correctly mapped to subscriptions by @barroco in #1149
- Bump github.com/golang-jwt/jwt/v4 from 4.5.1 to 4.5.2 by @dependabot in #1152
- Fix for code scanning alert no. 2: Incorrect conversion between integer types by @BenjaminPelletier in #1147
- [aux] Add empty DSS instances endpoint by @BenjaminPelletier in #1174
- [aux] Add access to DAR ID via aux API by @BenjaminPelletier in #1177
Deployment
- [security] Clarify dumpRequests and set examples to false by @BenjaminPelletier in #1146
- [security] Bump github.com/go-jose/go-jose/v4 from 4.0.2 to 4.0.5 by @dependabot in #1148
- [tanka] Set default termination grace period for cockroachdb pod to 5 minutes by @callumdmay in #1151
- [docs] Move pooling.md into deploy/operations by @BenjaminPelletier in #1161
- [docs] Move troubleshooting into operations by @BenjaminPelletier in #1162
- [docs] Clarify documentation flow by @BenjaminPelletier in #1160
- [docs] Move monitoring services into operations by @BenjaminPelletier in #1163
- [docs] Fix image references by @barroco in #1164
- [docs] Fix broken links by @barroco in #1165
- [terraform] Pin python-hcl2 dependency by @barroco in #1166
- [terraform-aws] Unset default disk_size to use default value and allow backward compatibility by @barroco in #1168
- [terraform-aws] Switch to IRSA and upgrade aws-load-balancer-controller to 2.12 by @barroco in #1167
- Helm charts: add configurable imagePullPolicy by @the-glu in #1156
- Helm charts: add gitignore by @the-glu in #1157
- [minikube] Add minikube instructions and update helm charts to work with minikube by @the-glu in #1154
- [terraform-doc] Improve readability of terraform variables documentation by @barroco in #1172
- [terraform] Support Kubernetes up to 1.32 by @barroco in #1169
ℹ️ Migration instructions to Kubernetes 1.32
Others
- Enable CodeQL analysis by @BenjaminPelletier in #1144
New Contributors
- @callumdmay made their first contribution in #1151
- @the-glu made their first contribution in #1156
Full Changelog: interuss/dss/v0.19.0...interuss/dss/v0.20.0
Required database schema versions
Schema | CockroachDB | Yugabyte |
---|---|---|
RID | 4.0.0 | 1.0.1 |
SCD | 3.2.0 | 1.0.1 |
AUX | N/A | N/A |
Validation
- USS qualifier version: v0.18.0
- Test configuration and report: see attachment
Known issues and remarks
- Deployment tooling is outdated and fixed in version 0.20.1.
DSS v0.20.0 doesn't support OVN Request, therefore it is expected that two tests have been skipped:(Edit: 29-08-2025) Skip was related to a USS qualifier misconfiguration. New test results have been attached. (v0.20.0-test-results-2.zip)Skipped: OVN Request Optional Extension to ASTM F3548-21
v0.20.0-rc1
What's Changed
DSS
- [yugabyte] SQL Migrations by @barroco in #1138
- [cleanup] Remove rid database v3 backward compatibility (RID schema version 4 is required after this commit) by @barroco in #1142
- Bump golang.org/x/net from 0.23.0 to 0.33.0 by @dependabot in #1145
- [yugabyte] Yugabyte compatible implementation by @barroco in #1143
- [yugabyte] Ensure notification_indexes are correctly mapped to subscriptions by @barroco in #1149
- Bump github.com/golang-jwt/jwt/v4 from 4.5.1 to 4.5.2 by @dependabot in #1152
- Fix for code scanning alert no. 2: Incorrect conversion between integer types by @BenjaminPelletier in #1147
- [aux] Add empty DSS instances endpoint by @BenjaminPelletier in #1174
- [aux] Add access to DAR ID via aux API by @BenjaminPelletier in #1177
Deployment
- [security] Clarify dumpRequests and set examples to false by @BenjaminPelletier in #1146
- [security] Bump github.com/go-jose/go-jose/v4 from 4.0.2 to 4.0.5 by @dependabot in #1148
- [tanka] Set default termination grace period for cockroachdb pod to 5 minutes by @callumdmay in #1151
- [docs] Move pooling.md into deploy/operations by @BenjaminPelletier in #1161
- [docs] Move troubleshooting into operations by @BenjaminPelletier in #1162
- [docs] Clarify documentation flow by @BenjaminPelletier in #1160
- [docs] Move monitoring services into operations by @BenjaminPelletier in #1163
- [docs] Fix image references by @barroco in #1164
- [docs] Fix broken links by @barroco in #1165
- [terraform] Pin python-hcl2 dependency by @barroco in #1166
- [terraform-aws] Unset default disk_size to use default value and allow backward compatibility by @barroco in #1168
- [terraform-aws] Switch to IRSA and upgrade aws-load-balancer-controller to 2.12 by @barroco in #1167
- Helm charts: add configurable imagePullPolicy by @the-glu in #1156
- Helm charts: add gitignore by @the-glu in #1157
- [minikube] Add minikube instructions and update helm charts to work with minikube by @the-glu in #1154
- [terraform-doc] Improve readability of terraform variables documentation by @barroco in #1172
- [terraform] Support Kubernetes up to 1.32 by @barroco in #1169
ℹ️ Migration instructions to Kubernetes 1.32
Others
- Enable CodeQL analysis by @BenjaminPelletier in #1144
New Contributors
- @callumdmay made their first contribution in #1151
- @the-glu made their first contribution in #1156
Full Changelog: interuss/dss/v0.19.0...interuss/dss/v0.20.0-rc1
v0.19.0
What's Changed
DSS
- [dss] ridv2: group subscriptions to notify by their callback URL by @Shastick in #1105
- [dss] ridv1: group subscriptions to notify by their callback URL by @Shastick in #1106
- [scd/store] Remove unused store logger by @mickmis in #1114
- [interfaces/astm-utm-protocol] Target interuss/astm-utm-protocol repo as submodule and regen apis files by @mickmis in #1118
- [dss/RID] GetISA: optional forUpdate flag to allow for early locking by @Shastick in #1117
- [dss/SCD] early subscription lock for OIR deletions by @Shastick in #1113
- [scd] Enable USSs to request an OVN for operational intents by @mickmis in #1119
- Bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 by @dependabot in #1132
- [docker-compose] Simplify bootstrapping sequence of the local DSS infrastructure (requires docker v25+) by @barroco in #1136
- [crdb] Refactor cockroach package to prepare for Yugabyte compatible migration by @barroco in #1133
- [yugabyte] Add yugabyte to local dev docker-compose by @barroco in #1137
- Bump golang.org/x/crypto from 0.22.0 to 0.31.0 by @dependabot in #1141
Deployment
- [terraform/utils] Lint terraform variables generation by @ethangraham2001 in #1102
- [tanka] Consolidate service deployments to new deploy structure by @barroco in #1111
- [helm] Update schema-manager to use migrate subcommand in the helm chart by @barroco in #1129
- [terraform-aws] Pin aws-load-balancer-controller to v2.9 (helm chart: 1.9) by @barroco in #1128
Others
- [monitoring] Update monitoring to v0.11.1 by @barroco in #1125
- [ci] prober/qualifer: update monitoring image to 0.9.0 by @Shastick in #1123
- [ci] prober/qualifer: update monitoring image to 0.9.1 by @Shastick in #1124
- [releases] Add Release versions description by @barroco in #1126
- [cmd] Enable db-manager CLI to support subcommands by @mickmis in #1122
- [cmds][scd/store] Add 'db-manager scd-evict' subcommand enabling listing and deletion of expired SCD entities by @mickmis in #1116
- [cmd] Add warning log about performance impact in 'db-manager evict' by @mickmis in #1130
New Contributors
- @ethangraham2001 made their first contribution in #1102
Release validation note
Tests performed with monitoring v0.11.1 were successful. Tests performed with monitoring v0.14.1 failed on astm.f3411.v19.DSS0020 and astm.f3411.v22a.DSS0020. Manual test successfully validated the behaviour. Issue #monitoring:1013 has been captured to adjust the automatic check.
See detailed reports in attachment.
Full Changelog: interuss/dss/v0.18.0...interuss/dss/v0.19.0
v0.19.0-rc3
What's Changed
- Bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 by @dependabot in #1132
- [docker-compose] Simplify bootstrapping sequence of the local DSS infrastructure (requires docker v25+) by @barroco in #1136
- [crdb] Refactor cockroach package to prepare for Yugabyte compatible migration by @barroco in #1133
- [yugabyte] Add yugabyte to local dev docker-compose by @barroco in #1137
- Bump golang.org/x/crypto from 0.22.0 to 0.31.0 by @dependabot in #1141
Full Changelog: interuss/dss/v0.19.0-rc2...interuss/dss/v0.19.0-rc3
v0.19.0-rc2
What's Changed
- [helm] Update schema-manager to use migrate subcommand in the helm chart by @barroco in #1129
- [terraform-aws] Pin aws-load-balancer-controller to v2.9 (helm chart: 1.9) by @barroco in #1128
- [cmds][scd/store] Add 'db-manager scd-evict' subcommand enabling listing and deletion of expired SCD entities by @mickmis in #1116
- [cmd] Add warning log about performance impact in 'db-manager evict' by @mickmis in #1130
- [scd] Enable USSs to request an OVN for operational intents by @mickmis in #1119
Full Changelog: interuss/dss/v0.19.0-rc1...interuss/dss/v0.19.0-rc2
v0.19.0-rc1
What's Changed
DSS
- [dss] ridv2: group subscriptions to notify by their callback URL by @Shastick in #1105
- [dss] ridv1: group subscriptions to notify by their callback URL by @Shastick in #1106
- [scd/store] Remove unused store logger by @mickmis in #1114
- [interfaces/astm-utm-protocol] Target interuss/astm-utm-protocol repo as submodule and regen apis files by @mickmis in #1118
- [dss/RID] GetISA: optional forUpdate flag to allow for early locking by @Shastick in #1117
- [dss/SCD] early subscription lock for OIR deletions by @Shastick in #1113
Deployment
- [terraform/utils] Lint terraform variables generation by @ethangraham2001 in #1102
- [tanka] Consolidate service deployments to new deploy structure by @barroco in #1111
Others
- [monitoring] Update monitoring to v0.11.1 by @barroco in #1125
- [ci] prober/qualifer: update monitoring image to 0.9.0 by @Shastick in #1123
- [ci] prober/qualifer: update monitoring image to 0.9.1 by @Shastick in #1124
- [releases] Add Release versions description by @barroco in #1126
- [cmd] Enable db-manager CLI to support subcommands by @mickmis in #1122
New Contributors
- @ethangraham2001 made their first contribution in #1102
Full Changelog: interuss/dss/v0.18.0...interuss/dss/v0.19.0-rc1
v0.18.0
What's Changed
Database migration
- [deploy][scd/crdb] Add columns uss_requested_ovn and past_ovns to scd_operations table; Bump schema_version to v3.2.0 by @mickmis in #1095
⚠️ This version requires a database schema update. We strongly recommend to rehearse such operation on a non-productive environment first. The migration is backward compatible withv0.17.0
.- For Tanka, in
main.jsonnet
, updatedesired_scd_db_version
to3.2.0
. - For Helm, upgrading a deployed chart with this new version will automatically migrate the version of the schema to
3.2.0
.
- For Tanka, in
DSS
- [scd] factor out parameter validation against previous OIR by @Shastick in #1090
- [scd] oir upsert factor out key validation by @Shastick in #1091
- [scd] oir upsert: factor out determination of subscriptions to notify by @Shastick in #1092
- [scd] oir upsert: check uss base URL and if both subscription ID and implicit request are specified by @Shastick in #1097
- [scd] oir upsert: factor implicit subscription creation by @Shastick in #1094
- [scd] oir upsert: factor out building and validating of the OIR by @Shastick in #1099
- [scd] oir upsert: factor out extension and validation of existing subscription by @Shastick in #1098
- [scd] properly cleanup implicit sub on oir update by @Shastick in #1109
- [scd] Use scdmodels for OVN+VersionNumber and simplify 'version' variable flow by @mickmis in #1100
- [scd] Store past OVNs on operational intents upsert by @mickmis in #1096
Deployment
Full Changelog: interuss/dss/v0.17.0...interuss/dss/v0.18.0
v0.18.0-rc1
What's Changed
-rc*
suffix) to upgrade production instances.
Database migration
- [deploy][scd/crdb] Add columns uss_requested_ovn and past_ovns to scd_operations table; Bump schema_version to v3.2.0 by @mickmis in #1095
⚠️ This version requires a database schema update. Instructions will be provided for the stable release.
DSS
- [scd] factor out parameter validation against previous OIR by @Shastick in #1090
- [scd] oir upsert factor out key validation by @Shastick in #1091
- [scd] oir upsert: factor out determination of subscriptions to notify by @Shastick in #1092
- [scd] oir upsert: check uss base URL and if both subscription ID and implicit request are specified by @Shastick in #1097
- [scd] oir upsert: factor implicit subscription creation by @Shastick in #1094
- [scd] oir upsert: factor out building and validating of the OIR by @Shastick in #1099
- [scd] oir upsert: factor out extension and validation of existing subscription by @Shastick in #1098
- [scd] properly cleanup implicit sub on oir update by @Shastick in #1109
- [scd] Use scdmodels for OVN+VersionNumber and simplify 'version' variable flow by @mickmis in #1100
- [scd] Store past OVNs on operational intents upsert by @mickmis in #1096
Deployment
Full Changelog: interuss/dss/v0.17.0...interuss/dss/v0.18.0-rc1