@pulumiverse/grafana 0.2.1-alpha.1709570924

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.
Files changed (252) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +54 -0
  3. package/annotation.d.ts +151 -0
  4. package/annotation.js +79 -0
  5. package/annotation.js.map +1 -0
  6. package/apiKey.d.ts +77 -0
  7. package/apiKey.js +80 -0
  8. package/apiKey.js.map +1 -0
  9. package/cloudAccessPolicy.d.ts +156 -0
  10. package/cloudAccessPolicy.js +115 -0
  11. package/cloudAccessPolicy.js.map +1 -0
  12. package/cloudAccessPolicyToken.d.ts +151 -0
  13. package/cloudAccessPolicyToken.js +108 -0
  14. package/cloudAccessPolicyToken.js.map +1 -0
  15. package/cloudApiKey.d.ts +102 -0
  16. package/cloudApiKey.js +85 -0
  17. package/cloudApiKey.js.map +1 -0
  18. package/cloudPluginInstallation.d.ts +96 -0
  19. package/cloudPluginInstallation.js +86 -0
  20. package/cloudPluginInstallation.js.map +1 -0
  21. package/cloudStack.d.ts +291 -0
  22. package/cloudStack.js +142 -0
  23. package/cloudStack.js.map +1 -0
  24. package/cloudStackApiKey.d.ts +52 -0
  25. package/cloudStackApiKey.js +67 -0
  26. package/cloudStackApiKey.js.map +1 -0
  27. package/cloudStackServiceAccount.d.ts +97 -0
  28. package/cloudStackServiceAccount.js +80 -0
  29. package/cloudStackServiceAccount.js.map +1 -0
  30. package/cloudStackServiceAccountToken.d.ts +78 -0
  31. package/cloudStackServiceAccountToken.js +93 -0
  32. package/cloudStackServiceAccountToken.js.map +1 -0
  33. package/config/index.d.ts +1 -0
  34. package/config/index.js +21 -0
  35. package/config/index.js.map +1 -0
  36. package/config/vars.d.ts +89 -0
  37. package/config/vars.js +131 -0
  38. package/config/vars.js.map +1 -0
  39. package/contactPoint.d.ts +310 -0
  40. package/contactPoint.js +119 -0
  41. package/contactPoint.js.map +1 -0
  42. package/dashboard.d.ts +154 -0
  43. package/dashboard.js +94 -0
  44. package/dashboard.js.map +1 -0
  45. package/dashboardPermission.d.ts +131 -0
  46. package/dashboardPermission.js +97 -0
  47. package/dashboardPermission.js.map +1 -0
  48. package/dataSource.d.ts +294 -0
  49. package/dataSource.js +164 -0
  50. package/dataSource.js.map +1 -0
  51. package/dataSourcePermission.d.ts +124 -0
  52. package/dataSourcePermission.js +109 -0
  53. package/dataSourcePermission.js.map +1 -0
  54. package/folder.d.ts +127 -0
  55. package/folder.js +95 -0
  56. package/folder.js.map +1 -0
  57. package/folderPermission.d.ts +106 -0
  58. package/folderPermission.js +91 -0
  59. package/folderPermission.js.map +1 -0
  60. package/getCloudIps.d.ts +56 -0
  61. package/getCloudIps.js +41 -0
  62. package/getCloudIps.js.map +1 -0
  63. package/getCloudOrganization.d.ts +37 -0
  64. package/getCloudOrganization.js +21 -0
  65. package/getCloudOrganization.js.map +1 -0
  66. package/getCloudStack.d.ts +130 -0
  67. package/getCloudStack.js +25 -0
  68. package/getCloudStack.js.map +1 -0
  69. package/getDashboard.d.ts +134 -0
  70. package/getDashboard.js +81 -0
  71. package/getDashboard.js.map +1 -0
  72. package/getDashboards.d.ts +74 -0
  73. package/getDashboards.js +36 -0
  74. package/getDashboards.js.map +1 -0
  75. package/getDataSource.d.ts +156 -0
  76. package/getDataSource.js +95 -0
  77. package/getDataSource.js.map +1 -0
  78. package/getFolder.d.ts +82 -0
  79. package/getFolder.js +59 -0
  80. package/getFolder.js.map +1 -0
  81. package/getFolders.d.ts +61 -0
  82. package/getFolders.js +61 -0
  83. package/getFolders.js.map +1 -0
  84. package/getLibraryPanel.d.ts +108 -0
  85. package/getLibraryPanel.js +28 -0
  86. package/getLibraryPanel.js.map +1 -0
  87. package/getOnCallSlackChannel.d.ts +66 -0
  88. package/getOnCallSlackChannel.js +47 -0
  89. package/getOnCallSlackChannel.js.map +1 -0
  90. package/getOncallAction.d.ts +46 -0
  91. package/getOncallAction.js +31 -0
  92. package/getOncallAction.js.map +1 -0
  93. package/getOncallEscalationChain.d.ts +62 -0
  94. package/getOncallEscalationChain.js +47 -0
  95. package/getOncallEscalationChain.js.map +1 -0
  96. package/getOncallOutgoingWebhook.d.ts +62 -0
  97. package/getOncallOutgoingWebhook.js +47 -0
  98. package/getOncallOutgoingWebhook.js.map +1 -0
  99. package/getOncallSchedule.d.ts +68 -0
  100. package/getOncallSchedule.js +49 -0
  101. package/getOncallSchedule.js.map +1 -0
  102. package/getOncallTeam.d.ts +60 -0
  103. package/getOncallTeam.js +43 -0
  104. package/getOncallTeam.js.map +1 -0
  105. package/getOncallUser.d.ts +70 -0
  106. package/getOncallUser.js +47 -0
  107. package/getOncallUser.js.map +1 -0
  108. package/getOncallUserGroup.d.ts +54 -0
  109. package/getOncallUserGroup.js +47 -0
  110. package/getOncallUserGroup.js.map +1 -0
  111. package/getOrganization.d.ts +94 -0
  112. package/getOrganization.js +67 -0
  113. package/getOrganization.js.map +1 -0
  114. package/getOrganizationPreferences.d.ts +62 -0
  115. package/getOrganizationPreferences.js +43 -0
  116. package/getOrganizationPreferences.js.map +1 -0
  117. package/getRole.d.ts +147 -0
  118. package/getRole.js +95 -0
  119. package/getRole.js.map +1 -0
  120. package/getSlos.d.ts +31 -0
  121. package/getSlos.js +31 -0
  122. package/getSlos.js.map +1 -0
  123. package/getSyntheticMonitoringProbe.d.ts +88 -0
  124. package/getSyntheticMonitoringProbe.js +47 -0
  125. package/getSyntheticMonitoringProbe.js.map +1 -0
  126. package/getSyntheticMonitoringProbes.d.ts +64 -0
  127. package/getSyntheticMonitoringProbes.js +44 -0
  128. package/getSyntheticMonitoringProbes.js.map +1 -0
  129. package/getTeam.d.ts +83 -0
  130. package/getTeam.js +67 -0
  131. package/getTeam.js.map +1 -0
  132. package/getUser.d.ts +128 -0
  133. package/getUser.js +84 -0
  134. package/getUser.js.map +1 -0
  135. package/getUsers.d.ts +61 -0
  136. package/getUsers.js +61 -0
  137. package/getUsers.js.map +1 -0
  138. package/index.d.ts +228 -0
  139. package/index.js +353 -0
  140. package/index.js.map +1 -0
  141. package/libraryPanel.d.ts +193 -0
  142. package/libraryPanel.js +103 -0
  143. package/libraryPanel.js.map +1 -0
  144. package/machineLearningHoliday.d.ts +103 -0
  145. package/machineLearningHoliday.js +62 -0
  146. package/machineLearningHoliday.js.map +1 -0
  147. package/machineLearningJob.d.ts +201 -0
  148. package/machineLearningJob.js +83 -0
  149. package/machineLearningJob.js.map +1 -0
  150. package/machineLearningOutlierDetector.d.ts +159 -0
  151. package/machineLearningOutlierDetector.js +84 -0
  152. package/machineLearningOutlierDetector.js.map +1 -0
  153. package/messageTemplate.d.ts +86 -0
  154. package/messageTemplate.js +80 -0
  155. package/messageTemplate.js.map +1 -0
  156. package/muteTiming.d.ts +106 -0
  157. package/muteTiming.js +95 -0
  158. package/muteTiming.js.map +1 -0
  159. package/notificationPolicy.d.ts +186 -0
  160. package/notificationPolicy.js +141 -0
  161. package/notificationPolicy.js.map +1 -0
  162. package/oncallEscalation.d.ts +227 -0
  163. package/oncallEscalation.js +124 -0
  164. package/oncallEscalation.js.map +1 -0
  165. package/oncallEscalationChain.d.ts +80 -0
  166. package/oncallEscalationChain.js +71 -0
  167. package/oncallEscalationChain.js.map +1 -0
  168. package/oncallIntegration.d.ts +116 -0
  169. package/oncallIntegration.js +75 -0
  170. package/oncallIntegration.js.map +1 -0
  171. package/oncallOnCallShift.d.ts +237 -0
  172. package/oncallOnCallShift.js +97 -0
  173. package/oncallOnCallShift.js.map +1 -0
  174. package/oncallOutgoingWebhook.d.ts +152 -0
  175. package/oncallOutgoingWebhook.js +88 -0
  176. package/oncallOutgoingWebhook.js.map +1 -0
  177. package/oncallRoute.d.ts +175 -0
  178. package/oncallRoute.js +116 -0
  179. package/oncallRoute.js.map +1 -0
  180. package/oncallSchedule.d.ts +187 -0
  181. package/oncallSchedule.js +109 -0
  182. package/oncallSchedule.js.map +1 -0
  183. package/organization.d.ts +193 -0
  184. package/organization.js +96 -0
  185. package/organization.js.map +1 -0
  186. package/organizationPreference.d.ts +125 -0
  187. package/organizationPreference.js +76 -0
  188. package/organizationPreference.js.map +1 -0
  189. package/package.json +30 -0
  190. package/package.json.bak +29 -0
  191. package/package.json.dev +29 -0
  192. package/playlist.d.ts +72 -0
  193. package/playlist.js +65 -0
  194. package/playlist.js.map +1 -0
  195. package/provider.d.ts +166 -0
  196. package/provider.js +64 -0
  197. package/provider.js.map +1 -0
  198. package/report.d.ts +241 -0
  199. package/report.js +110 -0
  200. package/report.js.map +1 -0
  201. package/role.d.ts +210 -0
  202. package/role.js +109 -0
  203. package/role.js.map +1 -0
  204. package/roleAssignment.d.ts +131 -0
  205. package/roleAssignment.js +95 -0
  206. package/roleAssignment.js.map +1 -0
  207. package/ruleGroup.d.ts +203 -0
  208. package/ruleGroup.js +174 -0
  209. package/ruleGroup.js.map +1 -0
  210. package/scripts/install-pulumi-plugin.js +21 -0
  211. package/serviceAccount.d.ts +102 -0
  212. package/serviceAccount.js +73 -0
  213. package/serviceAccount.js.map +1 -0
  214. package/serviceAccountPermission.d.ts +110 -0
  215. package/serviceAccountPermission.js +95 -0
  216. package/serviceAccountPermission.js.map +1 -0
  217. package/serviceAccountToken.d.ts +72 -0
  218. package/serviceAccountToken.js +85 -0
  219. package/serviceAccountToken.js.map +1 -0
  220. package/slo.d.ts +131 -0
  221. package/slo.js +77 -0
  222. package/slo.js.map +1 -0
  223. package/syntheticMonitoringCheck.d.ts +555 -0
  224. package/syntheticMonitoringCheck.js +464 -0
  225. package/syntheticMonitoringCheck.js.map +1 -0
  226. package/syntheticMonitoringInstallation.d.ts +112 -0
  227. package/syntheticMonitoringInstallation.js +95 -0
  228. package/syntheticMonitoringInstallation.js.map +1 -0
  229. package/syntheticMonitoringProbe.d.ts +164 -0
  230. package/syntheticMonitoringProbe.js +108 -0
  231. package/syntheticMonitoringProbe.js.map +1 -0
  232. package/team.d.ts +165 -0
  233. package/team.js +89 -0
  234. package/team.js.map +1 -0
  235. package/teamExternalGroup.d.ts +84 -0
  236. package/teamExternalGroup.js +81 -0
  237. package/teamExternalGroup.js.map +1 -0
  238. package/types/index.d.ts +3 -0
  239. package/types/index.js +11 -0
  240. package/types/index.js.map +1 -0
  241. package/types/input.d.ts +1914 -0
  242. package/types/input.js +5 -0
  243. package/types/input.js.map +1 -0
  244. package/types/output.d.ts +2011 -0
  245. package/types/output.js +5 -0
  246. package/types/output.js.map +1 -0
  247. package/user.d.ts +132 -0
  248. package/user.js +95 -0
  249. package/user.js.map +1 -0
  250. package/utilities.d.ts +4 -0
  251. package/utilities.js +69 -0
  252. package/utilities.js.map +1 -0
