@drunk-pulumi/azure-components 1.1.35 → 1.1.38
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.
- package/AppResources.d.ts +2 -2
- package/apim/ApimApi.js +10 -2
- package/apim/openApiHelper.d.ts +1 -1
- package/apim/openApiHelper.js +37 -9
- package/database/MySql.d.ts +1 -0
- package/database/MySql.js +11 -5
- package/database/Postgres.d.ts +2 -1
- package/database/Postgres.js +15 -5
- package/database/Redis.js +25 -22
- package/package.json +1 -1
package/AppResources.d.ts
CHANGED
|
@@ -21,8 +21,8 @@ export interface AppResourcesArgs extends CommonBaseArgs, types.WithNetworkArgs,
|
|
|
21
21
|
logicApp?: types.WithName & Partial<LogicAppArgs> & Pick<LogicAppArgs, 'integrationAccount' | 'workflow'>;
|
|
22
22
|
signalR?: types.WithName & Partial<SignalRArgs> & Pick<SignalRArgs, 'sku'>;
|
|
23
23
|
azSql?: types.WithName & Partial<AzSqlArgs> & Pick<AzSqlArgs, 'administrators'>;
|
|
24
|
-
mySql?: types.WithName & Partial<MySqlArgs> & Pick<MySqlArgs, 'sku' | 'administratorLogin' | 'enableAzureADAdmin'>;
|
|
25
|
-
postgres?: types.WithName & Partial<PostgresArgs> & Pick<PostgresArgs, 'sku' | 'administratorLogin' | 'enableAzureADAdmin'>;
|
|
24
|
+
mySql?: types.WithName & Partial<MySqlArgs> & Pick<MySqlArgs, 'sku' | 'administratorLogin' | 'enableAzureADAdmin' | 'version'>;
|
|
25
|
+
postgres?: types.WithName & Partial<PostgresArgs> & Pick<PostgresArgs, 'sku' | 'administratorLogin' | 'enableAzureADAdmin' | 'version'>;
|
|
26
26
|
redis?: types.WithName & Partial<RedisArgs> & Pick<RedisArgs, 'sku' | 'disableAccessKeyAuthentication'>;
|
|
27
27
|
}
|
|
28
28
|
export declare class AppResources extends BaseComponent<AppResourcesArgs> {
|
package/apim/ApimApi.js
CHANGED
|
@@ -84,7 +84,15 @@ class ApimApi extends base_1.BaseResourceComponent {
|
|
|
84
84
|
? pulumi.interpolate `${serviceUrl}/${apiVersion}`
|
|
85
85
|
: `https://${helpers_1.stackInfo.organization}.com/${apiVersion}`,
|
|
86
86
|
format: openSpecUrl ? apim.ContentFormat.Openapi_json : undefined,
|
|
87
|
-
value: openSpecUrl
|
|
87
|
+
value: openSpecUrl
|
|
88
|
+
? pulumi.output(openApi.getImportConfig(openSpecUrl, apiVersion)).apply((v) => {
|
|
89
|
+
if (v === undefined) {
|
|
90
|
+
console.error(`APIM-openApi: Not able to load spec from: ${openSpecUrl}`);
|
|
91
|
+
}
|
|
92
|
+
// ApiArgs.value does not allow undefined, so keep prior empty-string fallback behavior.
|
|
93
|
+
return v ?? '';
|
|
94
|
+
})
|
|
95
|
+
: undefined,
|
|
88
96
|
}, {
|
|
89
97
|
...this.opts,
|
|
90
98
|
parent: this,
|
|
@@ -191,4 +199,4 @@ class ApimApi extends base_1.BaseResourceComponent {
|
|
|
191
199
|
}
|
|
192
200
|
}
|
|
193
201
|
exports.ApimApi = ApimApi;
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpbUFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGltL0FwaW1BcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWdFO0FBQ2hFLHlFQUEyRDtBQUMzRCx1REFBeUM7QUFDekMseURBQTJDO0FBQzNDLDJEQUF3RDtBQUN4RCx3Q0FBaUQ7QUFzQ2pELE1BQWEsT0FBUSxTQUFRLDRCQUFrQztJQUM3QyxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFFcEQsWUFBWSxJQUFZLEVBQUUsSUFBaUIsRUFBRSxJQUFzQztRQUNqRixLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFbkMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRTFCLElBQUksQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTztZQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixpQkFBaUIsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDO1NBQ3RF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
|
package/apim/openApiHelper.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const getImportConfig: (specUrl: string, version: string) => Promise<string>;
|
|
1
|
+
export declare const getImportConfig: (specUrl: string, version: string) => Promise<string | undefined>;
|
package/apim/openApiHelper.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getImportConfig = void 0;
|
|
4
|
+
const promises_1 = require("node:fs/promises");
|
|
5
|
+
const node_fs_1 = require("node:fs");
|
|
4
6
|
const removeVersion = (data, version) => {
|
|
5
7
|
if (!data?.paths) {
|
|
6
8
|
console.error(`APIM-removeVersion: There is no paths found in`, data);
|
|
@@ -15,22 +17,48 @@ const removeVersion = (data, version) => {
|
|
|
15
17
|
data.paths = newPaths;
|
|
16
18
|
return data;
|
|
17
19
|
};
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
.
|
|
20
|
+
const isHttpSpecUrl = (specUrl) => /^https?:\/\//i.test(specUrl);
|
|
21
|
+
const downloadRemoteSpecFile = async (fileUrl) => {
|
|
22
|
+
try {
|
|
23
|
+
const response = await fetch(fileUrl, { method: 'GET' });
|
|
24
|
+
if (!response.ok) {
|
|
25
|
+
console.error(`Not able to get spec file from: ${fileUrl}. Status: ${response.status}`);
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
return (await response.json());
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
23
31
|
console.error(`Not able to get spec file from: ${fileUrl}`, error);
|
|
24
32
|
return undefined;
|
|
25
|
-
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
const downloadLocalSpecFile = async (filePath) => {
|
|
36
|
+
try {
|
|
37
|
+
await (0, promises_1.access)(filePath, node_fs_1.constants.F_OK);
|
|
38
|
+
const fileContent = await (0, promises_1.readFile)(filePath, 'utf8');
|
|
39
|
+
try {
|
|
40
|
+
return JSON.parse(fileContent);
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
console.error(`Invalid JSON in spec file: ${filePath}`, error);
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
console.error(`Not able to read spec file from: ${filePath}`, error);
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
const downloadSpecFile = async (specUrl) => {
|
|
53
|
+
return isHttpSpecUrl(specUrl) ? downloadRemoteSpecFile(specUrl) : downloadLocalSpecFile(specUrl);
|
|
26
54
|
};
|
|
27
55
|
const getImportConfig = async (specUrl, version) => {
|
|
28
56
|
const spec = await downloadSpecFile(specUrl);
|
|
29
57
|
if (!spec)
|
|
30
|
-
return
|
|
31
|
-
//Remove
|
|
58
|
+
return undefined;
|
|
59
|
+
// Remove version prefix from paths.
|
|
32
60
|
const data = removeVersion(spec, version);
|
|
33
61
|
return JSON.stringify(data);
|
|
34
62
|
};
|
|
35
63
|
exports.getImportConfig = getImportConfig;
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbkFwaUhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGltL29wZW5BcGlIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsK0NBQW9EO0FBQ3BELHFDQUFvQztBQUVwQyxNQUFNLGFBQWEsR0FBRyxDQUFDLElBQWMsRUFBRSxPQUFlLEVBQVksRUFBRTtJQUNsRSxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0RBQWdELEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdEUsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxRQUFRLEdBQUcsRUFBUyxDQUFDO0lBRTNCLDJCQUEyQjtJQUMzQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNwQyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztJQUN0QixPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVGLE1BQU0sYUFBYSxHQUFHLENBQUMsT0FBZSxFQUFXLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBRWxGLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxFQUFFLE9BQWUsRUFBaUMsRUFBRTtJQUN0RixJQUFJLENBQUM7UUFDSCxNQUFNLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsbUNBQW1DLE9BQU8sYUFBYSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUN4RixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFhLENBQUM7SUFDN0MsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLG1DQUFtQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRSxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLEVBQUUsUUFBZ0IsRUFBaUMsRUFBRTtJQUN0RixJQUFJLENBQUM7UUFDSCxNQUFNLElBQUEsaUJBQU0sRUFBQyxRQUFRLEVBQUUsbUJBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUEsbUJBQVEsRUFBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDO1lBQ0gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBYSxDQUFDO1FBQzdDLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDL0QsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDckUsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUFFLE9BQWUsRUFBaUMsRUFBRTtJQUNoRixPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ25HLENBQUMsQ0FBQztBQUVLLE1BQU0sZUFBZSxHQUFHLEtBQUssRUFBRSxPQUFlLEVBQUUsT0FBZSxFQUErQixFQUFFO0lBQ3JHLE1BQU0sSUFBSSxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUU1QixvQ0FBb0M7SUFDcEMsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMxQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBUFcsUUFBQSxlQUFlLG1CQU8xQiJ9
|
package/database/MySql.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import * as pulumi from '@pulumi/pulumi';
|
|
|
3
3
|
import { BaseResourceComponent, CommonBaseArgs } from '../base';
|
|
4
4
|
import * as types from '../types';
|
|
5
5
|
export interface MySqlArgs extends CommonBaseArgs, types.WithEncryptionEnabler, types.WithNetworkArgs, Pick<mysql.ServerArgs, 'administratorLogin'>, Partial<Pick<mysql.ServerArgs, 'version' | 'storage' | 'maintenanceWindow' | 'backup' | 'highAvailability' | 'availabilityZone'>> {
|
|
6
|
+
version?: pulumi.Input<string | mysql.ServerVersion>;
|
|
6
7
|
sku: {
|
|
7
8
|
/**
|
|
8
9
|
* The name of the sku, e.g. Standard_D32s_v3.
|
package/database/MySql.js
CHANGED
|
@@ -73,7 +73,6 @@ class MySql extends base_1.BaseResourceComponent {
|
|
|
73
73
|
//serverName: this.name,
|
|
74
74
|
administratorLogin: adminLogin,
|
|
75
75
|
administratorLoginPassword: password.value,
|
|
76
|
-
version: this.args.version ?? mysql.ServerVersion.ServerVersion_8_0_21,
|
|
77
76
|
storage: this.args.storage ?? { storageSizeGB: 30 },
|
|
78
77
|
identity: enableResourceIdentity
|
|
79
78
|
? {
|
|
@@ -181,9 +180,16 @@ class MySql extends base_1.BaseResourceComponent {
|
|
|
181
180
|
serverName: server.name,
|
|
182
181
|
databaseName: d.name,
|
|
183
182
|
}, { dependsOn: server, parent: this });
|
|
184
|
-
//
|
|
185
|
-
const
|
|
186
|
-
|
|
183
|
+
// Create connection strings in multiple formats for different platforms
|
|
184
|
+
const connStrings = {};
|
|
185
|
+
// .NET / ADO.NET format
|
|
186
|
+
connStrings[`${this.name}-${d.name}-mysql-conn-dotnet`] = pulumi.interpolate `Server=${cred.host};Database=${d.name};Uid=${cred.username};Pwd=${cred.password};SslMode=Require;Encrypt=True;TrustServerCertificate=true`;
|
|
187
|
+
// Node.js / JavaScript format
|
|
188
|
+
connStrings[`${this.name}-${d.name}-mysql-conn-nodejs`] = pulumi.interpolate `mysql://${cred.username}:${cred.password}@${cred.host}:${cred.port}/${d.name}?ssl=true&tls=true`;
|
|
189
|
+
// Generic/standard format
|
|
190
|
+
connStrings[`${this.name}-${d.name}-mysql-conn`] = pulumi.interpolate `Server=${cred.host};Database=${d.name};Uid=${cred.username};Pwd=${cred.password};SslMode=Require;Encrypt=True;TrustServerCertificate=true`;
|
|
191
|
+
// Add all connection strings at once
|
|
192
|
+
this.addSecrets(connStrings);
|
|
187
193
|
return db;
|
|
188
194
|
});
|
|
189
195
|
}
|
|
@@ -195,4 +201,4 @@ class MySql extends base_1.BaseResourceComponent {
|
|
|
195
201
|
}
|
|
196
202
|
}
|
|
197
203
|
exports.MySql = MySql;
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXlTcWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvTXlTcWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUVBQXlEO0FBQ3pELHVEQUF5QztBQUN6QyxrQ0FBK0M7QUFDL0Msa0NBQWdFO0FBQ2hFLHdDQUFzQztBQUV0Qyw4Q0FBZ0M7QUFDaEMsdUNBQTZDO0FBNkI3QyxNQUFhLEtBQU0sU0FBUSw0QkFBZ0M7SUFDekMsRUFBRSxDQUF3QjtJQUMxQixZQUFZLENBQXdCO0lBRXBELFlBQVksSUFBWSxFQUFFLElBQWUsRUFBRSxJQUFzQztRQUMvRSxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFakMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFFaEMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTztZQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixpQkFBaUIsRUFBRSxNQUFN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
|
package/database/Postgres.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ import * as postgresql from '@pulumi/azure-native/dbforpostgresql';
|
|
|
2
2
|
import * as pulumi from '@pulumi/pulumi';
|
|
3
3
|
import { BaseResourceComponent, CommonBaseArgs } from '../base';
|
|
4
4
|
import * as types from '../types';
|
|
5
|
-
export interface PostgresArgs extends CommonBaseArgs, types.WithEncryptionEnabler, types.WithNetworkArgs, Pick<postgresql.ServerArgs, 'administratorLogin'>, Partial<Pick<postgresql.ServerArgs, '
|
|
5
|
+
export interface PostgresArgs extends CommonBaseArgs, types.WithEncryptionEnabler, types.WithNetworkArgs, Pick<postgresql.ServerArgs, 'administratorLogin'>, Partial<Pick<postgresql.ServerArgs, 'storage' | 'maintenanceWindow' | 'backup' | 'highAvailability' | 'availabilityZone'>> {
|
|
6
|
+
version: pulumi.Input<string | postgresql.PostgresMajorVersion>;
|
|
6
7
|
sku: {
|
|
7
8
|
/** The name of postgres: Standard_B2ms, */
|
|
8
9
|
name: pulumi.Input<string>;
|
package/database/Postgres.js
CHANGED
|
@@ -69,7 +69,6 @@ class Postgres extends base_1.BaseResourceComponent {
|
|
|
69
69
|
const server = new postgresql.Server(this.name, {
|
|
70
70
|
...this.args,
|
|
71
71
|
...rsGroup,
|
|
72
|
-
version: this.args.version ?? postgresql.PostgresMajorVersion.PostgresMajorVersion_16,
|
|
73
72
|
administratorLogin: adminLogin,
|
|
74
73
|
administratorLoginPassword: password.value,
|
|
75
74
|
storage: this.args.storage ?? { storageSizeGB: 32 },
|
|
@@ -166,9 +165,20 @@ class Postgres extends base_1.BaseResourceComponent {
|
|
|
166
165
|
serverName: server.name,
|
|
167
166
|
databaseName: d.name,
|
|
168
167
|
}, { dependsOn: server, parent: this });
|
|
169
|
-
//
|
|
170
|
-
const
|
|
171
|
-
|
|
168
|
+
// Create connection strings in multiple formats for different platforms
|
|
169
|
+
const connStrings = {};
|
|
170
|
+
// .NET / ADO.NET format
|
|
171
|
+
connStrings[`${this.name}-${d.name}-postgres-conn-dotnet`] = pulumi.interpolate `Host=${cred.host};Database=${d.name};Username=${cred.username};Password=${cred.password};SslMode=Require;Ssl=true;TrustServerCertificate=true`;
|
|
172
|
+
// Node.js / JavaScript URI format
|
|
173
|
+
connStrings[`${this.name}-${d.name}-postgres-conn-nodejs`] = pulumi.interpolate `postgresql://${cred.username}:${cred.password}@${cred.host}:${cred.port}/${d.name}?sslmode=require`;
|
|
174
|
+
// Python / psycopg2 format
|
|
175
|
+
//connStrings[`${this.name}-${d.name}-postgres-conn-python`] = pulumi.interpolate`postgresql://${cred.username}:${cred.password}@${cred.host}:${cred.port}/${d.name}`;
|
|
176
|
+
// JDBC / Java format
|
|
177
|
+
//connStrings[`${this.name}-${d.name}-postgres-conn-jdbc`] = pulumi.interpolate`jdbc:postgresql://${cred.host}:${cred.port}/${d.name}?user=${cred.username}&password=${cred.password}&sslmode=require`;
|
|
178
|
+
// Generic/standard format
|
|
179
|
+
connStrings[`${this.name}-${d.name}-postgres-conn`] = pulumi.interpolate `Host=${cred.host};Database=${d.name};Username=${cred.username};Password=${cred.password};SslMode=Require;Ssl=true;TrustServerCertificate=true`;
|
|
180
|
+
// Add all connection strings at once
|
|
181
|
+
this.addSecrets(connStrings);
|
|
172
182
|
return db;
|
|
173
183
|
});
|
|
174
184
|
}
|
|
@@ -180,4 +190,4 @@ class Postgres extends base_1.BaseResourceComponent {
|
|
|
180
190
|
}
|
|
181
191
|
}
|
|
182
192
|
exports.Postgres = Postgres;
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9zdGdyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvUG9zdGdyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaUZBQW1FO0FBQ25FLHVEQUF5QztBQUN6QyxrQ0FBK0M7QUFDL0Msa0NBQWdFO0FBQ2hFLHdDQUFzQztBQUV0Qyw4Q0FBZ0M7QUFDaEMsdUNBQTZDO0FBNEI3QyxNQUFhLFFBQVMsU0FBUSw0QkFBbUM7SUFDL0MsRUFBRSxDQUF3QjtJQUMxQixZQUFZLENBQXdCO0lBRXBELFlBQVksSUFBWSxFQUFFLElBQWtCLEVBQUUsSUFBc0M7UUFDbEYsS0FBSyxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXBDLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFFMUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUVoQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUM7U0FDdEUsQ0FBQztJQUNKLENBQUM7SUFFTyxjQUFjO1FBQ3BCLE1BQU0s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
|
package/database/Redis.js
CHANGED
|
@@ -36,7 +36,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.Redis = void 0;
|
|
37
37
|
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
38
38
|
const redis = __importStar(require("@pulumi/azure-native/redis"));
|
|
39
|
-
const vault = __importStar(require("../vault"));
|
|
40
39
|
const vnet = __importStar(require("../vnet"));
|
|
41
40
|
const base_1 = require("../base");
|
|
42
41
|
const helpers_1 = require("./helpers");
|
|
@@ -171,28 +170,32 @@ class Redis extends base_1.BaseResourceComponent {
|
|
|
171
170
|
name: server.name,
|
|
172
171
|
resourceGroupName: rsGroup.resourceGroupName,
|
|
173
172
|
});
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
}
|
|
173
|
+
// Create connection strings in multiple formats for different platforms
|
|
174
|
+
const secrets = {
|
|
175
|
+
[`${this.name}-redis-host`]: h,
|
|
176
|
+
[`${this.name}-redis-pass`]: keys.primaryKey,
|
|
177
|
+
[`${this.name}-redis-port`]: '6380',
|
|
178
|
+
};
|
|
179
|
+
// Node.js / JavaScript format
|
|
180
|
+
secrets[`${this.name}-redis-conn-nodejs`] = disableAccessKeyAuthentication
|
|
181
|
+
? pulumi.interpolate `rediss://${h}:6380`
|
|
182
|
+
: pulumi.interpolate `rediss://:${keys.primaryKey}@${h}:6380`;
|
|
183
|
+
// .NET / StackExchange.Redis format
|
|
184
|
+
secrets[`${this.name}-redis-conn-dotnet`] = disableAccessKeyAuthentication
|
|
185
|
+
? pulumi.interpolate `${h}:6380,ssl=True,abortConnect=False`
|
|
186
|
+
: pulumi.interpolate `${h}:6380,password=${keys.primaryKey},ssl=True,abortConnect=False`;
|
|
187
|
+
// Python format
|
|
188
|
+
secrets[`${this.name}-redis-conn-python`] = disableAccessKeyAuthentication
|
|
189
|
+
? pulumi.interpolate `rediss://${h}:6380`
|
|
190
|
+
: pulumi.interpolate `rediss://:${keys.primaryKey}@${h}:6380`;
|
|
191
|
+
// Generic format
|
|
192
|
+
secrets[`${this.name}-redis-conn`] = disableAccessKeyAuthentication
|
|
193
|
+
? pulumi.interpolate `${h}:6380,ssl=True,abortConnect=False`
|
|
194
|
+
: pulumi.interpolate `${h}:6380,password=${keys.primaryKey},ssl=True,abortConnect=False`;
|
|
195
|
+
// Add all secrets at once
|
|
196
|
+
this.addSecrets(secrets);
|
|
194
197
|
});
|
|
195
198
|
}
|
|
196
199
|
}
|
|
197
200
|
exports.Redis = Redis;
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVkaXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvUmVkaXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXlDO0FBQ3pDLGtFQUFvRDtBQUVwRCw4Q0FBZ0M7QUFFaEMsa0NBQWdFO0FBQ2hFLHVDQUE2QztBQUM3Qyx3Q0FBd0M7QUF1Q3hDLE1BQWEsS0FBTSxTQUFRLDRCQUFnQztJQUN6QyxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDN0MsV0FBVyxDQUE2RDtJQUUvRSxZQUFZLElBQVksRUFBRSxJQUFlLEVBQUUsSUFBc0M7UUFDL0UsS0FBSyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWpDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRS9CLElBQUksQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFFaEMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTztZQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixpQkFBaUIsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFD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
|