@pulumi/tailscale 0.25.0 → 0.26.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/config/vars.d.ts +3 -3
- package/getDevices.d.ts +39 -0
- package/getDevices.js +28 -0
- package/getDevices.js.map +1 -1
- package/package.json +2 -2
- package/provider.d.ts +5 -5
- package/types/input.d.ts +20 -0
- package/types/output.d.ts +10 -0
package/config/vars.d.ts
CHANGED
|
@@ -7,11 +7,11 @@ export declare const apiKey: string | undefined;
|
|
|
7
7
|
*/
|
|
8
8
|
export declare const baseUrl: string | undefined;
|
|
9
9
|
/**
|
|
10
|
-
* The jwt identity token to exchange for a Tailscale API token when using a federated identity
|
|
10
|
+
* 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 'oauth_client_secret'.
|
|
11
11
|
*/
|
|
12
12
|
export declare const identityToken: string | undefined;
|
|
13
13
|
/**
|
|
14
|
-
* The OAuth application's ID when using OAuth client credentials. 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'.
|
|
14
|
+
* 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'.
|
|
15
15
|
*/
|
|
16
16
|
export declare const oauthClientId: string | undefined;
|
|
17
17
|
/**
|
|
@@ -19,7 +19,7 @@ export declare const oauthClientId: string | undefined;
|
|
|
19
19
|
*/
|
|
20
20
|
export declare const oauthClientSecret: string | undefined;
|
|
21
21
|
/**
|
|
22
|
-
* The OAuth 2.0 scopes to request when generating the access token using the supplied OAuth client credentials. See https://tailscale.com/kb/
|
|
22
|
+
* 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.
|
|
23
23
|
*/
|
|
24
24
|
export declare const scopes: string[] | undefined;
|
|
25
25
|
/**
|
package/getDevices.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "./types/input";
|
|
2
3
|
import * as outputs from "./types/output";
|
|
3
4
|
/**
|
|
4
5
|
* The devices data source describes a list of devices in a tailnet
|
|
@@ -11,6 +12,19 @@ import * as outputs from "./types/output";
|
|
|
11
12
|
*
|
|
12
13
|
* const sampleDevices = tailscale.getDevices({
|
|
13
14
|
* namePrefix: "example-",
|
|
15
|
+
* filters: [
|
|
16
|
+
* {
|
|
17
|
+
* name: "isEphemeral",
|
|
18
|
+
* values: ["true"],
|
|
19
|
+
* },
|
|
20
|
+
* {
|
|
21
|
+
* name: "tags",
|
|
22
|
+
* values: [
|
|
23
|
+
* "tag:server",
|
|
24
|
+
* "tag:test",
|
|
25
|
+
* ],
|
|
26
|
+
* },
|
|
27
|
+
* ],
|
|
14
28
|
* });
|
|
15
29
|
* ```
|
|
16
30
|
*/
|
|
@@ -19,6 +33,10 @@ export declare function getDevices(args?: GetDevicesArgs, opts?: pulumi.InvokeOp
|
|
|
19
33
|
* A collection of arguments for invoking getDevices.
|
|
20
34
|
*/
|
|
21
35
|
export interface GetDevicesArgs {
|
|
36
|
+
/**
|
|
37
|
+
* Filters the device list to elements devices whose fields match the provided values.
|
|
38
|
+
*/
|
|
39
|
+
filters?: inputs.GetDevicesFilter[];
|
|
22
40
|
/**
|
|
23
41
|
* Filters the device list to elements whose name has the provided prefix
|
|
24
42
|
*/
|
|
@@ -32,6 +50,10 @@ export interface GetDevicesResult {
|
|
|
32
50
|
* The list of devices in the tailnet
|
|
33
51
|
*/
|
|
34
52
|
readonly devices: outputs.GetDevicesDevice[];
|
|
53
|
+
/**
|
|
54
|
+
* Filters the device list to elements devices whose fields match the provided values.
|
|
55
|
+
*/
|
|
56
|
+
readonly filters?: outputs.GetDevicesFilter[];
|
|
35
57
|
/**
|
|
36
58
|
* The provider-assigned unique ID for this managed resource.
|
|
37
59
|
*/
|
|
@@ -52,6 +74,19 @@ export interface GetDevicesResult {
|
|
|
52
74
|
*
|
|
53
75
|
* const sampleDevices = tailscale.getDevices({
|
|
54
76
|
* namePrefix: "example-",
|
|
77
|
+
* filters: [
|
|
78
|
+
* {
|
|
79
|
+
* name: "isEphemeral",
|
|
80
|
+
* values: ["true"],
|
|
81
|
+
* },
|
|
82
|
+
* {
|
|
83
|
+
* name: "tags",
|
|
84
|
+
* values: [
|
|
85
|
+
* "tag:server",
|
|
86
|
+
* "tag:test",
|
|
87
|
+
* ],
|
|
88
|
+
* },
|
|
89
|
+
* ],
|
|
55
90
|
* });
|
|
56
91
|
* ```
|
|
57
92
|
*/
|
|
@@ -60,6 +95,10 @@ export declare function getDevicesOutput(args?: GetDevicesOutputArgs, opts?: pul
|
|
|
60
95
|
* A collection of arguments for invoking getDevices.
|
|
61
96
|
*/
|
|
62
97
|
export interface GetDevicesOutputArgs {
|
|
98
|
+
/**
|
|
99
|
+
* Filters the device list to elements devices whose fields match the provided values.
|
|
100
|
+
*/
|
|
101
|
+
filters?: pulumi.Input<pulumi.Input<inputs.GetDevicesFilterArgs>[]>;
|
|
63
102
|
/**
|
|
64
103
|
* Filters the device list to elements whose name has the provided prefix
|
|
65
104
|
*/
|
package/getDevices.js
CHANGED
|
@@ -16,6 +16,19 @@ const utilities = require("./utilities");
|
|
|
16
16
|
*
|
|
17
17
|
* const sampleDevices = tailscale.getDevices({
|
|
18
18
|
* namePrefix: "example-",
|
|
19
|
+
* filters: [
|
|
20
|
+
* {
|
|
21
|
+
* name: "isEphemeral",
|
|
22
|
+
* values: ["true"],
|
|
23
|
+
* },
|
|
24
|
+
* {
|
|
25
|
+
* name: "tags",
|
|
26
|
+
* values: [
|
|
27
|
+
* "tag:server",
|
|
28
|
+
* "tag:test",
|
|
29
|
+
* ],
|
|
30
|
+
* },
|
|
31
|
+
* ],
|
|
19
32
|
* });
|
|
20
33
|
* ```
|
|
21
34
|
*/
|
|
@@ -23,6 +36,7 @@ function getDevices(args, opts) {
|
|
|
23
36
|
args = args || {};
|
|
24
37
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
25
38
|
return pulumi.runtime.invoke("tailscale:index/getDevices:getDevices", {
|
|
39
|
+
"filters": args.filters,
|
|
26
40
|
"namePrefix": args.namePrefix,
|
|
27
41
|
}, opts);
|
|
28
42
|
}
|
|
@@ -38,6 +52,19 @@ exports.getDevices = getDevices;
|
|
|
38
52
|
*
|
|
39
53
|
* const sampleDevices = tailscale.getDevices({
|
|
40
54
|
* namePrefix: "example-",
|
|
55
|
+
* filters: [
|
|
56
|
+
* {
|
|
57
|
+
* name: "isEphemeral",
|
|
58
|
+
* values: ["true"],
|
|
59
|
+
* },
|
|
60
|
+
* {
|
|
61
|
+
* name: "tags",
|
|
62
|
+
* values: [
|
|
63
|
+
* "tag:server",
|
|
64
|
+
* "tag:test",
|
|
65
|
+
* ],
|
|
66
|
+
* },
|
|
67
|
+
* ],
|
|
41
68
|
* });
|
|
42
69
|
* ```
|
|
43
70
|
*/
|
|
@@ -45,6 +72,7 @@ function getDevicesOutput(args, opts) {
|
|
|
45
72
|
args = args || {};
|
|
46
73
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
|
|
47
74
|
return pulumi.runtime.invokeOutput("tailscale:index/getDevices:getDevices", {
|
|
75
|
+
"filters": args.filters,
|
|
48
76
|
"namePrefix": args.namePrefix,
|
|
49
77
|
}, opts);
|
|
50
78
|
}
|
package/getDevices.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDevices.js","sourceRoot":"","sources":["../getDevices.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"getDevices.js","sourceRoot":"","sources":["../getDevices.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,UAAU,CAAC,IAAqB,EAAE,IAA2B;IACzE,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,uCAAuC,EAAE;QAClE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,YAAY,EAAE,IAAI,CAAC,UAAU;KAChC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAPD,gCAOC;AAqCD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,gBAAgB,CAAC,IAA2B,EAAE,IAAiC;IAC3F,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,uCAAuC,EAAE;QACxE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,YAAY,EAAE,IAAI,CAAC,UAAU;KAChC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAPD,4CAOC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulumi/tailscale",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.26.0",
|
|
4
4
|
"description": "A Pulumi package for creating and managing Tailscale cloud resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pulumi",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"pulumi": {
|
|
24
24
|
"resource": true,
|
|
25
25
|
"name": "tailscale",
|
|
26
|
-
"version": "0.
|
|
26
|
+
"version": "0.26.0"
|
|
27
27
|
}
|
|
28
28
|
}
|
package/provider.d.ts
CHANGED
|
@@ -20,11 +20,11 @@ export declare class Provider extends pulumi.ProviderResource {
|
|
|
20
20
|
*/
|
|
21
21
|
readonly baseUrl: pulumi.Output<string | undefined>;
|
|
22
22
|
/**
|
|
23
|
-
* The jwt identity token to exchange for a Tailscale API token when using a federated identity
|
|
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 'oauth_client_secret'.
|
|
24
24
|
*/
|
|
25
25
|
readonly identityToken: pulumi.Output<string | undefined>;
|
|
26
26
|
/**
|
|
27
|
-
* The OAuth application's ID when using OAuth client credentials. 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'.
|
|
27
|
+
* 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'.
|
|
28
28
|
*/
|
|
29
29
|
readonly oauthClientId: pulumi.Output<string | undefined>;
|
|
30
30
|
/**
|
|
@@ -65,11 +65,11 @@ export interface ProviderArgs {
|
|
|
65
65
|
*/
|
|
66
66
|
baseUrl?: pulumi.Input<string>;
|
|
67
67
|
/**
|
|
68
|
-
* The jwt identity token to exchange for a Tailscale API token when using a federated identity
|
|
68
|
+
* 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 'oauth_client_secret'.
|
|
69
69
|
*/
|
|
70
70
|
identityToken?: pulumi.Input<string>;
|
|
71
71
|
/**
|
|
72
|
-
* The OAuth application's ID when using OAuth client credentials. 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'.
|
|
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'.
|
|
73
73
|
*/
|
|
74
74
|
oauthClientId?: pulumi.Input<string>;
|
|
75
75
|
/**
|
|
@@ -77,7 +77,7 @@ export interface ProviderArgs {
|
|
|
77
77
|
*/
|
|
78
78
|
oauthClientSecret?: pulumi.Input<string>;
|
|
79
79
|
/**
|
|
80
|
-
* The OAuth 2.0 scopes to request when generating the access token using the supplied OAuth client credentials. See https://tailscale.com/kb/
|
|
80
|
+
* 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
81
|
*/
|
|
82
82
|
scopes?: pulumi.Input<pulumi.Input<string>[]>;
|
|
83
83
|
/**
|
package/types/input.d.ts
CHANGED
|
@@ -48,3 +48,23 @@ export interface DnsConfigurationSplitDnNameserver {
|
|
|
48
48
|
*/
|
|
49
49
|
useWithExitNode?: pulumi.Input<boolean>;
|
|
50
50
|
}
|
|
51
|
+
export interface GetDevicesFilter {
|
|
52
|
+
/**
|
|
53
|
+
* The name must be a top-level device property, e.g. isEphemeral, tags, hostname, etc.
|
|
54
|
+
*/
|
|
55
|
+
name: string;
|
|
56
|
+
/**
|
|
57
|
+
* The list of values to filter for. Values are matched as exact matches.
|
|
58
|
+
*/
|
|
59
|
+
values: string[];
|
|
60
|
+
}
|
|
61
|
+
export interface GetDevicesFilterArgs {
|
|
62
|
+
/**
|
|
63
|
+
* The name must be a top-level device property, e.g. isEphemeral, tags, hostname, etc.
|
|
64
|
+
*/
|
|
65
|
+
name: pulumi.Input<string>;
|
|
66
|
+
/**
|
|
67
|
+
* The list of values to filter for. Values are matched as exact matches.
|
|
68
|
+
*/
|
|
69
|
+
values: pulumi.Input<pulumi.Input<string>[]>;
|
|
70
|
+
}
|
package/types/output.d.ts
CHANGED
|
@@ -133,6 +133,16 @@ export interface GetDevicesDevice {
|
|
|
133
133
|
*/
|
|
134
134
|
user: string;
|
|
135
135
|
}
|
|
136
|
+
export interface GetDevicesFilter {
|
|
137
|
+
/**
|
|
138
|
+
* The name must be a top-level device property, e.g. isEphemeral, tags, hostname, etc.
|
|
139
|
+
*/
|
|
140
|
+
name: string;
|
|
141
|
+
/**
|
|
142
|
+
* The list of values to filter for. Values are matched as exact matches.
|
|
143
|
+
*/
|
|
144
|
+
values: string[];
|
|
145
|
+
}
|
|
136
146
|
export interface GetUsersUser {
|
|
137
147
|
/**
|
|
138
148
|
* The time the user joined their tailnet.
|