package/provider.js ADDED
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Provider = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * The provider type for the grafana package. By default, resources use package-wide configuration
10
+ * settings, however an explicit `Provider` instance may be created and passed during resource
11
+ * construction to achieve fine-grained programmatic control over provider settings. See the
12
+ * [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.
13
+ */
14
+ class Provider extends pulumi.ProviderResource {
15
+ /**
16
+ * Returns true if the given object is an instance of Provider. This is designed to work even
17
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
18
+ */
19
+ static isInstance(obj) {
20
+ if (obj === undefined || obj === null) {
21
+ return false;
22
+ }
23
+ return obj['__pulumiType'] === "pulumi:providers:" + Provider.__pulumiType;
24
+ }
25
+ /**
26
+ * Create a Provider resource with the given unique name, arguments, and options.
27
+ *
28
+ * @param name The _unique_ name of the resource.
29
+ * @param args The arguments to use to populate this resource's properties.
30
+ * @param opts A bag of options that control this resource's behavior.
31
+ */
32
+ constructor(name, args, opts) {
33
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
34
+ let resourceInputs = {};
35
+ opts = opts || {};
36
+ {
37
+ resourceInputs["auth"] = (_a = ((args === null || args === void 0 ? void 0 : args.auth) ? pulumi.secret(args.auth) : undefined)) !== null && _a !== void 0 ? _a : utilities.getEnv("GRAFANA_AUTH");
38
+ resourceInputs["caCert"] = (_b = (args ? args.caCert : undefined)) !== null && _b !== void 0 ? _b : utilities.getEnv("GRAFANA_CA_CERT");
39
+ resourceInputs["cloudApiKey"] = (_c = ((args === null || args === void 0 ? void 0 : args.cloudApiKey) ? pulumi.secret(args.cloudApiKey) : undefined)) !== null && _c !== void 0 ? _c : utilities.getEnv("GRAFANA_CLOUD_API_KEY");
40
+ resourceInputs["cloudApiUrl"] = (_d = (args ? args.cloudApiUrl : undefined)) !== null && _d !== void 0 ? _d : utilities.getEnv("GRAFANA_CLOUD_API_URL");
41
+ resourceInputs["insecureSkipVerify"] = pulumi.output((_e = (args ? args.insecureSkipVerify : undefined)) !== null && _e !== void 0 ? _e : utilities.getEnvBoolean("GRAFANA_INSECURE_SKIP_VERIFY")).apply(JSON.stringify);
42
+ resourceInputs["oncallAccessToken"] = (_f = ((args === null || args === void 0 ? void 0 : args.oncallAccessToken) ? pulumi.secret(args.oncallAccessToken) : undefined)) !== null && _f !== void 0 ? _f : utilities.getEnv("GRAFANA_ONCALL_ACCESS_TOKEN");
43
+ resourceInputs["oncallUrl"] = (_g = (args ? args.oncallUrl : undefined)) !== null && _g !== void 0 ? _g : utilities.getEnv("GRAFANA_ONCALL_URL");
44
+ resourceInputs["orgId"] = pulumi.output((_h = (args ? args.orgId : undefined)) !== null && _h !== void 0 ? _h : utilities.getEnvNumber("GRAFANA_ORG_ID")).apply(JSON.stringify);
45
+ resourceInputs["retries"] = pulumi.output((_j = (args ? args.retries : undefined)) !== null && _j !== void 0 ? _j : utilities.getEnvNumber("GRAFANA_RETRIES")).apply(JSON.stringify);
46
+ resourceInputs["retryStatusCodes"] = pulumi.output(args ? args.retryStatusCodes : undefined).apply(JSON.stringify);
47
+ resourceInputs["retryWait"] = pulumi.output(args ? args.retryWait : undefined).apply(JSON.stringify);
48
+ resourceInputs["smAccessToken"] = (_k = ((args === null || args === void 0 ? void 0 : args.smAccessToken) ? pulumi.secret(args.smAccessToken) : undefined)) !== null && _k !== void 0 ? _k : utilities.getEnv("GRAFANA_SM_ACCESS_TOKEN");
49
+ resourceInputs["smUrl"] = (_l = (args ? args.smUrl : undefined)) !== null && _l !== void 0 ? _l : utilities.getEnv("GRAFANA_SM_URL");
50
+ resourceInputs["storeDashboardSha256"] = pulumi.output((_m = (args ? args.storeDashboardSha256 : undefined)) !== null && _m !== void 0 ? _m : utilities.getEnvBoolean("GRAFANA_STORE_DASHBOARD_SHA256")).apply(JSON.stringify);
51
+ resourceInputs["tlsCert"] = (_o = (args ? args.tlsCert : undefined)) !== null && _o !== void 0 ? _o : utilities.getEnv("GRAFANA_TLS_CERT");
52
+ resourceInputs["tlsKey"] = (_p = ((args === null || args === void 0 ? void 0 : args.tlsKey) ? pulumi.secret(args.tlsKey) : undefined)) !== null && _p !== void 0 ? _p : utilities.getEnv("GRAFANA_TLS_KEY");
53
+ resourceInputs["url"] = (_q = (args ? args.url : undefined)) !== null && _q !== void 0 ? _q : utilities.getEnv("GRAFANA_URL");
54
+ }
55
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
56
+ const secretOpts = { additionalSecretOutputs: ["auth", "cloudApiKey", "oncallAccessToken", "smAccessToken", "tlsKey"] };
57
+ opts = pulumi.mergeOptions(opts, secretOpts);
58
+ super(Provider.__pulumiType, name, resourceInputs, opts);
59
+ }
60
+ }
61
+ exports.Provider = Provider;
62
+ /** @internal */
63
+ Provider.__pulumiType = 'grafana';
64
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../provider.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;GAKG;AACH,MAAa,QAAS,SAAQ,MAAM,CAAC,gBAAgB;IAIjD;;;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;IA0DD;;;;;;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,MAAM,CAAC,GAAG,MAAA,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACjH,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACnG,cAAc,CAAC,aAAa,CAAC,GAAG,MAAA,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;YAC/I,cAAc,CAAC,aAAa,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;YACnH,cAAc,CAAC,oBAAoB,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACpL,cAAc,CAAC,mBAAmB,CAAC,GAAG,MAAA,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;YACvK,cAAc,CAAC,WAAW,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5G,cAAc,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3I,cAAc,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChJ,cAAc,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnH,cAAc,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrG,cAAc,CAAC,eAAe,CAAC,GAAG,MAAA,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACvJ,cAAc,CAAC,OAAO,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAChG,cAAc,CAAC,sBAAsB,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1L,cAAc,CAAC,SAAS,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACtG,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAA,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC1H,cAAc,CAAC,KAAK,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SAC5F;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxH,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;;AAxGL,4BAyGC;AAxGG,gBAAgB;AACO,qBAAY,GAAG,SAAS,CAAC"}
package/report.d.ts ADDED
@@ -0,0 +1,241 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * **Note:** This resource is available only with Grafana Enterprise 7.+.
6
+ *
7
+ * * [Official documentation](https://grafana.com/docs/grafana/latest/dashboards/create-reports/)
8
+ * * [HTTP API](https://grafana.com/docs/grafana/latest/developers/http_api/reporting/)
9
+ *
10
+ * ## Example Usage
11
+ *
12
+ * ```typescript
13
+ * import * as pulumi from "@pulumi/pulumi";
14
+ * import * as grafana from "@pulumiverse/grafana";
15
+ *
16
+ * const testDashboard = new grafana.Dashboard("testDashboard", {
17
+ * configJson: `{
18
+ * "title": "Dashboard for report",
19
+ * "uid": "report"
20
+ * }
21
+ * `,
22
+ * message: "inital commit.",
23
+ * });
24
+ * const testReport = new grafana.Report("testReport", {
25
+ * dashboardUid: testDashboard.uid,
26
+ * recipients: ["some@email.com"],
27
+ * schedule: {
28
+ * frequency: "hourly",
29
+ * },
30
+ * });
31
+ * ```
32
+ */
33
+ export declare class Report extends pulumi.CustomResource {
34
+ /**
35
+ * Get an existing Report resource's state with the given name, ID, and optional extra
36
+ * properties used to qualify the lookup.
37
+ *
38
+ * @param name The _unique_ name of the resulting resource.
39
+ * @param id The _unique_ provider ID of the resource to lookup.
40
+ * @param state Any extra arguments used during the lookup.
41
+ * @param opts Optional settings to control the behavior of the CustomResource.
42
+ */
43
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ReportState, opts?: pulumi.CustomResourceOptions): Report;
44
+ /**
45
+ * Returns true if the given object is an instance of Report. This is designed to work even
46
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
47
+ */
48
+ static isInstance(obj: any): obj is Report;
49
+ /**
50
+ * Dashboard to be sent in the report. This field is deprecated, use `dashboardUid` instead.
51
+ *
52
+ * @deprecated Use dashboard_uid instead
53
+ */
54
+ readonly dashboardId: pulumi.Output<number>;
55
+ /**
56
+ * Dashboard to be sent in the report.
57
+ */
58
+ readonly dashboardUid: pulumi.Output<string>;
59
+ /**
60
+ * Specifies what kind of attachment to generate for the report. Allowed values: `pdf`, `csv`, `image`.
61
+ */
62
+ readonly formats: pulumi.Output<string[] | undefined>;
63
+ /**
64
+ * Whether to include a link to the dashboard in the report. Defaults to `true`.
65
+ */
66
+ readonly includeDashboardLink: pulumi.Output<boolean | undefined>;
67
+ /**
68
+ * Whether to include a CSV file of table panel data. Defaults to `false`.
69
+ */
70
+ readonly includeTableCsv: pulumi.Output<boolean | undefined>;
71
+ /**
72
+ * Layout of the report. Allowed values: `simple`, `grid`. Defaults to `grid`.
73
+ */
74
+ readonly layout: pulumi.Output<string | undefined>;
75
+ /**
76
+ * Message to be sent in the report.
77
+ */
78
+ readonly message: pulumi.Output<string | undefined>;
79
+ /**
80
+ * Name of the report.
81
+ */
82
+ readonly name: pulumi.Output<string>;
83
+ /**
84
+ * The Organization ID. If not set, the Org ID defined in the provider block will be used.
85
+ */
86
+ readonly orgId: pulumi.Output<string | undefined>;
87
+ /**
88
+ * Orientation of the report. Allowed values: `landscape`, `portrait`. Defaults to `landscape`.
89
+ */
90
+ readonly orientation: pulumi.Output<string | undefined>;
91
+ /**
92
+ * List of recipients of the report.
93
+ */
94
+ readonly recipients: pulumi.Output<string[]>;
95
+ /**
96
+ * Reply-to email address of the report.
97
+ */
98
+ readonly replyTo: pulumi.Output<string | undefined>;
99
+ /**
100
+ * Schedule of the report.
101
+ */
102
+ readonly schedule: pulumi.Output<outputs.ReportSchedule>;
103
+ /**
104
+ * Time range of the report.
105
+ */
106
+ readonly timeRange: pulumi.Output<outputs.ReportTimeRange | undefined>;
107
+ /**
108
+ * Create a Report resource with the given unique name, arguments, and options.
109
+ *
110
+ * @param name The _unique_ name of the resource.
111
+ * @param args The arguments to use to populate this resource's properties.
112
+ * @param opts A bag of options that control this resource's behavior.
113
+ */
114
+ constructor(name: string, args: ReportArgs, opts?: pulumi.CustomResourceOptions);
115
+ }
116
+ /**
117
+ * Input properties used for looking up and filtering Report resources.
118
+ */
119
+ export interface ReportState {
120
+ /**
121
+ * Dashboard to be sent in the report. This field is deprecated, use `dashboardUid` instead.
122
+ *
123
+ * @deprecated Use dashboard_uid instead
124
+ */
125
+ dashboardId?: pulumi.Input<number>;
126
+ /**
127
+ * Dashboard to be sent in the report.
128
+ */
129
+ dashboardUid?: pulumi.Input<string>;
130
+ /**
131
+ * Specifies what kind of attachment to generate for the report. Allowed values: `pdf`, `csv`, `image`.
132
+ */
133
+ formats?: pulumi.Input<pulumi.Input<string>[]>;
134
+ /**
135
+ * Whether to include a link to the dashboard in the report. Defaults to `true`.
136
+ */
137
+ includeDashboardLink?: pulumi.Input<boolean>;
138
+ /**
139
+ * Whether to include a CSV file of table panel data. Defaults to `false`.
140
+ */
141
+ includeTableCsv?: pulumi.Input<boolean>;
142
+ /**
143
+ * Layout of the report. Allowed values: `simple`, `grid`. Defaults to `grid`.
144
+ */
145
+ layout?: pulumi.Input<string>;
146
+ /**
147
+ * Message to be sent in the report.
148
+ */
149
+ message?: pulumi.Input<string>;
150
+ /**
151
+ * Name of the report.
152
+ */
153
+ name?: pulumi.Input<string>;
154
+ /**
155
+ * The Organization ID. If not set, the Org ID defined in the provider block will be used.
156
+ */
157
+ orgId?: pulumi.Input<string>;
158
+ /**
159
+ * Orientation of the report. Allowed values: `landscape`, `portrait`. Defaults to `landscape`.
160
+ */
161
+ orientation?: pulumi.Input<string>;
162
+ /**
163
+ * List of recipients of the report.
164
+ */
165
+ recipients?: pulumi.Input<pulumi.Input<string>[]>;
166
+ /**
167
+ * Reply-to email address of the report.
168
+ */
169
+ replyTo?: pulumi.Input<string>;
170
+ /**
171
+ * Schedule of the report.
172
+ */
173
+ schedule?: pulumi.Input<inputs.ReportSchedule>;
174
+ /**
175
+ * Time range of the report.
176
+ */
177
+ timeRange?: pulumi.Input<inputs.ReportTimeRange>;
178
+ }
179
+ /**
180
+ * The set of arguments for constructing a Report resource.
181
+ */
182
+ export interface ReportArgs {
183
+ /**
184
+ * Dashboard to be sent in the report. This field is deprecated, use `dashboardUid` instead.
185
+ *
186
+ * @deprecated Use dashboard_uid instead
187
+ */
188
+ dashboardId?: pulumi.Input<number>;
189
+ /**
190
+ * Dashboard to be sent in the report.
191
+ */
192
+ dashboardUid?: pulumi.Input<string>;
193
+ /**
194
+ * Specifies what kind of attachment to generate for the report. Allowed values: `pdf`, `csv`, `image`.
195
+ */
196
+ formats?: pulumi.Input<pulumi.Input<string>[]>;
197
+ /**
198
+ * Whether to include a link to the dashboard in the report. Defaults to `true`.
199
+ */
200
+ includeDashboardLink?: pulumi.Input<boolean>;
201
+ /**
202
+ * Whether to include a CSV file of table panel data. Defaults to `false`.
203
+ */
204
+ includeTableCsv?: pulumi.Input<boolean>;
205
+ /**
206
+ * Layout of the report. Allowed values: `simple`, `grid`. Defaults to `grid`.
207
+ */
208
+ layout?: pulumi.Input<string>;
209
+ /**
210
+ * Message to be sent in the report.
211
+ */
212
+ message?: pulumi.Input<string>;
213
+ /**
214
+ * Name of the report.
215
+ */
216
+ name?: pulumi.Input<string>;
217
+ /**
218
+ * The Organization ID. If not set, the Org ID defined in the provider block will be used.
219
+ */
220
+ orgId?: pulumi.Input<string>;
221
+ /**
222
+ * Orientation of the report. Allowed values: `landscape`, `portrait`. Defaults to `landscape`.
223
+ */
224
+ orientation?: pulumi.Input<string>;
225
+ /**
226
+ * List of recipients of the report.
227
+ */
228
+ recipients: pulumi.Input<pulumi.Input<string>[]>;
229
+ /**
230
+ * Reply-to email address of the report.
231
+ */
232
+ replyTo?: pulumi.Input<string>;
233
+ /**
234
+ * Schedule of the report.
235
+ */
236
+ schedule: pulumi.Input<inputs.ReportSchedule>;
237
+ /**
238
+ * Time range of the report.
239
+ */
240
+ timeRange?: pulumi.Input<inputs.ReportTimeRange>;
241
+ }
package/report.js ADDED
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Report = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * **Note:** This resource is available only with Grafana Enterprise 7.+.
10
+ *
11
+ * * [Official documentation](https://grafana.com/docs/grafana/latest/dashboards/create-reports/)
12
+ * * [HTTP API](https://grafana.com/docs/grafana/latest/developers/http_api/reporting/)
13
+ *
14
+ * ## Example Usage
15
+ *
16
+ * ```typescript
17
+ * import * as pulumi from "@pulumi/pulumi";
18
+ * import * as grafana from "@pulumiverse/grafana";
19
+ *
20
+ * const testDashboard = new grafana.Dashboard("testDashboard", {
21
+ * configJson: `{
22
+ * "title": "Dashboard for report",
23
+ * "uid": "report"
24
+ * }
25
+ * `,
26
+ * message: "inital commit.",
27
+ * });
28
+ * const testReport = new grafana.Report("testReport", {
29
+ * dashboardUid: testDashboard.uid,
30
+ * recipients: ["some@email.com"],
31
+ * schedule: {
32
+ * frequency: "hourly",
33
+ * },
34
+ * });
35
+ * ```
36
+ */
37
+ class Report extends pulumi.CustomResource {
38
+ /**
39
+ * Get an existing Report resource's state with the given name, ID, and optional extra
40
+ * properties used to qualify the lookup.
41
+ *
42
+ * @param name The _unique_ name of the resulting resource.
43
+ * @param id The _unique_ provider ID of the resource to lookup.
44
+ * @param state Any extra arguments used during the lookup.
45
+ * @param opts Optional settings to control the behavior of the CustomResource.
46
+ */
47
+ static get(name, id, state, opts) {
48
+ return new Report(name, state, Object.assign(Object.assign({}, opts), { id: id }));
49
+ }
50
+ /**
51
+ * Returns true if the given object is an instance of Report. This is designed to work even
52
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
53
+ */
54
+ static isInstance(obj) {
55
+ if (obj === undefined || obj === null) {
56
+ return false;
57
+ }
58
+ return obj['__pulumiType'] === Report.__pulumiType;
59
+ }
60
+ constructor(name, argsOrState, opts) {
61
+ let resourceInputs = {};
62
+ opts = opts || {};
63
+ if (opts.id) {
64
+ const state = argsOrState;
65
+ resourceInputs["dashboardId"] = state ? state.dashboardId : undefined;
66
+ resourceInputs["dashboardUid"] = state ? state.dashboardUid : undefined;
67
+ resourceInputs["formats"] = state ? state.formats : undefined;
68
+ resourceInputs["includeDashboardLink"] = state ? state.includeDashboardLink : undefined;
69
+ resourceInputs["includeTableCsv"] = state ? state.includeTableCsv : undefined;
70
+ resourceInputs["layout"] = state ? state.layout : undefined;
71
+ resourceInputs["message"] = state ? state.message : undefined;
72
+ resourceInputs["name"] = state ? state.name : undefined;
73
+ resourceInputs["orgId"] = state ? state.orgId : undefined;
74
+ resourceInputs["orientation"] = state ? state.orientation : undefined;
75
+ resourceInputs["recipients"] = state ? state.recipients : undefined;
76
+ resourceInputs["replyTo"] = state ? state.replyTo : undefined;
77
+ resourceInputs["schedule"] = state ? state.schedule : undefined;
78
+ resourceInputs["timeRange"] = state ? state.timeRange : undefined;
79
+ }
80
+ else {
81
+ const args = argsOrState;
82
+ if ((!args || args.recipients === undefined) && !opts.urn) {
83
+ throw new Error("Missing required property 'recipients'");
84
+ }
85
+ if ((!args || args.schedule === undefined) && !opts.urn) {
86
+ throw new Error("Missing required property 'schedule'");
87
+ }
88
+ resourceInputs["dashboardId"] = args ? args.dashboardId : undefined;
89
+ resourceInputs["dashboardUid"] = args ? args.dashboardUid : undefined;
90
+ resourceInputs["formats"] = args ? args.formats : undefined;
91
+ resourceInputs["includeDashboardLink"] = args ? args.includeDashboardLink : undefined;
92
+ resourceInputs["includeTableCsv"] = args ? args.includeTableCsv : undefined;
93
+ resourceInputs["layout"] = args ? args.layout : undefined;
94
+ resourceInputs["message"] = args ? args.message : undefined;
95
+ resourceInputs["name"] = args ? args.name : undefined;
96
+ resourceInputs["orgId"] = args ? args.orgId : undefined;
97
+ resourceInputs["orientation"] = args ? args.orientation : undefined;
98
+ resourceInputs["recipients"] = args ? args.recipients : undefined;
99
+ resourceInputs["replyTo"] = args ? args.replyTo : undefined;
100
+ resourceInputs["schedule"] = args ? args.schedule : undefined;
101
+ resourceInputs["timeRange"] = args ? args.timeRange : undefined;
102
+ }
103
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
104
+ super(Report.__pulumiType, name, resourceInputs, opts);
105
+ }
106
+ }
107
+ exports.Report = Report;
108
+ /** @internal */
109
+ Report.__pulumiType = 'grafana:index/report:Report';
110
+ //# sourceMappingURL=report.js.map
package/report.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../report.ts"],"names":[],"mappings":"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"}
package/role.d.ts ADDED
@@ -0,0 +1,210 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * **Note:** This resource is available only with Grafana Enterprise 8.+.
6
+ *
7
+ * * [Official documentation](https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/)
8
+ * * [HTTP API](https://grafana.com/docs/grafana/latest/developers/http_api/access_control/)
9
+ *
10
+ * ## Example Usage
11
+ *
12
+ * ```typescript
13
+ * import * as pulumi from "@pulumi/pulumi";
14
+ * import * as grafana from "@pulumiverse/grafana";
15
+ *
16
+ * const superUser = new grafana.Role("superUser", {
17
+ * description: "My Super User description",
18
+ * global: true,
19
+ * permissions: [
20
+ * {
21
+ * action: "org.users:add",
22
+ * scope: "users:*",
23
+ * },
24
+ * {
25
+ * action: "org.users:write",
26
+ * scope: "users:*",
27
+ * },
28
+ * {
29
+ * action: "org.users:read",
30
+ * scope: "users:*",
31
+ * },
32
+ * ],
33
+ * uid: "superuseruid",
34
+ * version: 1,
35
+ * });
36
+ * ```
37
+ *
38
+ * ## Import
39
+ *
40
+ * ```sh
41
+ * $ pulumi import grafana:index/role:Role role_name {{uid}}
42
+ * ```
43
+ */
44
+ export declare class Role extends pulumi.CustomResource {
45
+ /**
46
+ * Get an existing Role resource's state with the given name, ID, and optional extra
47
+ * properties used to qualify the lookup.
48
+ *
49
+ * @param name The _unique_ name of the resulting resource.
50
+ * @param id The _unique_ provider ID of the resource to lookup.
51
+ * @param state Any extra arguments used during the lookup.
52
+ * @param opts Optional settings to control the behavior of the CustomResource.
53
+ */
54
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RoleState, opts?: pulumi.CustomResourceOptions): Role;
55
+ /**
56
+ * Returns true if the given object is an instance of Role. This is designed to work even
57
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
58
+ */
59
+ static isInstance(obj: any): obj is Role;
60
+ /**
61
+ * Whether the role version should be incremented automatically on updates (and set to 1 on creation). This field or `version` should be set.
62
+ */
63
+ readonly autoIncrementVersion: pulumi.Output<boolean | undefined>;
64
+ /**
65
+ * Description of the role.
66
+ */
67
+ readonly description: pulumi.Output<string | undefined>;
68
+ /**
69
+ * Display name of the role. Available with Grafana 8.5+.
70
+ */
71
+ readonly displayName: pulumi.Output<string | undefined>;
72
+ /**
73
+ * Boolean to state whether the role is available across all organizations or not. Defaults to `false`.
74
+ */
75
+ readonly global: pulumi.Output<boolean | undefined>;
76
+ /**
77
+ * Group of the role. Available with Grafana 8.5+.
78
+ */
79
+ readonly group: pulumi.Output<string | undefined>;
80
+ /**
81
+ * Boolean to state whether the role should be visible in the Grafana UI or not. Available with Grafana 8.5+. Defaults to `false`.
82
+ */
83
+ readonly hidden: pulumi.Output<boolean | undefined>;
84
+ /**
85
+ * Name of the role
86
+ */
87
+ readonly name: pulumi.Output<string>;
88
+ /**
89
+ * The Organization ID. If not set, the Org ID defined in the provider block will be used.
90
+ */
91
+ readonly orgId: pulumi.Output<string | undefined>;
92
+ /**
93
+ * Specific set of actions granted by the role.
94
+ */
95
+ readonly permissions: pulumi.Output<outputs.RolePermission[] | undefined>;
96
+ /**
97
+ * Unique identifier of the role. Used for assignments.
98
+ */
99
+ readonly uid: pulumi.Output<string>;
100
+ /**
101
+ * Version of the role. A role is updated only on version increase. This field or `autoIncrementVersion` should be set.
102
+ */
103
+ readonly version: pulumi.Output<number | undefined>;
104
+ /**
105
+ * Create a Role resource with the given unique name, arguments, and options.
106
+ *
107
+ * @param name The _unique_ name of the resource.
108
+ * @param args The arguments to use to populate this resource's properties.
109
+ * @param opts A bag of options that control this resource's behavior.
110
+ */
111
+ constructor(name: string, args?: RoleArgs, opts?: pulumi.CustomResourceOptions);
112
+ }
113
+ /**
114
+ * Input properties used for looking up and filtering Role resources.
115
+ */
116
+ export interface RoleState {
117
+ /**
118
+ * Whether the role version should be incremented automatically on updates (and set to 1 on creation). This field or `version` should be set.
119
+ */
120
+ autoIncrementVersion?: pulumi.Input<boolean>;
121
+ /**
122
+ * Description of the role.
123
+ */
124
+ description?: pulumi.Input<string>;
125
+ /**
126
+ * Display name of the role. Available with Grafana 8.5+.
127
+ */
128
+ displayName?: pulumi.Input<string>;
129
+ /**
130
+ * Boolean to state whether the role is available across all organizations or not. Defaults to `false`.
131
+ */
132
+ global?: pulumi.Input<boolean>;
133
+ /**
134
+ * Group of the role. Available with Grafana 8.5+.
135
+ */
136
+ group?: pulumi.Input<string>;
137
+ /**
138
+ * Boolean to state whether the role should be visible in the Grafana UI or not. Available with Grafana 8.5+. Defaults to `false`.
139
+ */
140
+ hidden?: pulumi.Input<boolean>;
141
+ /**
142
+ * Name of the role
143
+ */
144
+ name?: pulumi.Input<string>;
145
+ /**
146
+ * The Organization ID. If not set, the Org ID defined in the provider block will be used.
147
+ */
148
+ orgId?: pulumi.Input<string>;
149
+ /**
150
+ * Specific set of actions granted by the role.
151
+ */
152
+ permissions?: pulumi.Input<pulumi.Input<inputs.RolePermission>[]>;
153
+ /**
154
+ * Unique identifier of the role. Used for assignments.
155
+ */
156
+ uid?: pulumi.Input<string>;
157
+ /**
158
+ * Version of the role. A role is updated only on version increase. This field or `autoIncrementVersion` should be set.
159
+ */
160
+ version?: pulumi.Input<number>;
161
+ }
162
+ /**
163
+ * The set of arguments for constructing a Role resource.
164
+ */
165
+ export interface RoleArgs {
166
+ /**
167
+ * Whether the role version should be incremented automatically on updates (and set to 1 on creation). This field or `version` should be set.
168
+ */
169
+ autoIncrementVersion?: pulumi.Input<boolean>;
170
+ /**
171
+ * Description of the role.
172
+ */
173
+ description?: pulumi.Input<string>;
174
+ /**
175
+ * Display name of the role. Available with Grafana 8.5+.
176
+ */
177
+ displayName?: pulumi.Input<string>;
178
+ /**
179
+ * Boolean to state whether the role is available across all organizations or not. Defaults to `false`.
180
+ */
181
+ global?: pulumi.Input<boolean>;
182
+ /**
183
+ * Group of the role. Available with Grafana 8.5+.
184
+ */
185
+ group?: pulumi.Input<string>;
186
+ /**
187
+ * Boolean to state whether the role should be visible in the Grafana UI or not. Available with Grafana 8.5+. Defaults to `false`.
188
+ */
189
+ hidden?: pulumi.Input<boolean>;
190
+ /**
191
+ * Name of the role
192
+ */
193
+ name?: pulumi.Input<string>;
194
+ /**
195
+ * The Organization ID. If not set, the Org ID defined in the provider block will be used.
196
+ */
197
+ orgId?: pulumi.Input<string>;
198
+ /**
199
+ * Specific set of actions granted by the role.
200
+ */
201
+ permissions?: pulumi.Input<pulumi.Input<inputs.RolePermission>[]>;
202
+ /**
203
+ * Unique identifier of the role. Used for assignments.
204
+ */
205
+ uid?: pulumi.Input<string>;
206
+ /**
207
+ * Version of the role. A role is updated only on version increase. This field or `autoIncrementVersion` should be set.
208
+ */
209
+ version?: pulumi.Input<number>;
210
+ }