@scaleway/sdk-rdb 1.0.4 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,12 +7,13 @@ const jsonContentHeaders = {
7
7
  "Content-Type": "application/json; charset=utf-8"
8
8
  };
9
9
  class API extends sdkClient.API {
10
- /** Lists the available regions of the API. */
11
- static LOCALITIES = [
12
- "fr-par",
13
- "nl-ams",
14
- "pl-waw"
15
- ];
10
+ /**
11
+ * Locality of this API.
12
+ * type ∈ {'zone','region','global','unspecified'}
13
+ */
14
+ static LOCALITY = sdkClient.toApiLocality({
15
+ regions: ["fr-par", "nl-ams", "pl-waw"]
16
+ });
16
17
  pageOfListDatabaseEngines = (request = {}) => this.client.fetch(
17
18
  {
18
19
  method: "GET",
@@ -217,6 +218,7 @@ class API extends sdkClient.API {
217
218
  method: "GET",
218
219
  path: `/rdb/v1/regions/${sdkClient.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances`,
219
220
  urlParams: sdkClient.urlParams(
221
+ ["has_maintenances", request.hasMaintenances],
220
222
  ["name", request.name],
221
223
  ["order_by", request.orderBy],
222
224
  ["organization_id", request.organizationId],
@@ -1,5 +1,5 @@
1
1
  import { API as ParentAPI } from '@scaleway/sdk-client';
2
- import type { Region as ScwRegion, WaitForOptions } from '@scaleway/sdk-client';
2
+ import type { ApiLocality, WaitForOptions } from '@scaleway/sdk-client';
3
3
  import type { AddInstanceACLRulesRequest, AddInstanceACLRulesResponse, AddInstanceSettingsRequest, AddInstanceSettingsResponse, ApplyInstanceMaintenanceRequest, CloneInstanceRequest, CreateDatabaseBackupRequest, CreateDatabaseRequest, CreateEndpointRequest, CreateInstanceFromSnapshotRequest, CreateInstanceRequest, CreateReadReplicaEndpointRequest, CreateReadReplicaRequest, CreateSnapshotRequest, CreateUserRequest, Database, DatabaseBackup, DeleteDatabaseBackupRequest, DeleteDatabaseRequest, DeleteEndpointRequest, DeleteInstanceACLRulesRequest, DeleteInstanceACLRulesResponse, DeleteInstanceRequest, DeleteInstanceSettingsRequest, DeleteInstanceSettingsResponse, DeleteReadReplicaRequest, DeleteSnapshotRequest, DeleteUserRequest, Endpoint, ExportDatabaseBackupRequest, GetDatabaseBackupRequest, GetEndpointRequest, GetInstanceCertificateRequest, GetInstanceLogRequest, GetInstanceMetricsRequest, GetInstanceRequest, GetReadReplicaRequest, GetSnapshotRequest, Instance, InstanceLog, InstanceMetrics, ListDatabaseBackupsRequest, ListDatabaseBackupsResponse, ListDatabaseEnginesRequest, ListDatabaseEnginesResponse, ListDatabasesRequest, ListDatabasesResponse, ListInstanceACLRulesRequest, ListInstanceACLRulesResponse, ListInstanceLogsDetailsRequest, ListInstanceLogsDetailsResponse, ListInstanceLogsRequest, ListInstanceLogsResponse, ListInstancesRequest, ListInstancesResponse, ListNodeTypesRequest, ListNodeTypesResponse, ListPrivilegesRequest, ListPrivilegesResponse, ListSnapshotsRequest, ListSnapshotsResponse, ListUsersRequest, ListUsersResponse, Maintenance, MigrateEndpointRequest, PrepareInstanceLogsRequest, PrepareInstanceLogsResponse, Privilege, PromoteReadReplicaRequest, PurgeInstanceLogsRequest, ReadReplica, RenewInstanceCertificateRequest, ResetReadReplicaRequest, RestartInstanceRequest, RestoreDatabaseBackupRequest, SetInstanceACLRulesRequest, SetInstanceACLRulesResponse, SetInstanceSettingsRequest, SetInstanceSettingsResponse, SetPrivilegeRequest, Snapshot, UpdateDatabaseBackupRequest, UpdateInstanceRequest, UpdateSnapshotRequest, UpdateUserRequest, UpgradeInstanceRequest, User } from './types.gen';
4
4
  /**
5
5
  * Managed Database for PostgreSQL and MySQL API.
@@ -7,8 +7,11 @@ import type { AddInstanceACLRulesRequest, AddInstanceACLRulesResponse, AddInstan
7
7
  This API allows you to manage your Managed Databases for PostgreSQL and MySQL.
8
8
  */
9
9
  export declare class API extends ParentAPI {
10
- /** Lists the available regions of the API. */
11
- static readonly LOCALITIES: ScwRegion[];
10
+ /**
11
+ * Locality of this API.
12
+ * type ∈ {'zone','region','global','unspecified'}
13
+ */
14
+ static readonly LOCALITY: ApiLocality;
12
15
  protected pageOfListDatabaseEngines: (request?: Readonly<ListDatabaseEnginesRequest>) => Promise<ListDatabaseEnginesResponse>;
13
16
  /**
14
17
  * List available database engines. List the PostgreSQL and MySQL database engines available at Scaleway.
@@ -1,16 +1,17 @@
1
- import { API as API$1, urlParams, validatePathParam, enrichForPagination, waitForResource } from "@scaleway/sdk-client";
1
+ import { API as API$1, toApiLocality, urlParams, validatePathParam, enrichForPagination, waitForResource } from "@scaleway/sdk-client";
2
2
  import { DATABASE_BACKUP_TRANSIENT_STATUSES, INSTANCE_TRANSIENT_STATUSES, READ_REPLICA_TRANSIENT_STATUSES, INSTANCE_LOG_TRANSIENT_STATUSES, SNAPSHOT_TRANSIENT_STATUSES } from "./content.gen.js";
3
3
  import { unmarshalListDatabaseEnginesResponse, unmarshalListNodeTypesResponse, unmarshalListDatabaseBackupsResponse, marshalCreateDatabaseBackupRequest, unmarshalDatabaseBackup, marshalUpdateDatabaseBackupRequest, marshalRestoreDatabaseBackupRequest, marshalUpgradeInstanceRequest, unmarshalInstance, unmarshalListInstancesResponse, marshalCreateInstanceRequest, marshalUpdateInstanceRequest, marshalCloneInstanceRequest, unmarshalInstanceMetrics, marshalCreateReadReplicaRequest, unmarshalReadReplica, marshalCreateReadReplicaEndpointRequest, marshalPrepareInstanceLogsRequest, unmarshalPrepareInstanceLogsResponse, unmarshalListInstanceLogsResponse, unmarshalInstanceLog, marshalPurgeInstanceLogsRequest, unmarshalListInstanceLogsDetailsResponse, marshalAddInstanceSettingsRequest, unmarshalAddInstanceSettingsResponse, marshalDeleteInstanceSettingsRequest, unmarshalDeleteInstanceSettingsResponse, marshalSetInstanceSettingsRequest, unmarshalSetInstanceSettingsResponse, unmarshalListInstanceACLRulesResponse, marshalAddInstanceACLRulesRequest, unmarshalAddInstanceACLRulesResponse, marshalSetInstanceACLRulesRequest, unmarshalSetInstanceACLRulesResponse, marshalDeleteInstanceACLRulesRequest, unmarshalDeleteInstanceACLRulesResponse, unmarshalListUsersResponse, marshalCreateUserRequest, unmarshalUser, marshalUpdateUserRequest, unmarshalListDatabasesResponse, marshalCreateDatabaseRequest, unmarshalDatabase, unmarshalListPrivilegesResponse, marshalSetPrivilegeRequest, unmarshalPrivilege, unmarshalListSnapshotsResponse, unmarshalSnapshot, marshalCreateSnapshotRequest, marshalUpdateSnapshotRequest, marshalCreateInstanceFromSnapshotRequest, marshalCreateEndpointRequest, unmarshalEndpoint, marshalMigrateEndpointRequest, unmarshalMaintenance } from "./marshalling.gen.js";
4
4
  const jsonContentHeaders = {
5
5
  "Content-Type": "application/json; charset=utf-8"
6
6
  };
7
7
  class API extends API$1 {
8
- /** Lists the available regions of the API. */
9
- static LOCALITIES = [
10
- "fr-par",
11
- "nl-ams",
12
- "pl-waw"
13
- ];
8
+ /**
9
+ * Locality of this API.
10
+ * type ∈ {'zone','region','global','unspecified'}
11
+ */
12
+ static LOCALITY = toApiLocality({
13
+ regions: ["fr-par", "nl-ams", "pl-waw"]
14
+ });
14
15
  pageOfListDatabaseEngines = (request = {}) => this.client.fetch(
15
16
  {
16
17
  method: "GET",
@@ -215,6 +216,7 @@ class API extends API$1 {
215
216
  method: "GET",
216
217
  path: `/rdb/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/instances`,
217
218
  urlParams: urlParams(
219
+ ["has_maintenances", request.hasMaintenances],
218
220
  ["name", request.name],
219
221
  ["order_by", request.orderBy],
220
222
  ["organization_id", request.organizationId],
@@ -57,6 +57,7 @@ const unmarshalMaintenance = (data) => {
57
57
  return {
58
58
  closedAt: sdkClient.unmarshalDate(data.closed_at),
59
59
  forcedAt: sdkClient.unmarshalDate(data.forced_at),
60
+ isApplicable: data.is_applicable,
60
61
  reason: data.reason,
61
62
  startsAt: sdkClient.unmarshalDate(data.starts_at),
62
63
  status: data.status,
@@ -1,5 +1,5 @@
1
1
  import randomName from "@scaleway/random-name";
2
- import { resolveOneOf, isJSONObject, unmarshalDate, unmarshalArrayOfObject, unmarshalTimeSeries } from "@scaleway/sdk-client";
2
+ import { resolveOneOf, isJSONObject, unmarshalArrayOfObject, unmarshalDate, unmarshalTimeSeries } from "@scaleway/sdk-client";
3
3
  const unmarshalEndpointDirectAccessDetails = (data) => {
4
4
  if (!isJSONObject(data)) {
5
5
  throw new TypeError(
@@ -55,6 +55,7 @@ const unmarshalMaintenance = (data) => {
55
55
  return {
56
56
  closedAt: unmarshalDate(data.closed_at),
57
57
  forcedAt: unmarshalDate(data.forced_at),
58
+ isApplicable: data.is_applicable,
58
59
  reason: data.reason,
59
60
  startsAt: unmarshalDate(data.starts_at),
60
61
  status: data.status,
@@ -268,6 +268,10 @@ export interface Maintenance {
268
268
  * Time when Scaleway-side maintenance will be applied.
269
269
  */
270
270
  forcedAt?: Date;
271
+ /**
272
+ * Indicate if the maintenance can be applied by the user.
273
+ */
274
+ isApplicable: boolean;
271
275
  }
272
276
  export interface ReadReplica {
273
277
  /**
@@ -1450,6 +1454,10 @@ export type ListInstancesRequest = {
1450
1454
  * Project ID to list the Database Instance of.
1451
1455
  */
1452
1456
  projectId?: string;
1457
+ /**
1458
+ * Filter to only list instances with a scheduled maintenance.
1459
+ */
1460
+ hasMaintenances?: boolean;
1453
1461
  page?: number;
1454
1462
  pageSize?: number;
1455
1463
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-rdb",
3
- "version": "1.0.4",
3
+ "version": "1.1.0",
4
4
  "description": "Scaleway SDK rdb",
5
5
  "license": "Apache-2.0",
6
6
  "files": [
@@ -30,13 +30,13 @@
30
30
  },
31
31
  "dependencies": {
32
32
  "@scaleway/random-name": "5.1.1",
33
- "@scaleway/sdk-std": "1.0.4"
33
+ "@scaleway/sdk-std": "1.0.5"
34
34
  },
35
35
  "peerDependencies": {
36
- "@scaleway/sdk-client": "^1.2.3"
36
+ "@scaleway/sdk-client": "^1.3.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@scaleway/sdk-client": "^1.2.3"
39
+ "@scaleway/sdk-client": "^1.3.0"
40
40
  },
41
41
  "scripts": {
42
42
  "package:check": "pnpm publint",