@pulumi/tailscale 0.27.1 → 0.29.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.
- package/acl.d.ts +6 -5
- package/acl.d.ts.map +1 -0
- package/acl.js +27 -4
- package/acl.js.map +1 -1
- package/awsExternalId.d.ts +3 -2
- package/awsExternalId.d.ts.map +1 -0
- package/awsExternalId.js +27 -4
- package/awsExternalId.js.map +1 -1
- package/config/index.d.ts +1 -0
- package/config/index.d.ts.map +1 -0
- package/config/vars.d.ts +14 -5
- package/config/vars.d.ts.map +1 -0
- package/config/vars.js +37 -2
- package/config/vars.js.map +1 -1
- package/contacts.d.ts +11 -10
- package/contacts.d.ts.map +1 -0
- package/contacts.js +27 -13
- package/contacts.js.map +1 -1
- package/deviceAuthorization.d.ts +3 -2
- package/deviceAuthorization.d.ts.map +1 -0
- package/deviceAuthorization.js +27 -4
- package/deviceAuthorization.js.map +1 -1
- package/deviceKey.d.ts +5 -4
- package/deviceKey.d.ts.map +1 -0
- package/deviceKey.js +27 -4
- package/deviceKey.js.map +1 -1
- package/deviceSubnetRoutes.d.ts +3 -2
- package/deviceSubnetRoutes.d.ts.map +1 -0
- package/deviceSubnetRoutes.js +27 -4
- package/deviceSubnetRoutes.js.map +1 -1
- package/deviceTags.d.ts +3 -2
- package/deviceTags.d.ts.map +1 -0
- package/deviceTags.js +27 -4
- package/deviceTags.js.map +1 -1
- package/dnsConfiguration.d.ts +14 -13
- package/dnsConfiguration.d.ts.map +1 -0
- package/dnsConfiguration.js +27 -4
- package/dnsConfiguration.js.map +1 -1
- package/dnsNameservers.d.ts +2 -1
- package/dnsNameservers.d.ts.map +1 -0
- package/dnsNameservers.js +27 -4
- package/dnsNameservers.js.map +1 -1
- package/dnsPreferences.d.ts +2 -1
- package/dnsPreferences.d.ts.map +1 -0
- package/dnsPreferences.js +27 -4
- package/dnsPreferences.js.map +1 -1
- package/dnsSearchPaths.d.ts +3 -2
- package/dnsSearchPaths.d.ts.map +1 -0
- package/dnsSearchPaths.js +28 -5
- package/dnsSearchPaths.js.map +1 -1
- package/dnsSplitNameservers.d.ts +3 -2
- package/dnsSplitNameservers.d.ts.map +1 -0
- package/dnsSplitNameservers.js +27 -4
- package/dnsSplitNameservers.js.map +1 -1
- package/federatedIdentity.d.ts +18 -17
- package/federatedIdentity.d.ts.map +1 -0
- package/federatedIdentity.js +27 -4
- package/federatedIdentity.js.map +1 -1
- package/get4Via6.d.ts +2 -1
- package/get4Via6.d.ts.map +1 -0
- package/get4Via6.js +25 -2
- package/get4Via6.js.map +1 -1
- package/getAcl.d.ts +24 -5
- package/getAcl.d.ts.map +1 -0
- package/getAcl.js +45 -4
- package/getAcl.js.map +1 -1
- package/getDevice.d.ts +5 -4
- package/getDevice.d.ts.map +1 -0
- package/getDevice.js +25 -2
- package/getDevice.js.map +1 -1
- package/getDevices.d.ts +13 -4
- package/getDevices.d.ts.map +1 -0
- package/getDevices.js +27 -2
- package/getDevices.js.map +1 -1
- package/getService.d.ts +79 -0
- package/getService.d.ts.map +1 -0
- package/getService.js +73 -0
- package/getService.js.map +1 -0
- package/getUser.d.ts +3 -2
- package/getUser.d.ts.map +1 -0
- package/getUser.js +25 -2
- package/getUser.js.map +1 -1
- package/getUsers.d.ts +14 -4
- package/getUsers.d.ts.map +1 -0
- package/getUsers.js +27 -2
- package/getUsers.js.map +1 -1
- package/index.d.ts +7 -0
- package/index.d.ts.map +1 -0
- package/index.js +25 -5
- package/index.js.map +1 -1
- package/logstreamConfiguration.d.ts +51 -50
- package/logstreamConfiguration.d.ts.map +1 -0
- package/logstreamConfiguration.js +27 -4
- package/logstreamConfiguration.js.map +1 -1
- package/oauthClient.d.ts +12 -11
- package/oauthClient.d.ts.map +1 -0
- package/oauthClient.js +27 -4
- package/oauthClient.js.map +1 -1
- package/package.json +3 -3
- package/postureIntegration.d.ts +12 -11
- package/postureIntegration.d.ts.map +1 -0
- package/postureIntegration.js +27 -4
- package/postureIntegration.js.map +1 -1
- package/provider.d.ts +33 -16
- package/provider.d.ts.map +1 -0
- package/provider.js +30 -5
- package/provider.js.map +1 -1
- package/service.d.ts +110 -0
- package/service.d.ts.map +1 -0
- package/service.js +100 -0
- package/service.js.map +1 -0
- package/tailnetKey.d.ts +26 -25
- package/tailnetKey.d.ts.map +1 -0
- package/tailnetKey.js +27 -4
- package/tailnetKey.js.map +1 -1
- package/tailnetSettings.d.ts +23 -22
- package/tailnetSettings.d.ts.map +1 -0
- package/tailnetSettings.js +27 -4
- package/tailnetSettings.js.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +25 -2
- package/types/index.js.map +1 -1
- package/types/input.d.ts +276 -3
- package/types/input.d.ts.map +1 -0
- package/types/output.d.ts +5 -4
- package/types/output.d.ts.map +1 -0
- package/utilities.d.ts +1 -0
- package/utilities.d.ts.map +1 -0
- package/utilities.js +24 -1
- package/utilities.js.map +1 -1
- package/webhook.d.ts +6 -5
- package/webhook.d.ts.map +1 -0
- package/webhook.js +27 -4
- package/webhook.js.map +1 -1
package/postureIntegration.js
CHANGED
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
3
|
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
4
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
28
|
exports.PostureIntegration = void 0;
|
|
6
|
-
const pulumi = require("@pulumi/pulumi");
|
|
7
|
-
const utilities = require("./utilities");
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
8
31
|
/**
|
|
9
32
|
* The postureIntegration resource allows you to manage integrations with device posture data providers. See https://tailscale.com/kb/1288/device-posture for more information.
|
|
10
33
|
*
|
|
@@ -45,6 +68,8 @@ class PostureIntegration extends pulumi.CustomResource {
|
|
|
45
68
|
static get(name, id, state, opts) {
|
|
46
69
|
return new PostureIntegration(name, state, { ...opts, id: id });
|
|
47
70
|
}
|
|
71
|
+
/** @internal */
|
|
72
|
+
static __pulumiType = 'tailscale:index/postureIntegration:PostureIntegration';
|
|
48
73
|
/**
|
|
49
74
|
* Returns true if the given object is an instance of PostureIntegration. This is designed to work even
|
|
50
75
|
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
@@ -87,6 +112,4 @@ class PostureIntegration extends pulumi.CustomResource {
|
|
|
87
112
|
}
|
|
88
113
|
}
|
|
89
114
|
exports.PostureIntegration = PostureIntegration;
|
|
90
|
-
/** @internal */
|
|
91
|
-
PostureIntegration.__pulumiType = 'tailscale:index/postureIntegration:PostureIntegration';
|
|
92
115
|
//# sourceMappingURL=postureIntegration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postureIntegration.js","sourceRoot":"","sources":["../postureIntegration.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF
|
|
1
|
+
{"version":3,"file":"postureIntegration.js","sourceRoot":"","sources":["../postureIntegration.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAa,kBAAmB,SAAQ,MAAM,CAAC,cAAc;IACzD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA+B,EAAE,IAAmC;QAC7H,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,uDAAuD,CAAC;IAE9F;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC,YAAY,CAAC;IACnE,CAAC;IA+BD,YAAY,IAAY,EAAE,WAA8D,EAAE,IAAmC;QACzH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAkD,CAAC;YACjE,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;YAC7C,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,EAAE,YAAY,CAAC;YACrD,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,iBAAiB,CAAC,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3D,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;SAChD;aAAM;YACH,MAAM,IAAI,GAAG,WAAiD,CAAC;YAC/D,IAAI,IAAI,EAAE,YAAY,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC/C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;aAC/D;YACD,IAAI,IAAI,EAAE,eAAe,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;aAClE;YACD,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;YAC5C,cAAc,CAAC,cAAc,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnG,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,iBAAiB,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC;YAC1D,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;SAC/C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;QACjE,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;;AArFL,gDAsFC"}
|
package/provider.d.ts
CHANGED
|
@@ -12,23 +12,31 @@ export declare class Provider extends pulumi.ProviderResource {
|
|
|
12
12
|
*/
|
|
13
13
|
static isInstance(obj: any): obj is Provider;
|
|
14
14
|
/**
|
|
15
|
-
* The API key to use for authenticating requests to the API. Can be set via the TAILSCALE_API_KEY environment variable. Conflicts with 'oauth_client_id' and 'oauth_client_secret'.
|
|
15
|
+
* The API key to use for authenticating requests to the API. Can be set via the TAILSCALE_API_KEY environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the API key. Conflicts with 'oauth_client_id' and 'oauth_client_secret'.
|
|
16
16
|
*/
|
|
17
17
|
readonly apiKey: pulumi.Output<string | undefined>;
|
|
18
|
+
/**
|
|
19
|
+
* The OIDC audience to request when discovering an identity token from the runtime (GitHub Actions, AWS, or GCP) for workload identity federation. Can be set via the TAILSCALE_AUDIENCE environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the audience. Requires 'oauth_client_id'. Conflicts with 'api_key', 'oauth_client_secret', 'identity_token', and 'identity_token_environment_variable_name'.
|
|
20
|
+
*/
|
|
21
|
+
readonly audience: pulumi.Output<string | undefined>;
|
|
18
22
|
/**
|
|
19
23
|
* The base URL of the Tailscale API. Defaults to https://api.tailscale.com. Can be set via the TAILSCALE_BASE_URL environment variable.
|
|
20
24
|
*/
|
|
21
25
|
readonly baseUrl: pulumi.Output<string | undefined>;
|
|
22
26
|
/**
|
|
23
|
-
* The jwt identity token to exchange for a Tailscale API token when using a federated identity. Can be set via the TAILSCALE_IDENTITY_TOKEN environment variable. Conflicts with 'api_key' and '
|
|
27
|
+
* The jwt identity token to exchange for a Tailscale API token when using a federated identity. Can be set via the TAILSCALE_IDENTITY_TOKEN environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the identity token. Conflicts with 'api_key', 'oauth_client_secret', and 'identity_token_environment_variable_name'.
|
|
24
28
|
*/
|
|
25
29
|
readonly identityToken: pulumi.Output<string | undefined>;
|
|
26
30
|
/**
|
|
27
|
-
* The
|
|
31
|
+
* The name of an environment variable to read the identity token from. This is useful when the identity token is provided by an external system (such as Terraform Cloud workload identity) in an environment variable you do not control. If the resolved value of the environment variable starts with 'file:' then it is treated as a path to a file on disk that contains identity token. Conflicts with 'identity_token'.
|
|
32
|
+
*/
|
|
33
|
+
readonly identityTokenEnvironmentVariableName: pulumi.Output<string | undefined>;
|
|
34
|
+
/**
|
|
35
|
+
* The OAuth application or federated identity's ID when using OAuth client credentials or workload identity federation. Can be set via the TAILSCALE_OAUTH_CLIENT_ID environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the client ID. Either 'oauth_client_secret' or 'identity_token' must be set alongside 'oauth_client_id'. Conflicts with 'api_key'.
|
|
28
36
|
*/
|
|
29
37
|
readonly oauthClientId: pulumi.Output<string | undefined>;
|
|
30
38
|
/**
|
|
31
|
-
* The OAuth application's secret when using OAuth client credentials. Can be set via the TAILSCALE_OAUTH_CLIENT_SECRET environment variable. Conflicts with 'api_key' and 'identity_token'.
|
|
39
|
+
* The OAuth application's secret when using OAuth client credentials. Can be set via the TAILSCALE_OAUTH_CLIENT_SECRET environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the client secret. Conflicts with 'api_key' and 'identity_token'.
|
|
32
40
|
*/
|
|
33
41
|
readonly oauthClientSecret: pulumi.Output<string | undefined>;
|
|
34
42
|
/**
|
|
@@ -57,37 +65,45 @@ export declare class Provider extends pulumi.ProviderResource {
|
|
|
57
65
|
*/
|
|
58
66
|
export interface ProviderArgs {
|
|
59
67
|
/**
|
|
60
|
-
* The API key to use for authenticating requests to the API. Can be set via the TAILSCALE_API_KEY environment variable. Conflicts with 'oauth_client_id' and 'oauth_client_secret'.
|
|
68
|
+
* The API key to use for authenticating requests to the API. Can be set via the TAILSCALE_API_KEY environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the API key. Conflicts with 'oauth_client_id' and 'oauth_client_secret'.
|
|
61
69
|
*/
|
|
62
|
-
apiKey?: pulumi.Input<string>;
|
|
70
|
+
apiKey?: pulumi.Input<string | undefined>;
|
|
71
|
+
/**
|
|
72
|
+
* The OIDC audience to request when discovering an identity token from the runtime (GitHub Actions, AWS, or GCP) for workload identity federation. Can be set via the TAILSCALE_AUDIENCE environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the audience. Requires 'oauth_client_id'. Conflicts with 'api_key', 'oauth_client_secret', 'identity_token', and 'identity_token_environment_variable_name'.
|
|
73
|
+
*/
|
|
74
|
+
audience?: pulumi.Input<string | undefined>;
|
|
63
75
|
/**
|
|
64
76
|
* The base URL of the Tailscale API. Defaults to https://api.tailscale.com. Can be set via the TAILSCALE_BASE_URL environment variable.
|
|
65
77
|
*/
|
|
66
|
-
baseUrl?: pulumi.Input<string>;
|
|
78
|
+
baseUrl?: pulumi.Input<string | undefined>;
|
|
79
|
+
/**
|
|
80
|
+
* The jwt identity token to exchange for a Tailscale API token when using a federated identity. Can be set via the TAILSCALE_IDENTITY_TOKEN environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the identity token. Conflicts with 'api_key', 'oauth_client_secret', and 'identity_token_environment_variable_name'.
|
|
81
|
+
*/
|
|
82
|
+
identityToken?: pulumi.Input<string | undefined>;
|
|
67
83
|
/**
|
|
68
|
-
* The
|
|
84
|
+
* The name of an environment variable to read the identity token from. This is useful when the identity token is provided by an external system (such as Terraform Cloud workload identity) in an environment variable you do not control. If the resolved value of the environment variable starts with 'file:' then it is treated as a path to a file on disk that contains identity token. Conflicts with 'identity_token'.
|
|
69
85
|
*/
|
|
70
|
-
|
|
86
|
+
identityTokenEnvironmentVariableName?: pulumi.Input<string | undefined>;
|
|
71
87
|
/**
|
|
72
|
-
* The OAuth application or federated identity's ID when using OAuth client credentials or workload identity federation. Can be set via the TAILSCALE_OAUTH_CLIENT_ID environment variable. Either 'oauth_client_secret' or 'identity_token' must be set alongside 'oauth_client_id'. Conflicts with 'api_key'.
|
|
88
|
+
* The OAuth application or federated identity's ID when using OAuth client credentials or workload identity federation. Can be set via the TAILSCALE_OAUTH_CLIENT_ID environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the client ID. Either 'oauth_client_secret' or 'identity_token' must be set alongside 'oauth_client_id'. Conflicts with 'api_key'.
|
|
73
89
|
*/
|
|
74
|
-
oauthClientId?: pulumi.Input<string>;
|
|
90
|
+
oauthClientId?: pulumi.Input<string | undefined>;
|
|
75
91
|
/**
|
|
76
|
-
* The OAuth application's secret when using OAuth client credentials. Can be set via the TAILSCALE_OAUTH_CLIENT_SECRET environment variable. Conflicts with 'api_key' and 'identity_token'.
|
|
92
|
+
* The OAuth application's secret when using OAuth client credentials. Can be set via the TAILSCALE_OAUTH_CLIENT_SECRET environment variable. If the value starts with 'file:' then it is treated as a path to a file on disk that contains the client secret. Conflicts with 'api_key' and 'identity_token'.
|
|
77
93
|
*/
|
|
78
|
-
oauthClientSecret?: pulumi.Input<string>;
|
|
94
|
+
oauthClientSecret?: pulumi.Input<string | undefined>;
|
|
79
95
|
/**
|
|
80
96
|
* The OAuth 2.0 scopes to request when generating the access token using the supplied OAuth client credentials. See https://tailscale.com/kb/1623/trust-credentials#scopes for available scopes. Only valid when both 'oauth_client_id' and 'oauth_client_secret', or both are set.
|
|
81
97
|
*/
|
|
82
|
-
scopes?: pulumi.Input<pulumi.Input<string>[]>;
|
|
98
|
+
scopes?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
83
99
|
/**
|
|
84
100
|
* The tailnet ID. Tailnets created before Oct 2025 can still use the legacy ID, but the Tailnet ID is the preferred identifier. Can be set via the TAILSCALE_TAILNET environment variable. Default is the tailnet that owns API credentials passed to the provider.
|
|
85
101
|
*/
|
|
86
|
-
tailnet?: pulumi.Input<string>;
|
|
102
|
+
tailnet?: pulumi.Input<string | undefined>;
|
|
87
103
|
/**
|
|
88
104
|
* User-Agent header for API requests.
|
|
89
105
|
*/
|
|
90
|
-
userAgent?: pulumi.Input<string>;
|
|
106
|
+
userAgent?: pulumi.Input<string | undefined>;
|
|
91
107
|
}
|
|
92
108
|
export declare namespace Provider {
|
|
93
109
|
/**
|
|
@@ -99,3 +115,4 @@ export declare namespace Provider {
|
|
|
99
115
|
};
|
|
100
116
|
}
|
|
101
117
|
}
|
|
118
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../provider.ts"],"names":[],"mappings":"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"}
|
package/provider.js
CHANGED
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
3
|
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
4
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
28
|
exports.Provider = void 0;
|
|
6
|
-
const pulumi = require("@pulumi/pulumi");
|
|
7
|
-
const utilities = require("./utilities");
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
8
31
|
/**
|
|
9
32
|
* The provider type for the tailscale package. By default, resources use package-wide configuration
|
|
10
33
|
* settings, however an explicit `Provider` instance may be created and passed during resource
|
|
@@ -12,6 +35,8 @@ const utilities = require("./utilities");
|
|
|
12
35
|
* [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.
|
|
13
36
|
*/
|
|
14
37
|
class Provider extends pulumi.ProviderResource {
|
|
38
|
+
/** @internal */
|
|
39
|
+
static __pulumiType = 'tailscale';
|
|
15
40
|
/**
|
|
16
41
|
* Returns true if the given object is an instance of Provider. This is designed to work even
|
|
17
42
|
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
@@ -34,13 +59,15 @@ class Provider extends pulumi.ProviderResource {
|
|
|
34
59
|
opts = opts || {};
|
|
35
60
|
{
|
|
36
61
|
resourceInputs["apiKey"] = args?.apiKey ? pulumi.secret(args.apiKey) : undefined;
|
|
62
|
+
resourceInputs["audience"] = args?.audience;
|
|
37
63
|
resourceInputs["baseUrl"] = args?.baseUrl;
|
|
38
64
|
resourceInputs["identityToken"] = args?.identityToken ? pulumi.secret(args.identityToken) : undefined;
|
|
65
|
+
resourceInputs["identityTokenEnvironmentVariableName"] = args?.identityTokenEnvironmentVariableName;
|
|
39
66
|
resourceInputs["oauthClientId"] = args?.oauthClientId;
|
|
40
67
|
resourceInputs["oauthClientSecret"] = args?.oauthClientSecret ? pulumi.secret(args.oauthClientSecret) : undefined;
|
|
41
68
|
resourceInputs["scopes"] = pulumi.output(args?.scopes).apply(JSON.stringify);
|
|
42
69
|
resourceInputs["tailnet"] = args?.tailnet;
|
|
43
|
-
resourceInputs["userAgent"] = args?.userAgent;
|
|
70
|
+
resourceInputs["userAgent"] = (args?.userAgent) ?? "Pulumi/3.0 (https://www.pulumi.com) pulumi-tailscale/1.0.0-alpha.0+dev";
|
|
44
71
|
}
|
|
45
72
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
46
73
|
const secretOpts = { additionalSecretOutputs: ["apiKey", "identityToken", "oauthClientSecret"] };
|
|
@@ -57,6 +84,4 @@ class Provider extends pulumi.ProviderResource {
|
|
|
57
84
|
}
|
|
58
85
|
}
|
|
59
86
|
exports.Provider = Provider;
|
|
60
|
-
/** @internal */
|
|
61
|
-
Provider.__pulumiType = 'tailscale';
|
|
62
87
|
//# sourceMappingURL=provider.js.map
|
package/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../provider.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../provider.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;GAKG;AACH,MAAa,QAAS,SAAQ,MAAM,CAAC,gBAAgB;IACjD,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,WAAW,CAAC;IAElD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,mBAAmB,GAAG,QAAQ,CAAC,YAAY,CAAC;IAC/E,CAAC;IAuCD;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,IAAmB,EAAE,IAA6B;QACxE,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB;YACI,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;YAC5C,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtG,cAAc,CAAC,sCAAsC,CAAC,GAAG,IAAI,EAAE,oCAAoC,CAAC;YACpG,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC;YACtD,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAClH,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7E,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,wEAAwE,CAAC;SAC/H;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,mBAAmB,CAAC,EAAE,CAAC;QACjG,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,eAAe;QACX,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4CAA4C,EAAE;YACrE,UAAU,EAAE,IAAI;SACnB,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;;AAvFL,4BAwFC"}
|
package/service.d.ts
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* The Service resource allows you to manage Tailscale Services in your Tailscale network. Services let you publish internal resources (like databases or web servers) as named resources in your tailnet. Services provide a stable MagicDNS name, a Tailscale virtual IP address pair, can be served by multiple nodes, and are valid access control destinations. See https://tailscale.com/docs/features/tailscale-services) for more information.
|
|
4
|
+
*
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
*
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
9
|
+
* import * as tailscale from "@pulumi/tailscale";
|
|
10
|
+
*
|
|
11
|
+
* const example = new tailscale.Service("example", {
|
|
12
|
+
* name: "svc:my-service",
|
|
13
|
+
* comment: "My service",
|
|
14
|
+
* ports: ["tcp:443"],
|
|
15
|
+
* tags: ["tag:web"],
|
|
16
|
+
* });
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare class Service extends pulumi.CustomResource {
|
|
20
|
+
/**
|
|
21
|
+
* Get an existing Service resource's state with the given name, ID, and optional extra
|
|
22
|
+
* properties used to qualify the lookup.
|
|
23
|
+
*
|
|
24
|
+
* @param name The _unique_ name of the resulting resource.
|
|
25
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
26
|
+
* @param state Any extra arguments used during the lookup.
|
|
27
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
28
|
+
*/
|
|
29
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ServiceState, opts?: pulumi.CustomResourceOptions): Service;
|
|
30
|
+
/**
|
|
31
|
+
* Returns true if the given object is an instance of Service. This is designed to work even
|
|
32
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
33
|
+
*/
|
|
34
|
+
static isInstance(obj: any): obj is Service;
|
|
35
|
+
/**
|
|
36
|
+
* The IP addresses assigned to the Service.
|
|
37
|
+
*/
|
|
38
|
+
readonly addrs: pulumi.Output<string[]>;
|
|
39
|
+
/**
|
|
40
|
+
* An optional comment describing the Service.
|
|
41
|
+
*/
|
|
42
|
+
readonly comment: pulumi.Output<string>;
|
|
43
|
+
/**
|
|
44
|
+
* The name of the Service. Must begin with `svc:`.
|
|
45
|
+
*/
|
|
46
|
+
readonly name: pulumi.Output<string>;
|
|
47
|
+
/**
|
|
48
|
+
* A list of protocol:port pairs to be exposed by the Service. The only supported protocol is "tcp" at this time. "do-not-validate" can be used to skip validation.
|
|
49
|
+
*/
|
|
50
|
+
readonly ports: pulumi.Output<string[]>;
|
|
51
|
+
/**
|
|
52
|
+
* The ACL tags applied to the Service.
|
|
53
|
+
*/
|
|
54
|
+
readonly tags: pulumi.Output<string[]>;
|
|
55
|
+
/**
|
|
56
|
+
* Create a Service resource with the given unique name, arguments, and options.
|
|
57
|
+
*
|
|
58
|
+
* @param name The _unique_ name of the resource.
|
|
59
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
60
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
61
|
+
*/
|
|
62
|
+
constructor(name: string, args: ServiceArgs, opts?: pulumi.CustomResourceOptions);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Input properties used for looking up and filtering Service resources.
|
|
66
|
+
*/
|
|
67
|
+
export interface ServiceState {
|
|
68
|
+
/**
|
|
69
|
+
* The IP addresses assigned to the Service.
|
|
70
|
+
*/
|
|
71
|
+
addrs?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
72
|
+
/**
|
|
73
|
+
* An optional comment describing the Service.
|
|
74
|
+
*/
|
|
75
|
+
comment?: pulumi.Input<string | undefined>;
|
|
76
|
+
/**
|
|
77
|
+
* The name of the Service. Must begin with `svc:`.
|
|
78
|
+
*/
|
|
79
|
+
name?: pulumi.Input<string | undefined>;
|
|
80
|
+
/**
|
|
81
|
+
* A list of protocol:port pairs to be exposed by the Service. The only supported protocol is "tcp" at this time. "do-not-validate" can be used to skip validation.
|
|
82
|
+
*/
|
|
83
|
+
ports?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
84
|
+
/**
|
|
85
|
+
* The ACL tags applied to the Service.
|
|
86
|
+
*/
|
|
87
|
+
tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* The set of arguments for constructing a Service resource.
|
|
91
|
+
*/
|
|
92
|
+
export interface ServiceArgs {
|
|
93
|
+
/**
|
|
94
|
+
* An optional comment describing the Service.
|
|
95
|
+
*/
|
|
96
|
+
comment?: pulumi.Input<string | undefined>;
|
|
97
|
+
/**
|
|
98
|
+
* The name of the Service. Must begin with `svc:`.
|
|
99
|
+
*/
|
|
100
|
+
name?: pulumi.Input<string | undefined>;
|
|
101
|
+
/**
|
|
102
|
+
* A list of protocol:port pairs to be exposed by the Service. The only supported protocol is "tcp" at this time. "do-not-validate" can be used to skip validation.
|
|
103
|
+
*/
|
|
104
|
+
ports: pulumi.Input<pulumi.Input<string>[]>;
|
|
105
|
+
/**
|
|
106
|
+
* The ACL tags applied to the Service.
|
|
107
|
+
*/
|
|
108
|
+
tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=service.d.ts.map
|
package/service.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../service.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,OAAQ,SAAQ,MAAM,CAAC,cAAc;IAC9C;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,OAAO;IAOhI;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,OAAO;IAOlD;;OAEG;IACH,SAAgC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/D;;OAEG;IACH,SAAwB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvD;;OAEG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD;;OAEG;IACH,SAAwB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD;;OAEG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtD;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAyBnF;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IACzD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC3C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IACzD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;CAC3D;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC3C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC5C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;CAC3D"}
|
package/service.js
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.Service = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("./utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* The Service resource allows you to manage Tailscale Services in your Tailscale network. Services let you publish internal resources (like databases or web servers) as named resources in your tailnet. Services provide a stable MagicDNS name, a Tailscale virtual IP address pair, can be served by multiple nodes, and are valid access control destinations. See https://tailscale.com/docs/features/tailscale-services) for more information.
|
|
33
|
+
*
|
|
34
|
+
* ## Example Usage
|
|
35
|
+
*
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
38
|
+
* import * as tailscale from "@pulumi/tailscale";
|
|
39
|
+
*
|
|
40
|
+
* const example = new tailscale.Service("example", {
|
|
41
|
+
* name: "svc:my-service",
|
|
42
|
+
* comment: "My service",
|
|
43
|
+
* ports: ["tcp:443"],
|
|
44
|
+
* tags: ["tag:web"],
|
|
45
|
+
* });
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
class Service extends pulumi.CustomResource {
|
|
49
|
+
/**
|
|
50
|
+
* Get an existing Service resource's state with the given name, ID, and optional extra
|
|
51
|
+
* properties used to qualify the lookup.
|
|
52
|
+
*
|
|
53
|
+
* @param name The _unique_ name of the resulting resource.
|
|
54
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
55
|
+
* @param state Any extra arguments used during the lookup.
|
|
56
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
57
|
+
*/
|
|
58
|
+
static get(name, id, state, opts) {
|
|
59
|
+
return new Service(name, state, { ...opts, id: id });
|
|
60
|
+
}
|
|
61
|
+
/** @internal */
|
|
62
|
+
static __pulumiType = 'tailscale:index/service:Service';
|
|
63
|
+
/**
|
|
64
|
+
* Returns true if the given object is an instance of Service. This is designed to work even
|
|
65
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
66
|
+
*/
|
|
67
|
+
static isInstance(obj) {
|
|
68
|
+
if (obj === undefined || obj === null) {
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
return obj['__pulumiType'] === Service.__pulumiType;
|
|
72
|
+
}
|
|
73
|
+
constructor(name, argsOrState, opts) {
|
|
74
|
+
let resourceInputs = {};
|
|
75
|
+
opts = opts || {};
|
|
76
|
+
if (opts.id) {
|
|
77
|
+
const state = argsOrState;
|
|
78
|
+
resourceInputs["addrs"] = state?.addrs;
|
|
79
|
+
resourceInputs["comment"] = state?.comment;
|
|
80
|
+
resourceInputs["name"] = state?.name;
|
|
81
|
+
resourceInputs["ports"] = state?.ports;
|
|
82
|
+
resourceInputs["tags"] = state?.tags;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
const args = argsOrState;
|
|
86
|
+
if (args?.ports === undefined && !opts.urn) {
|
|
87
|
+
throw new Error("Missing required property 'ports'");
|
|
88
|
+
}
|
|
89
|
+
resourceInputs["comment"] = args?.comment;
|
|
90
|
+
resourceInputs["name"] = args?.name;
|
|
91
|
+
resourceInputs["ports"] = args?.ports;
|
|
92
|
+
resourceInputs["tags"] = args?.tags;
|
|
93
|
+
resourceInputs["addrs"] = undefined /*out*/;
|
|
94
|
+
}
|
|
95
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
96
|
+
super(Service.__pulumiType, name, resourceInputs, opts);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.Service = Service;
|
|
100
|
+
//# sourceMappingURL=service.js.map
|
package/service.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../service.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,OAAQ,SAAQ,MAAM,CAAC,cAAc;IAC9C;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAoB,EAAE,IAAmC;QAClH,OAAO,IAAI,OAAO,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,iCAAiC,CAAC;IAExE;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,OAAO,CAAC,YAAY,CAAC;IACxD,CAAC;IA+BD,YAAY,IAAY,EAAE,WAAwC,EAAE,IAAmC;QACnG,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAuC,CAAC;YACtD,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAAsC,CAAC;YACpD,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACxD;YACD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC/C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;;AAhFL,0BAiFC"}
|
package/tailnetKey.d.ts
CHANGED
|
@@ -51,11 +51,11 @@ export declare class TailnetKey extends pulumi.CustomResource {
|
|
|
51
51
|
/**
|
|
52
52
|
* A description of the key consisting of alphanumeric characters. Defaults to `""`.
|
|
53
53
|
*/
|
|
54
|
-
readonly description: pulumi.Output<string
|
|
54
|
+
readonly description: pulumi.Output<string>;
|
|
55
55
|
/**
|
|
56
56
|
* Indicates if the key is ephemeral. Defaults to `false`.
|
|
57
57
|
*/
|
|
58
|
-
readonly ephemeral: pulumi.Output<boolean
|
|
58
|
+
readonly ephemeral: pulumi.Output<boolean>;
|
|
59
59
|
/**
|
|
60
60
|
* The expiry timestamp of the key in RFC3339 format
|
|
61
61
|
*/
|
|
@@ -75,7 +75,7 @@ export declare class TailnetKey extends pulumi.CustomResource {
|
|
|
75
75
|
/**
|
|
76
76
|
* Determines whether or not the machines authenticated by the key will be authorized for the tailnet by default. Defaults to `false`.
|
|
77
77
|
*/
|
|
78
|
-
readonly preauthorized: pulumi.Output<boolean
|
|
78
|
+
readonly preauthorized: pulumi.Output<boolean>;
|
|
79
79
|
/**
|
|
80
80
|
* Determines whether the key should be created again if it becomes invalid. By default, reusable keys will be recreated, but single-use keys will not. Possible values: 'always', 'never'.
|
|
81
81
|
*/
|
|
@@ -83,11 +83,11 @@ export declare class TailnetKey extends pulumi.CustomResource {
|
|
|
83
83
|
/**
|
|
84
84
|
* Indicates if the key is reusable or single-use. Defaults to `false`.
|
|
85
85
|
*/
|
|
86
|
-
readonly reusable: pulumi.Output<boolean
|
|
86
|
+
readonly reusable: pulumi.Output<boolean>;
|
|
87
87
|
/**
|
|
88
88
|
* List of tags to apply to the machines authenticated by the key.
|
|
89
89
|
*/
|
|
90
|
-
readonly tags: pulumi.Output<string[]
|
|
90
|
+
readonly tags: pulumi.Output<string[]>;
|
|
91
91
|
/**
|
|
92
92
|
* ID of the user who created this key, empty for keys created by OAuth clients.
|
|
93
93
|
*/
|
|
@@ -108,51 +108,51 @@ export interface TailnetKeyState {
|
|
|
108
108
|
/**
|
|
109
109
|
* The creation timestamp of the key in RFC3339 format
|
|
110
110
|
*/
|
|
111
|
-
createdAt?: pulumi.Input<string>;
|
|
111
|
+
createdAt?: pulumi.Input<string | undefined>;
|
|
112
112
|
/**
|
|
113
113
|
* A description of the key consisting of alphanumeric characters. Defaults to `""`.
|
|
114
114
|
*/
|
|
115
|
-
description?: pulumi.Input<string>;
|
|
115
|
+
description?: pulumi.Input<string | undefined>;
|
|
116
116
|
/**
|
|
117
117
|
* Indicates if the key is ephemeral. Defaults to `false`.
|
|
118
118
|
*/
|
|
119
|
-
ephemeral?: pulumi.Input<boolean>;
|
|
119
|
+
ephemeral?: pulumi.Input<boolean | undefined>;
|
|
120
120
|
/**
|
|
121
121
|
* The expiry timestamp of the key in RFC3339 format
|
|
122
122
|
*/
|
|
123
|
-
expiresAt?: pulumi.Input<string>;
|
|
123
|
+
expiresAt?: pulumi.Input<string | undefined>;
|
|
124
124
|
/**
|
|
125
125
|
* The expiry of the key in seconds. Defaults to `7776000` (90 days).
|
|
126
126
|
*/
|
|
127
|
-
expiry?: pulumi.Input<number>;
|
|
127
|
+
expiry?: pulumi.Input<number | undefined>;
|
|
128
128
|
/**
|
|
129
129
|
* Indicates whether the key is invalid (e.g. expired, revoked or has been deleted).
|
|
130
130
|
*/
|
|
131
|
-
invalid?: pulumi.Input<boolean>;
|
|
131
|
+
invalid?: pulumi.Input<boolean | undefined>;
|
|
132
132
|
/**
|
|
133
133
|
* The authentication key
|
|
134
134
|
*/
|
|
135
|
-
key?: pulumi.Input<string>;
|
|
135
|
+
key?: pulumi.Input<string | undefined>;
|
|
136
136
|
/**
|
|
137
137
|
* Determines whether or not the machines authenticated by the key will be authorized for the tailnet by default. Defaults to `false`.
|
|
138
138
|
*/
|
|
139
|
-
preauthorized?: pulumi.Input<boolean>;
|
|
139
|
+
preauthorized?: pulumi.Input<boolean | undefined>;
|
|
140
140
|
/**
|
|
141
141
|
* Determines whether the key should be created again if it becomes invalid. By default, reusable keys will be recreated, but single-use keys will not. Possible values: 'always', 'never'.
|
|
142
142
|
*/
|
|
143
|
-
recreateIfInvalid?: pulumi.Input<string>;
|
|
143
|
+
recreateIfInvalid?: pulumi.Input<string | undefined>;
|
|
144
144
|
/**
|
|
145
145
|
* Indicates if the key is reusable or single-use. Defaults to `false`.
|
|
146
146
|
*/
|
|
147
|
-
reusable?: pulumi.Input<boolean>;
|
|
147
|
+
reusable?: pulumi.Input<boolean | undefined>;
|
|
148
148
|
/**
|
|
149
149
|
* List of tags to apply to the machines authenticated by the key.
|
|
150
150
|
*/
|
|
151
|
-
tags?: pulumi.Input<pulumi.Input<string>[]>;
|
|
151
|
+
tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
152
152
|
/**
|
|
153
153
|
* ID of the user who created this key, empty for keys created by OAuth clients.
|
|
154
154
|
*/
|
|
155
|
-
userId?: pulumi.Input<string>;
|
|
155
|
+
userId?: pulumi.Input<string | undefined>;
|
|
156
156
|
}
|
|
157
157
|
/**
|
|
158
158
|
* The set of arguments for constructing a TailnetKey resource.
|
|
@@ -161,33 +161,34 @@ export interface TailnetKeyArgs {
|
|
|
161
161
|
/**
|
|
162
162
|
* A description of the key consisting of alphanumeric characters. Defaults to `""`.
|
|
163
163
|
*/
|
|
164
|
-
description?: pulumi.Input<string>;
|
|
164
|
+
description?: pulumi.Input<string | undefined>;
|
|
165
165
|
/**
|
|
166
166
|
* Indicates if the key is ephemeral. Defaults to `false`.
|
|
167
167
|
*/
|
|
168
|
-
ephemeral?: pulumi.Input<boolean>;
|
|
168
|
+
ephemeral?: pulumi.Input<boolean | undefined>;
|
|
169
169
|
/**
|
|
170
170
|
* The expiry of the key in seconds. Defaults to `7776000` (90 days).
|
|
171
171
|
*/
|
|
172
|
-
expiry?: pulumi.Input<number>;
|
|
172
|
+
expiry?: pulumi.Input<number | undefined>;
|
|
173
173
|
/**
|
|
174
174
|
* Determines whether or not the machines authenticated by the key will be authorized for the tailnet by default. Defaults to `false`.
|
|
175
175
|
*/
|
|
176
|
-
preauthorized?: pulumi.Input<boolean>;
|
|
176
|
+
preauthorized?: pulumi.Input<boolean | undefined>;
|
|
177
177
|
/**
|
|
178
178
|
* Determines whether the key should be created again if it becomes invalid. By default, reusable keys will be recreated, but single-use keys will not. Possible values: 'always', 'never'.
|
|
179
179
|
*/
|
|
180
|
-
recreateIfInvalid?: pulumi.Input<string>;
|
|
180
|
+
recreateIfInvalid?: pulumi.Input<string | undefined>;
|
|
181
181
|
/**
|
|
182
182
|
* Indicates if the key is reusable or single-use. Defaults to `false`.
|
|
183
183
|
*/
|
|
184
|
-
reusable?: pulumi.Input<boolean>;
|
|
184
|
+
reusable?: pulumi.Input<boolean | undefined>;
|
|
185
185
|
/**
|
|
186
186
|
* List of tags to apply to the machines authenticated by the key.
|
|
187
187
|
*/
|
|
188
|
-
tags?: pulumi.Input<pulumi.Input<string>[]>;
|
|
188
|
+
tags?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
189
189
|
/**
|
|
190
190
|
* ID of the user who created this key, empty for keys created by OAuth clients.
|
|
191
191
|
*/
|
|
192
|
-
userId?: pulumi.Input<string>;
|
|
192
|
+
userId?: pulumi.Input<string | undefined>;
|
|
193
193
|
}
|
|
194
|
+
//# sourceMappingURL=tailnetKey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tailnetKey.d.ts","sourceRoot":"","sources":["../tailnetKey.ts"],"names":[],"mappings":"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"}
|