diff --git a/cyral/internal/datalabel/datasource.go b/cyral/internal/datalabel/datasource.go index d32ab2a5..fedd4daa 100644 --- a/cyral/internal/datalabel/datasource.go +++ b/cyral/internal/datalabel/datasource.go @@ -62,7 +62,7 @@ func dataSourceSchema() *schema.Resource { }, }, "classification_rule": { - Description: "Classification rules are used by the [Automatic Data Map](https://cyral.com/docs/policy/automatic-datamap) feature to automatically map data locations to labels. Currently, only `PREDEFINED` labels have classification rules.", + Description: "Classification rules are used by the [Automatic Data Map](https://cyral.com/docs/policy/repo-crawler/use-auto-mapping/) feature to automatically map data locations to labels. Currently, only `PREDEFINED` labels have classification rules.", Type: schema.TypeSet, Computed: true, Elem: &schema.Resource{ diff --git a/cyral/internal/datalabel/resource.go b/cyral/internal/datalabel/resource.go index b03cfa58..13f0f539 100644 --- a/cyral/internal/datalabel/resource.go +++ b/cyral/internal/datalabel/resource.go @@ -66,7 +66,7 @@ func resourceSchema() *schema.Resource { }, "classification_rule": { Description: "Classification rules are used by the " + - "[Automatic Data Map](https://cyral.com/docs/policy/automatic-datamap) feature to automatically map " + + "[Automatic Data Map](https://cyral.com/docs/policy/repo-crawler/use-auto-mapping/) feature to automatically map " + "data locations to labels.", Optional: true, Type: schema.TypeSet, diff --git a/cyral/internal/deprecated/policy/resource.go b/cyral/internal/deprecated/policy/resource.go index 03367405..69f66cd2 100644 --- a/cyral/internal/deprecated/policy/resource.go +++ b/cyral/internal/deprecated/policy/resource.go @@ -27,10 +27,10 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - DeprecationMessage: "For control planes `>= v4.15`, please use resource `cyral_policy_v2` instead.", - Description: "Manages [policies](https://cyral.com/docs/reference/policy). See also: " + + DeprecationMessage: "For control planes `>= v4.15`, use resource `cyral_policy_v2` instead.", + Description: "Manages [policies](https://cyral.com/docs/policy). See also: " + "[Policy Rule](./policy_rule.md). For more information, see the " + - "[Policy Guide](https://cyral.com/docs/policy/overview).", + "[Policy Guide](https://cyral.com/docs/policy).", CreateContext: resourceContextHandler.CreateContext(), ReadContext: resourceContextHandler.ReadContextCustomErrorHandling(&core.IgnoreNotFoundByMessage{ ResName: resourceName, diff --git a/cyral/internal/policy/rule/constants.go b/cyral/internal/deprecated/policy/rule/constants.go similarity index 100% rename from cyral/internal/policy/rule/constants.go rename to cyral/internal/deprecated/policy/rule/constants.go diff --git a/cyral/internal/policy/rule/model.go b/cyral/internal/deprecated/policy/rule/model.go similarity index 100% rename from cyral/internal/policy/rule/model.go rename to cyral/internal/deprecated/policy/rule/model.go diff --git a/cyral/internal/policy/rule/resource.go b/cyral/internal/deprecated/policy/rule/resource.go similarity index 98% rename from cyral/internal/policy/rule/resource.go rename to cyral/internal/deprecated/policy/rule/resource.go index a9880b97..85f7b099 100644 --- a/cyral/internal/policy/rule/resource.go +++ b/cyral/internal/deprecated/policy/rule/resource.go @@ -31,7 +31,8 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [policy rules](https://cyral.com/docs/reference/policy/#rules). " + + DeprecationMessage: "For control planes `>= v4.15`, use resource `cyral_policy_v2` instead.", + Description: "Manages [policy rules](https://cyral.com/docs/policy/#rules). " + "See also the [`cyral_policy`](https://registry.terraform.io/providers/cyralinc/cyral/latest/docs/resources/policy) " + "resource and the [Policy Guide](https://cyral.com/docs/policy#the-rules-block-of-a-policy)." + "\n\n-> 1. Unless you create a default rule, users and groups only have the rights you explicitly grant them." + diff --git a/cyral/internal/policy/rule/resource_test.go b/cyral/internal/deprecated/policy/rule/resource_test.go similarity index 98% rename from cyral/internal/policy/rule/resource_test.go rename to cyral/internal/deprecated/policy/rule/resource_test.go index 37530ca0..56f80727 100644 --- a/cyral/internal/policy/rule/resource_test.go +++ b/cyral/internal/deprecated/policy/rule/resource_test.go @@ -5,7 +5,7 @@ import ( "fmt" "testing" - "github.com/cyralinc/terraform-provider-cyral/cyral/internal/policy/rule" + "github.com/cyralinc/terraform-provider-cyral/cyral/internal/deprecated/policy/rule" "github.com/cyralinc/terraform-provider-cyral/cyral/provider" "github.com/cyralinc/terraform-provider-cyral/cyral/utils" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" diff --git a/cyral/internal/policy/rule/schema_loader.go b/cyral/internal/deprecated/policy/rule/schema_loader.go similarity index 100% rename from cyral/internal/policy/rule/schema_loader.go rename to cyral/internal/deprecated/policy/rule/schema_loader.go diff --git a/cyral/internal/deprecated/resource_cyral_integration_datadog.go b/cyral/internal/deprecated/resource_cyral_integration_datadog.go index f1a067ae..4ce80f41 100644 --- a/cyral/internal/deprecated/resource_cyral_integration_datadog.go +++ b/cyral/internal/deprecated/resource_cyral_integration_datadog.go @@ -40,7 +40,7 @@ func ResourceIntegrationDatadog() *schema.Resource { } return &schema.Resource{ DeprecationMessage: "If configuring Datadog for logging purposes, use resource `cyral_integration_logging` instead.", - Description: "Manages [integration with DataDog](https://cyral.com/docs/integrations/apm/datadog/) " + + Description: "Manages [integration with DataDog](https://cyral.com/docs/integrations/siem/datadog-logs) " + "to push sidecar logs and/or metrics.", CreateContext: contextHandler.CreateContext(), ReadContext: contextHandler.ReadContext(), diff --git a/cyral/internal/deprecated/resource_cyral_integration_elk.go b/cyral/internal/deprecated/resource_cyral_integration_elk.go index f0031f9a..1768e357 100644 --- a/cyral/internal/deprecated/resource_cyral_integration_elk.go +++ b/cyral/internal/deprecated/resource_cyral_integration_elk.go @@ -43,7 +43,7 @@ func ResourceIntegrationELK() *schema.Resource { } return &schema.Resource{ DeprecationMessage: "Use resource `cyral_integration_logging` instead.", - Description: "Manages [integration with ELK](https://cyral.com/docs/integrations/siem/elk/) to push sidecar metrics.", + Description: "Manages [integration with ELK](https://cyral.com/docs/integrations/siem/custom#elk) to push sidecar metrics.", CreateContext: contextHandler.CreateContext(), ReadContext: contextHandler.ReadContext(), UpdateContext: contextHandler.UpdateContext(), diff --git a/cyral/internal/deprecated/resource_cyral_integration_idp.go b/cyral/internal/deprecated/resource_cyral_integration_idp.go index e10f992d..1d54003d 100644 --- a/cyral/internal/deprecated/resource_cyral_integration_idp.go +++ b/cyral/internal/deprecated/resource_cyral_integration_idp.go @@ -406,16 +406,16 @@ var ( "saml_xml_key_name_tranformer": "CERT_SUBJECT", "single_logout_service_url": "", "xml_sig_key_info_key_name_transformer": "CERT_SUBJECT", - "resource_description": "Manages [integration with Active Directory Federation Services](https://cyral.com/docs/sso/sso-adfs#add-your-adfs-as-an-idp-in-cyral) identity provider to allow single-sign on to Cyral.", + "resource_description": "Manages [integration with Active Directory Federation Services](https://cyral.com/docs/integrations/authentication/idp/adfs) identity provider to allow single-sign on to Cyral.", } aadDefaultValuesMap = map[string]interface{}{ "display_name": "Azure Active Directory", - "resource_description": "Manages [integration with Azure Active Directory](https://cyral.com/docs/sso/sso-azure-ad#add-azure-ad-integration-to-cyral) identity provider to allow single-sign on to Cyral.", + "resource_description": "Manages [integration with Azure Active Directory](https://cyral.com/docs/integrations/authentication/idp/azure-ad) identity provider to allow single-sign on to Cyral.", } forgerockDefaultValuesMap = map[string]interface{}{ "display_name": "Forgerock", "ldap_group_attribute": "cn", - "resource_description": "Manages [integration with Forgerock](https://cyral.com/docs/sso/sso-forgerock#add-forgerock-idp-to-cyral) identity provider to allow single-sign on to Cyral.", + "resource_description": "Manages [integration with Forgerock](https://cyral.com/docs/integrations/authentication/idp/forgerock) identity provider to allow single-sign on to Cyral.", } gsuiteDefaultValuesMap = map[string]interface{}{ "display_name": "GSuite", @@ -423,11 +423,11 @@ var ( } oktaDefaultValuesMap = map[string]interface{}{ "display_name": "Okta", - "resource_description": "Manages [integration with Okta](https://cyral.com/docs/sso/sso-okta#in-cyral-management-console-create-okta-integration) identity provider to allow single-sign on to Cyral.", + "resource_description": "Manages [integration with Okta](https://cyral.com/docs/integrations/authentication/idp/okta) identity provider to allow single-sign on to Cyral.", } pingoneDefaultValuesMap = map[string]interface{}{ "display_name": "PingOne", - "resource_description": "Manages integration with PingOne identity provider to allow single-sign on to Cyral.", + "resource_description": "Manages [integration with PingOne](https://cyral.com/docs/integrations/authentication/idp/pingone) identity provider to allow single-sign on to Cyral.", } ) diff --git a/cyral/internal/integration/confextension/mfaduo/resource.go b/cyral/internal/integration/confextension/mfaduo/resource.go index 8256cef7..0b66f985 100644 --- a/cyral/internal/integration/confextension/mfaduo/resource.go +++ b/cyral/internal/integration/confextension/mfaduo/resource.go @@ -8,7 +8,7 @@ import ( func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [integration with Duo MFA](https://cyral.com/docs/mfa/duo).", + Description: "Manages [integration with Duo MFA](https://cyral.com/docs/integrations/authentication/mfa/duo).", CreateContext: ce.CreateResource(resourceName, ce.DuoMFATemplateType), ReadContext: ce.ReadResource(resourceName, ce.DuoMFATemplateType), UpdateContext: ce.UpdateResource(resourceName, ce.DuoMFATemplateType), diff --git a/cyral/internal/integration/confextension/pagerduty/resource.go b/cyral/internal/integration/confextension/pagerduty/resource.go index 7076ad80..2d6269e0 100644 --- a/cyral/internal/integration/confextension/pagerduty/resource.go +++ b/cyral/internal/integration/confextension/pagerduty/resource.go @@ -7,7 +7,7 @@ import ( func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [integration with PagerDuty](https://cyral.com/docs/integrations/incident-response/pagerduty/#in-cyral).", + Description: "Manages [integration with PagerDuty](https://cyral.com/docs/integrations/incident-response/pagerduty).", CreateContext: ce.CreateResource(resourceName, ce.PagerDutyTemplateType), ReadContext: ce.ReadResource(resourceName, ce.PagerDutyTemplateType), UpdateContext: ce.UpdateResource(resourceName, ce.PagerDutyTemplateType), diff --git a/cyral/internal/integration/idpsaml/resource.go b/cyral/internal/integration/idpsaml/resource.go index 569e7f54..a7a9e3a3 100644 --- a/cyral/internal/integration/idpsaml/resource.go +++ b/cyral/internal/integration/idpsaml/resource.go @@ -111,7 +111,7 @@ func DeleteGenericSAMLConfig() core.ResourceOperationConfig { func resourceSchema() *schema.Resource { return &schema.Resource{ Description: "Manages identity provider (IdP) integrations using SAML to allow " + - "[Single Sing-On](https://cyral.com/docs/sso/overview) to Cyral.\n\nSee also " + + "[Single Sing-On](https://cyral.com/docs/integrations/authentication/idp/) to Cyral.\n\nSee also " + "the remaining SAML-related resources and data sources.", CreateContext: core.CRUDResources( []core.ResourceOperationConfig{ diff --git a/cyral/internal/integration/slack/resource.go b/cyral/internal/integration/slack/resource.go index 9bfb8ff3..3d1e9dda 100644 --- a/cyral/internal/integration/slack/resource.go +++ b/cyral/internal/integration/slack/resource.go @@ -21,7 +21,7 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [integration with Slack to push alerts](https://cyral.com/docs/integrations/messaging/slack).", + Description: "Manages [integration with Slack to push alerts](https://cyral.com/docs/integrations/alerting/slack).", CreateContext: resourceContextHandler.CreateContext(), ReadContext: resourceContextHandler.ReadContext(), UpdateContext: resourceContextHandler.UpdateContext(), diff --git a/cyral/internal/integration/teams/resource.go b/cyral/internal/integration/teams/resource.go index 945a2082..3799d049 100644 --- a/cyral/internal/integration/teams/resource.go +++ b/cyral/internal/integration/teams/resource.go @@ -21,7 +21,7 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [integration with Microsoft Teams](https://cyral.com/docs/integrations/messaging/microsoft-teams/).", + Description: "Manages [integration with Microsoft Teams](https://cyral.com/docs/integrations/alerting/microsoft-teams).", CreateContext: resourceContextHandler.CreateContext(), ReadContext: resourceContextHandler.ReadContext(), UpdateContext: resourceContextHandler.UpdateContext(), diff --git a/cyral/internal/regopolicy/resource.go b/cyral/internal/regopolicy/resource.go index cc659a77..d57df80e 100644 --- a/cyral/internal/regopolicy/resource.go +++ b/cyral/internal/regopolicy/resource.go @@ -78,7 +78,7 @@ var ( func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages a [Rego Policy](https://cyral.com/docs/policy/rego-policy/overview#) instance." + + Description: "Manages a Rego Policy instance." + "\n\n-> **Note** This resource can be used to create repo-level policies by specifying the repo IDs " + "associated to the policy `scope`. For more information, see the [scope](#nestedblock--scope) field.", CreateContext: resourceContextHandler.CreateContext(), diff --git a/cyral/internal/repository/binding/resource.go b/cyral/internal/repository/binding/resource.go index 728e9822..6b934656 100644 --- a/cyral/internal/repository/binding/resource.go +++ b/cyral/internal/repository/binding/resource.go @@ -33,7 +33,7 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [cyral repository to sidecar bindings](https://cyral.com/docs/sidecars/sidecar-assign-repo).", + Description: "Manages [cyral repository to sidecar bindings](https://cyral.com/docs/sidecars/manage/bind-repo/).", CreateContext: resourceContextHandler.CreateContext(), ReadContext: resourceContextHandler.ReadContext(), UpdateContext: resourceContextHandler.UpdateContext(), diff --git a/cyral/internal/repository/confauth/resource.go b/cyral/internal/repository/confauth/resource.go index 0fbf0fd4..d583165e 100644 --- a/cyral/internal/repository/confauth/resource.go +++ b/cyral/internal/repository/confauth/resource.go @@ -39,10 +39,9 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages Repository Analysis Configuration. This resource allows configuring both " + - "[Log Settings](https://cyral.com/docs/manage-repositories/repo-log-volume) " + - "and [Advanced settings](https://cyral.com/docs/manage-repositories/repo-advanced-settings) " + - "(Logs, Alerts, Analysis and Enforcement) configurations for Data Repositories.", + Description: "Manages Repository Analysis Configuration. This resource allows configuring " + + "Logs, Alerts, Analysis and Enforcement configurations for Data Repositories." + + "[See also](https://cyral.com/docs/data-repos/config).", CreateContext: resourceRepositoryConfAuthCreate, ReadContext: resourceContextHandler.ReadContextCustomErrorHandling(&core.IgnoreNotFoundByMessage{ ResName: resourceName, diff --git a/cyral/internal/repository/datamap/resource.go b/cyral/internal/repository/datamap/resource.go index 055693e9..93ab8060 100644 --- a/cyral/internal/repository/datamap/resource.go +++ b/cyral/internal/repository/datamap/resource.go @@ -83,7 +83,7 @@ func resourceSchema() *schema.Resource { "location in `attributes`, separating spaces by dots. For example, an attribute " + "`my_attr` from table `my_tbl` within space `inner_space` within space `outer_space` " + "would be referenced as `outer_space.inner_space.my_tbl.my_attr`. For more information, " + - "please see the [Policy Guide](https://cyral.com/docs/reference/policy/).", + "please see the [Policy Guide](https://cyral.com/docs/policy/).", Type: schema.TypeList, Required: true, // TODO: this ForceNew propagates to the parent attribute `mapping`. Therefore, any diff --git a/cyral/internal/repository/network/resource.go b/cyral/internal/repository/network/resource.go index 087b835c..172782d0 100644 --- a/cyral/internal/repository/network/resource.go +++ b/cyral/internal/repository/network/resource.go @@ -31,7 +31,7 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ Description: "Manages the network access policy of a repository. Network access policies are" + - " also known as the [Network Shield](https://cyral.com/docs/manage-repositories/network-shield/)." + + " also known as the [Network Shield](https://cyral.com/docs/data-repos/network-shield/)." + " This feature is supported for the following repository types:" + utils.SupportedValuesAsMarkdown(repositoryTypesNetworkShield()) + "\n\n-> **Note** If you also use the resource `cyral_repository_conf_auth` for the same repository," + diff --git a/cyral/internal/repository/resource.go b/cyral/internal/repository/resource.go index c7cba459..a7a7442c 100644 --- a/cyral/internal/repository/resource.go +++ b/cyral/internal/repository/resource.go @@ -26,9 +26,7 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [repositories](https://cyral.com/docs/manage-repositories/repo-track)." + - "\n\nSee also [Cyral Repository Configuration Module](https://github.com/cyralinc/terraform-cyral-repository-config)." + - "\nThis module provides the repository configuration options as shown in Cyral UI.", + Description: "Manages [repositories](https://cyral.com/docs/how-to/track-repos/).", CreateContext: resourceContextHandler.CreateContext(), ReadContext: resourceContextHandler.ReadContext(), UpdateContext: resourceContextHandler.UpdateContext(), diff --git a/cyral/internal/role/datasource.go b/cyral/internal/role/datasource.go index 70d3fb58..6d5b79da 100644 --- a/cyral/internal/role/datasource.go +++ b/cyral/internal/role/datasource.go @@ -96,7 +96,7 @@ func dataSourceRoleReadConfig() core.ResourceOperationConfig { func dataSourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Retrieve and filter [roles](https://cyral.com/docs/account-administration/acct-manage-cyral-roles/) that exist in the Cyral Control Plane.", + Description: "Retrieve and filter [roles](https://cyral.com/docs/user-administration/manage-cyral-roles/) that exist in the Cyral Control Plane.", ReadContext: core.ReadResource(dataSourceRoleReadConfig()), Schema: map[string]*schema.Schema{ "name": { diff --git a/cyral/internal/role/resource.go b/cyral/internal/role/resource.go index 368ff38e..c75075a6 100644 --- a/cyral/internal/role/resource.go +++ b/cyral/internal/role/resource.go @@ -21,7 +21,7 @@ var urlFactory = func(d *schema.ResourceData, c *client.Client) string { func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [roles for Cyral control plane users](https://cyral.com/docs/account-administration/acct-manage-cyral-roles/#create-and-manage-administrator-roles-for-cyral-control-plane-users). See also: [Role SSO Groups](./role_sso_groups.md).", + Description: "Manages [roles for Cyral control plane users](https://cyral.com/docs/user-administration/manage-cyral-roles/#create-and-manage-administrator-roles-for-cyral-control-plane-users). See also: [Role SSO Groups](./role_sso_groups.md).", CreateContext: resourceRoleCreate, ReadContext: resourceRoleRead, diff --git a/cyral/internal/role/ssogroups/resource.go b/cyral/internal/role/ssogroups/resource.go index 4867ee61..d9575cde 100644 --- a/cyral/internal/role/ssogroups/resource.go +++ b/cyral/internal/role/ssogroups/resource.go @@ -13,7 +13,7 @@ import ( func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [mapping SSO groups to specific roles](https://cyral.com/docs/account-administration/acct-manage-cyral-roles/#map-an-sso-group-to-a-cyral-administrator-role) on Cyral control plane. See also: [Role](./role.md).", + Description: "Manages [mapping SSO groups to specific roles](https://cyral.com/docs/user-administration/manage-cyral-roles/#map-an-sso-group-to-a-cyral-administrator-role) on Cyral control plane. See also: [Role](./role.md).", CreateContext: core.CreateResource(createRoleSSOGroupsConfig, readRoleSSOGroupsConfig), ReadContext: core.ReadResource(readRoleSSOGroupsConfig), DeleteContext: core.DeleteResource(deleteRoleSSOGroupsConfig), diff --git a/cyral/internal/sidecar/credentials/resource.go b/cyral/internal/sidecar/credentials/resource.go index 615b2f2f..51a2434a 100644 --- a/cyral/internal/sidecar/credentials/resource.go +++ b/cyral/internal/sidecar/credentials/resource.go @@ -22,7 +22,7 @@ var resourceContextHandler = core.DefaultContextHandler{ func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Create new [credentials for Cyral sidecar](https://cyral.com/docs/sidecars/sidecar-manage/#rotate-the-client-secret-for-a-sidecar).", + Description: "Create new [credentials for Cyral sidecar](https://cyral.com/docs/sidecars/manage/#rotate-the-client-secret-for-a-sidecar).", CreateContext: resourceContextHandler.CreateContext(), ReadContext: resourceContextHandler.ReadContext(), DeleteContext: resourceContextHandler.DeleteContext(), diff --git a/cyral/internal/sidecar/health/datasource.go b/cyral/internal/sidecar/health/datasource.go index 8eb39948..f51822d6 100644 --- a/cyral/internal/sidecar/health/datasource.go +++ b/cyral/internal/sidecar/health/datasource.go @@ -43,7 +43,7 @@ func dataSourceSchema() *schema.Resource { utils.StatusKey: { Description: "Sidecar health status. Possible values are: `HEALTHY`, `DEGRADED`, `UNHEALTHY` " + "and `UNKNOWN`. For more information, see " + - "[Sidecar Status](https://cyral.com/docs/sidecars/sidecar-manage/#check-sidecar-cluster-status).", + "[Sidecar Status](https://cyral.com/docs/sidecars/manage/#check-sidecar-cluster-status).", Type: schema.TypeString, Computed: true, }, diff --git a/cyral/internal/sidecar/listener/resource.go b/cyral/internal/sidecar/listener/resource.go index 4dc69f18..be540fba 100644 --- a/cyral/internal/sidecar/listener/resource.go +++ b/cyral/internal/sidecar/listener/resource.go @@ -41,7 +41,7 @@ var resourceContextHandler = core.DefaultContextHandler{ // DELETE {{baseURL}}/sidecars/:sidecarID/listeners/:listenerID (Delete a listener) func resourceSchema() *schema.Resource { return &schema.Resource{ - Description: "Manages [sidecar listeners](https://cyral.com/docs/sidecars/sidecar-listeners)." + + Description: "Manages sidecar listeners." + "\n~> **Warning** Multiple listeners can be associated to a single sidecar as long as " + "`host` and `port` are unique. If `host` is omitted, then `port` must be unique.", CreateContext: resourceContextHandler.CreateContext(), diff --git a/cyral/internal/sidecar/resource.go b/cyral/internal/sidecar/resource.go index 7de5ce6f..5bce2715 100644 --- a/cyral/internal/sidecar/resource.go +++ b/cyral/internal/sidecar/resource.go @@ -134,7 +134,7 @@ func resourceSchema() *schema.Resource { Optional: true, }, "bypass_mode": { - Description: "This argument lets you specify how to handle the connection in the event of an error in the sidecar during a user’s session. Valid modes are: `always`, `failover` or `never`. Defaults to `failover`. If `always` is specified, the sidecar will run in [passthrough mode](https://cyral.com/docs/sidecars/sidecar-manage#passthrough-mode). If `failover` is specified, the sidecar will run in [resiliency mode](https://cyral.com/docs/sidecars/sidecar-manage#resilient-mode-of-sidecar-operation). If `never` is specified and there is an error in the sidecar, connections to bound repositories will fail.", + Description: "This argument lets you specify how to handle the connection in the event of an error in the sidecar during a user’s session. Valid modes are: `always`, `failover` or `never`. Defaults to `failover`. If `always` is specified, the sidecar will run in [passthrough mode](https://cyral.com/docs/sidecars/manage#passthrough-mode). If `failover` is specified, the sidecar will run in [resiliency mode](https://cyral.com/docs/sidecars/manage#resilient-mode-of-sidecar-operation). If `never` is specified and there is an error in the sidecar, connections to bound repositories will fail.", Type: schema.TypeString, Optional: true, Default: "failover", diff --git a/cyral/provider/schema_loader.go b/cyral/provider/schema_loader.go index 94cae88a..0cc34034 100644 --- a/cyral/provider/schema_loader.go +++ b/cyral/provider/schema_loader.go @@ -4,6 +4,7 @@ import ( "github.com/cyralinc/terraform-provider-cyral/cyral/core" "github.com/cyralinc/terraform-provider-cyral/cyral/internal/datalabel" deprecated_policy "github.com/cyralinc/terraform-provider-cyral/cyral/internal/deprecated/policy" + deprecated_policy_rule "github.com/cyralinc/terraform-provider-cyral/cyral/internal/deprecated/policy/rule" integration_awsiam "github.com/cyralinc/terraform-provider-cyral/cyral/internal/integration/awsiam" integration_mfa_duo "github.com/cyralinc/terraform-provider-cyral/cyral/internal/integration/confextension/mfaduo" integration_pager_duty "github.com/cyralinc/terraform-provider-cyral/cyral/internal/integration/confextension/pagerduty" @@ -14,7 +15,6 @@ import ( integration_slack "github.com/cyralinc/terraform-provider-cyral/cyral/internal/integration/slack" integration_teams "github.com/cyralinc/terraform-provider-cyral/cyral/internal/integration/teams" "github.com/cyralinc/terraform-provider-cyral/cyral/internal/permission" - policy_rule "github.com/cyralinc/terraform-provider-cyral/cyral/internal/policy/rule" policyv2 "github.com/cyralinc/terraform-provider-cyral/cyral/internal/policy/v2" "github.com/cyralinc/terraform-provider-cyral/cyral/internal/regopolicy" "github.com/cyralinc/terraform-provider-cyral/cyral/internal/repository" @@ -44,6 +44,7 @@ func packagesSchemas() []core.PackageSchema { v := []core.PackageSchema{ datalabel.PackageSchema(), deprecated_policy.PackageSchema(), + deprecated_policy_rule.PackageSchema(), integration_awsiam.PackageSchema(), integration_hcvault.PackageSchema(), integration_idp_saml.PackageSchema(), @@ -54,9 +55,8 @@ func packagesSchemas() []core.PackageSchema { integration_slack.PackageSchema(), integration_teams.PackageSchema(), permission.PackageSchema(), - policy_rule.PackageSchema(), - regopolicy.PackageSchema(), policyv2.PackageSchema(), + regopolicy.PackageSchema(), repository.PackageSchema(), repository_accessgateway.PackageSchema(), repository_accessrules.PackageSchema(), diff --git a/docs/data-sources/role.md b/docs/data-sources/role.md index d8278171..0cf80b54 100644 --- a/docs/data-sources/role.md +++ b/docs/data-sources/role.md @@ -3,12 +3,12 @@ page_title: "cyral_role Data Source - terraform-provider-cyral" subcategory: "" description: |- - Retrieve and filter roles https://cyral.com/docs/account-administration/acct-manage-cyral-roles/ that exist in the Cyral Control Plane. + Retrieve and filter roles https://cyral.com/docs/user-administration/manage-cyral-roles/ that exist in the Cyral Control Plane. --- # cyral_role (Data Source) -Retrieve and filter [roles](https://cyral.com/docs/account-administration/acct-manage-cyral-roles/) that exist in the Cyral Control Plane. +Retrieve and filter [roles](https://cyral.com/docs/user-administration/manage-cyral-roles/) that exist in the Cyral Control Plane. ## Example Usage diff --git a/docs/data-sources/sidecar_health.md b/docs/data-sources/sidecar_health.md index a08f4d11..37bf9443 100644 --- a/docs/data-sources/sidecar_health.md +++ b/docs/data-sources/sidecar_health.md @@ -21,4 +21,4 @@ Retrieve aggregated information about the [sidecar's health](https://cyral.com/d ### Read-Only - `id` (String) Data source identifier. -- `status` (String) Sidecar health status. Possible values are: `HEALTHY`, `DEGRADED`, `UNHEALTHY` and `UNKNOWN`. For more information, see [Sidecar Status](https://cyral.com/docs/sidecars/sidecar-manage/#check-sidecar-cluster-status). +- `status` (String) Sidecar health status. Possible values are: `HEALTHY`, `DEGRADED`, `UNHEALTHY` and `UNKNOWN`. For more information, see [Sidecar Status](https://cyral.com/docs/sidecars/manage/#check-sidecar-cluster-status). diff --git a/docs/resources/datalabel.md b/docs/resources/datalabel.md index e0ff078f..e6086aa0 100644 --- a/docs/resources/datalabel.md +++ b/docs/resources/datalabel.md @@ -35,7 +35,7 @@ resource "cyral_datalabel" "NAME" { ### Optional -- `classification_rule` (Block Set, Max: 1) Classification rules are used by the [Automatic Data Map](https://cyral.com/docs/policy/automatic-datamap) feature to automatically map data locations to labels. (see [below for nested schema](#nestedblock--classification_rule)) +- `classification_rule` (Block Set, Max: 1) Classification rules are used by the [Automatic Data Map](https://cyral.com/docs/policy/repo-crawler/use-auto-mapping/) feature to automatically map data locations to labels. (see [below for nested schema](#nestedblock--classification_rule)) - `description` (String) Description of the data label. - `tags` (List of String) Tags that can be used to categorize data labels. diff --git a/docs/resources/integration_idp_forgerock.md b/docs/resources/integration_idp_forgerock.md index c3938dda..cbbc7c19 100644 --- a/docs/resources/integration_idp_forgerock.md +++ b/docs/resources/integration_idp_forgerock.md @@ -1,6 +1,6 @@ # cyral_integration_idp_forgerock (Resource) -Manages [integration with Forgerock](https://cyral.com/docs/sso/sso-forgerock#add-forgerock-idp-to-cyral) identity provider to allow single-sign on to Cyral. +Manages [integration with Forgerock](https://cyral.com/docs/integrations/authentication/idp/forgerock) identity provider to allow single-sign on to Cyral. ## Example Usage diff --git a/docs/resources/integration_idp_saml.md b/docs/resources/integration_idp_saml.md index 1873bf52..21b9b101 100644 --- a/docs/resources/integration_idp_saml.md +++ b/docs/resources/integration_idp_saml.md @@ -1,6 +1,6 @@ # cyral_integration_idp_saml (Resource) -Manages identity provider (IdP) integrations using SAML to allow [Single Sing-On](https://cyral.com/docs/sso/overview) to Cyral. +Manages identity provider (IdP) integrations using SAML to allow [Single Sing-On](https://cyral.com/docs/integrations/authentication/idp/) to Cyral. See also the remaining SAML-related resources and data sources. diff --git a/docs/resources/integration_mfa_duo.md b/docs/resources/integration_mfa_duo.md index daa9eab9..8ce8bbe7 100644 --- a/docs/resources/integration_mfa_duo.md +++ b/docs/resources/integration_mfa_duo.md @@ -3,12 +3,12 @@ page_title: "cyral_integration_mfa_duo Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages integration with Duo MFA https://cyral.com/docs/mfa/duo. + Manages integration with Duo MFA https://cyral.com/docs/integrations/authentication/mfa/duo. --- # cyral_integration_mfa_duo (Resource) -Manages [integration with Duo MFA](https://cyral.com/docs/mfa/duo). +Manages [integration with Duo MFA](https://cyral.com/docs/integrations/authentication/mfa/duo). diff --git a/docs/resources/integration_microsoft_teams.md b/docs/resources/integration_microsoft_teams.md index cee3046c..8fa8879e 100644 --- a/docs/resources/integration_microsoft_teams.md +++ b/docs/resources/integration_microsoft_teams.md @@ -3,12 +3,12 @@ page_title: "cyral_integration_microsoft_teams Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages integration with Microsoft Teams https://cyral.com/docs/integrations/messaging/microsoft-teams/. + Manages integration with Microsoft Teams https://cyral.com/docs/integrations/alerting/microsoft-teams. --- # cyral_integration_microsoft_teams (Resource) -Manages [integration with Microsoft Teams](https://cyral.com/docs/integrations/messaging/microsoft-teams/). +Manages [integration with Microsoft Teams](https://cyral.com/docs/integrations/alerting/microsoft-teams). ## Example Usage diff --git a/docs/resources/integration_pager_duty.md b/docs/resources/integration_pager_duty.md index da818cc9..11a16c8c 100644 --- a/docs/resources/integration_pager_duty.md +++ b/docs/resources/integration_pager_duty.md @@ -3,12 +3,12 @@ page_title: "cyral_integration_pager_duty Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages integration with PagerDuty https://cyral.com/docs/integrations/incident-response/pagerduty/#in-cyral. + Manages integration with PagerDuty https://cyral.com/docs/integrations/incident-response/pagerduty. --- # cyral_integration_pager_duty (Resource) -Manages [integration with PagerDuty](https://cyral.com/docs/integrations/incident-response/pagerduty/#in-cyral). +Manages [integration with PagerDuty](https://cyral.com/docs/integrations/incident-response/pagerduty). ## Example Usage diff --git a/docs/resources/integration_slack_alerts.md b/docs/resources/integration_slack_alerts.md index b8ca12a6..64c8feb8 100644 --- a/docs/resources/integration_slack_alerts.md +++ b/docs/resources/integration_slack_alerts.md @@ -3,12 +3,12 @@ page_title: "cyral_integration_slack_alerts Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages integration with Slack to push alerts https://cyral.com/docs/integrations/messaging/slack. + Manages integration with Slack to push alerts https://cyral.com/docs/integrations/alerting/slack. --- # cyral_integration_slack_alerts (Resource) -Manages [integration with Slack to push alerts](https://cyral.com/docs/integrations/messaging/slack). +Manages [integration with Slack to push alerts](https://cyral.com/docs/integrations/alerting/slack). ## Example Usage diff --git a/docs/resources/policy.md b/docs/resources/policy.md index faac5209..3c75f68b 100644 --- a/docs/resources/policy.md +++ b/docs/resources/policy.md @@ -3,12 +3,12 @@ page_title: "cyral_policy Resource - terraform-provider-cyral" subcategory: "" description: |- - ~> DEPRECATED For control planes >= v4.15, please use resource cyral_policy_v2 instead. + ~> DEPRECATED For control planes >= v4.15, use resource cyral_policy_v2 instead. --- # cyral_policy (Resource) -~> **DEPRECATED** For control planes `>= v4.15`, please use resource `cyral_policy_v2` instead. +~> **DEPRECATED** For control planes `>= v4.15`, use resource `cyral_policy_v2` instead. ## Example Usage diff --git a/docs/resources/policy_rule.md b/docs/resources/policy_rule.md index ba166362..0d28c1b6 100644 --- a/docs/resources/policy_rule.md +++ b/docs/resources/policy_rule.md @@ -1,8 +1,6 @@ # cyral_policy_rule (Resource) -Manages [policy rules](https://cyral.com/docs/reference/policy/#rules). See also the [`cyral_policy`](https://registry.terraform.io/providers/cyralinc/cyral/latest/docs/resources/policy) resource and the [Policy Guide](https://cyral.com/docs/policy#the-rules-block-of-a-policy). - --> 1. Unless you create a default rule, users and groups only have the rights you explicitly grant them.
2. Each contexted rule comprises these fields: `data`, `rows`, `severity` `additional_checks`, `dataset_rewrites`. The only required fields are `data` and `rows`.
3. The rules block does not need to include all three operation types (reads, updates and deletes); actions you omit are disallowed.
4. If you do not include a hosts block, Cyral does not enforce limits based on the connecting client's host address. +~> **DEPRECATED** For control planes `>= v4.15`, use resource `cyral_policy_v2` instead. -> Import ID syntax is `{policy_id}/{policy_rule_id}`, where `{policy_rule_id}` is the ID of the policy rule in the Cyral Control Plane. diff --git a/docs/resources/rego_policy_instance.md b/docs/resources/rego_policy_instance.md index 9fbf657c..b7e35343 100644 --- a/docs/resources/rego_policy_instance.md +++ b/docs/resources/rego_policy_instance.md @@ -1,6 +1,6 @@ # cyral_rego_policy_instance (Resource) -Manages a [Rego Policy](https://cyral.com/docs/policy/rego-policy/overview#) instance. +Manages a Rego Policy instance. -> **Note** This resource can be used to create repo-level policies by specifying the repo IDs associated to the policy `scope`. For more information, see the [scope](#nestedblock--scope) field. diff --git a/docs/resources/repository.md b/docs/resources/repository.md index ccd151cc..65f065fb 100644 --- a/docs/resources/repository.md +++ b/docs/resources/repository.md @@ -1,9 +1,6 @@ # cyral_repository (Resource) -Manages [repositories](https://cyral.com/docs/manage-repositories/repo-track). - -See also [Cyral Repository Configuration Module](https://github.com/cyralinc/terraform-cyral-repository-config). -This module provides the repository configuration options as shown in Cyral UI. +Manages [repositories](https://cyral.com/docs/how-to/track-repos/). -> Import ID syntax is `{repository_id}`. diff --git a/docs/resources/repository_binding.md b/docs/resources/repository_binding.md index 0b9e82e7..00fc897b 100644 --- a/docs/resources/repository_binding.md +++ b/docs/resources/repository_binding.md @@ -1,6 +1,6 @@ # cyral_repository_binding (Resource) -Manages [cyral repository to sidecar bindings](https://cyral.com/docs/sidecars/sidecar-assign-repo). +Manages [cyral repository to sidecar bindings](https://cyral.com/docs/sidecars/manage/bind-repo/). -> Import ID syntax is `{sidecar_id}/{binding_id}`. diff --git a/docs/resources/repository_conf_auth.md b/docs/resources/repository_conf_auth.md index cea3e802..cbd7f187 100644 --- a/docs/resources/repository_conf_auth.md +++ b/docs/resources/repository_conf_auth.md @@ -1,6 +1,6 @@ # cyral_repository_conf_auth (Resource) -Manages Repository Analysis Configuration. This resource allows configuring both [Log Settings](https://cyral.com/docs/manage-repositories/repo-log-volume) and [Advanced settings](https://cyral.com/docs/manage-repositories/repo-advanced-settings) (Logs, Alerts, Analysis and Enforcement) configurations for Data Repositories. +Manages Repository Analysis Configuration. This resource allows configuring Logs, Alerts, Analysis and Enforcement configurations for Data Repositories.[See also](https://cyral.com/docs/data-repos/config). -> Import ID syntax is `{repository_id}`. diff --git a/docs/resources/repository_datamap.md b/docs/resources/repository_datamap.md index 3f779462..44cd1b60 100644 --- a/docs/resources/repository_datamap.md +++ b/docs/resources/repository_datamap.md @@ -80,6 +80,6 @@ Required: - `attributes` (List of String) List containing the specific locations of the data within the repo, following the pattern `{SCHEMA}.{TABLE}.{ATTRIBUTE}` (ex: `[your_schema_name.your_table_name.your_attr_name]`). --> When referencing data in Dremio repository, please include the complete location in `attributes`, separating spaces by dots. For example, an attribute `my_attr` from table `my_tbl` within space `inner_space` within space `outer_space` would be referenced as `outer_space.inner_space.my_tbl.my_attr`. For more information, please see the [Policy Guide](https://cyral.com/docs/reference/policy/). +-> When referencing data in Dremio repository, please include the complete location in `attributes`, separating spaces by dots. For example, an attribute `my_attr` from table `my_tbl` within space `inner_space` within space `outer_space` would be referenced as `outer_space.inner_space.my_tbl.my_attr`. For more information, please see the [Policy Guide](https://cyral.com/docs/policy/). - `label` (String) Label given to the attributes in this mapping. diff --git a/docs/resources/repository_network_access_policy.md b/docs/resources/repository_network_access_policy.md index be353562..80f49af4 100644 --- a/docs/resources/repository_network_access_policy.md +++ b/docs/resources/repository_network_access_policy.md @@ -3,14 +3,14 @@ page_title: "cyral_repository_network_access_policy Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages the network access policy of a repository. Network access policies are also known as the Network Shield https://cyral.com/docs/manage-repositories/network-shield/. This feature is supported for the following repository types: + Manages the network access policy of a repository. Network access policies are also known as the Network Shield https://cyral.com/docs/data-repos/network-shield/. This feature is supported for the following repository types: sqlserveroracle -> Note If you also use the resource cyral_repository_conf_auth for the same repository, create a depends_on relationship from this resource to the cyral_repository_conf_auth to avoid errors when running terraform destroy. --- # cyral_repository_network_access_policy (Resource) -Manages the network access policy of a repository. Network access policies are also known as the [Network Shield](https://cyral.com/docs/manage-repositories/network-shield/). This feature is supported for the following repository types: +Manages the network access policy of a repository. Network access policies are also known as the [Network Shield](https://cyral.com/docs/data-repos/network-shield/). This feature is supported for the following repository types: - `sqlserver` - `oracle` diff --git a/docs/resources/role.md b/docs/resources/role.md index 7f71a04a..d04b2fd0 100644 --- a/docs/resources/role.md +++ b/docs/resources/role.md @@ -3,12 +3,12 @@ page_title: "cyral_role Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages roles for Cyral control plane users https://cyral.com/docs/account-administration/acct-manage-cyral-roles/#create-and-manage-administrator-roles-for-cyral-control-plane-users. See also: Role SSO Groups ./role_sso_groups.md. + Manages roles for Cyral control plane users https://cyral.com/docs/user-administration/manage-cyral-roles/#create-and-manage-administrator-roles-for-cyral-control-plane-users. See also: Role SSO Groups ./role_sso_groups.md. --- # cyral_role (Resource) -Manages [roles for Cyral control plane users](https://cyral.com/docs/account-administration/acct-manage-cyral-roles/#create-and-manage-administrator-roles-for-cyral-control-plane-users). See also: [Role SSO Groups](./role_sso_groups.md). +Manages [roles for Cyral control plane users](https://cyral.com/docs/user-administration/manage-cyral-roles/#create-and-manage-administrator-roles-for-cyral-control-plane-users). See also: [Role SSO Groups](./role_sso_groups.md). ## Example Usage diff --git a/docs/resources/role_sso_groups.md b/docs/resources/role_sso_groups.md index 646f6087..1d156ff8 100644 --- a/docs/resources/role_sso_groups.md +++ b/docs/resources/role_sso_groups.md @@ -3,12 +3,12 @@ page_title: "cyral_role_sso_groups Resource - terraform-provider-cyral" subcategory: "" description: |- - Manages mapping SSO groups to specific roles https://cyral.com/docs/account-administration/acct-manage-cyral-roles/#map-an-sso-group-to-a-cyral-administrator-role on Cyral control plane. See also: Role ./role.md. + Manages mapping SSO groups to specific roles https://cyral.com/docs/user-administration/manage-cyral-roles/#map-an-sso-group-to-a-cyral-administrator-role on Cyral control plane. See also: Role ./role.md. --- # cyral_role_sso_groups (Resource) -Manages [mapping SSO groups to specific roles](https://cyral.com/docs/account-administration/acct-manage-cyral-roles/#map-an-sso-group-to-a-cyral-administrator-role) on Cyral control plane. See also: [Role](./role.md). +Manages [mapping SSO groups to specific roles](https://cyral.com/docs/user-administration/manage-cyral-roles/#map-an-sso-group-to-a-cyral-administrator-role) on Cyral control plane. See also: [Role](./role.md). ## Example Usage diff --git a/docs/resources/sidecar.md b/docs/resources/sidecar.md index 3fd4a73c..9c5544b0 100644 --- a/docs/resources/sidecar.md +++ b/docs/resources/sidecar.md @@ -34,7 +34,7 @@ resource "cyral_sidecar" "some_resource_name" { ### Optional - `activity_log_integration_id` (String) ID of the log integration mapped to this sidecar, used for Cyral activity logs. -- `bypass_mode` (String) This argument lets you specify how to handle the connection in the event of an error in the sidecar during a user’s session. Valid modes are: `always`, `failover` or `never`. Defaults to `failover`. If `always` is specified, the sidecar will run in [passthrough mode](https://cyral.com/docs/sidecars/sidecar-manage#passthrough-mode). If `failover` is specified, the sidecar will run in [resiliency mode](https://cyral.com/docs/sidecars/sidecar-manage#resilient-mode-of-sidecar-operation). If `never` is specified and there is an error in the sidecar, connections to bound repositories will fail. +- `bypass_mode` (String) This argument lets you specify how to handle the connection in the event of an error in the sidecar during a user’s session. Valid modes are: `always`, `failover` or `never`. Defaults to `failover`. If `always` is specified, the sidecar will run in [passthrough mode](https://cyral.com/docs/sidecars/manage#passthrough-mode). If `failover` is specified, the sidecar will run in [resiliency mode](https://cyral.com/docs/sidecars/manage#resilient-mode-of-sidecar-operation). If `never` is specified and there is an error in the sidecar, connections to bound repositories will fail. - `certificate_bundle_secrets` (Block Set, Max: 1, Deprecated) Certificate Bundle Secret is a configuration that holds data about the location of a particular TLS certificate bundle in a secrets manager. (see [below for nested schema](#nestedblock--certificate_bundle_secrets)) - `diagnostic_log_integration_id` (String) ID of the log integration mapped to this sidecar, used for sidecar diagnostic logs. - `labels` (List of String) Labels that can be attached to the sidecar and shown in the `Tags` field in the UI. diff --git a/docs/resources/sidecar_credentials.md b/docs/resources/sidecar_credentials.md index cc9da5f3..bf26863f 100644 --- a/docs/resources/sidecar_credentials.md +++ b/docs/resources/sidecar_credentials.md @@ -1,6 +1,6 @@ # cyral_sidecar_credentials (Resource) -Create new [credentials for Cyral sidecar](https://cyral.com/docs/sidecars/sidecar-manage/#rotate-the-client-secret-for-a-sidecar). +Create new [credentials for Cyral sidecar](https://cyral.com/docs/sidecars/manage/#rotate-the-client-secret-for-a-sidecar). Consider using a remote backend to encrypt the state of this resource if it sounds appropriate. For instance: diff --git a/docs/resources/sidecar_listener.md b/docs/resources/sidecar_listener.md index 6fd0db9a..b0d05369 100644 --- a/docs/resources/sidecar_listener.md +++ b/docs/resources/sidecar_listener.md @@ -1,6 +1,6 @@ # cyral_sidecar_listener (Resource) -Manages [sidecar listeners](https://cyral.com/docs/sidecars/sidecar-listeners). +Manages sidecar listeners. ~> **Warning** Multiple listeners can be associated to a single sidecar as long as `host` and `port` are unique. If `host` is omitted, then `port` must be unique. -> Import ID syntax is `{sidecar_id}/{listener_id}`. diff --git a/go.mod b/go.mod index 9247ac93..e58df671 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,8 @@ module github.com/cyralinc/terraform-provider-cyral -go 1.22 +go 1.22.0 + +toolchain go1.23.1 require ( github.com/aws/aws-sdk-go v1.55.5 @@ -9,7 +11,7 @@ require ( github.com/hashicorp/terraform-plugin-log v0.9.0 github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 github.com/stretchr/testify v1.9.0 - golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa + golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 golang.org/x/oauth2 v0.23.0 ) @@ -25,7 +27,7 @@ require ( github.com/armon/go-radix v1.0.0 // indirect github.com/bgentry/speakeasy v0.1.0 // indirect github.com/bmatcuk/doublestar/v4 v4.6.1 // indirect - github.com/cloudflare/circl v1.3.9 // indirect + github.com/cloudflare/circl v1.4.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/fatih/color v1.17.0 // indirect github.com/golang/protobuf v1.5.4 // indirect @@ -41,15 +43,15 @@ require ( github.com/hashicorp/go-retryablehttp v0.7.7 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.7.0 // indirect - github.com/hashicorp/hc-install v0.8.0 // indirect - github.com/hashicorp/hcl/v2 v2.21.0 // indirect + github.com/hashicorp/hc-install v0.9.0 // indirect + github.com/hashicorp/hcl/v2 v2.22.0 // indirect github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-exec v0.21.0 // indirect github.com/hashicorp/terraform-json v0.22.1 // indirect - github.com/hashicorp/terraform-plugin-go v0.23.0 // indirect + github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect - github.com/hashicorp/yamux v0.1.1 // indirect + github.com/hashicorp/yamux v0.1.2 // indirect github.com/huandu/xstrings v1.3.3 // indirect github.com/imdario/mergo v0.3.15 // indirect github.com/mattn/go-colorable v0.1.13 // indirect @@ -72,16 +74,16 @@ require ( github.com/yuin/goldmark-meta v1.1.0 // indirect github.com/zclconf/go-cty v1.15.0 // indirect go.abhg.dev/goldmark/frontmatter v0.2.0 // indirect - golang.org/x/crypto v0.26.0 // indirect - golang.org/x/mod v0.20.0 // indirect - golang.org/x/net v0.28.0 // indirect + golang.org/x/crypto v0.27.0 // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/net v0.29.0 // indirect golang.org/x/sync v0.8.0 // indirect - golang.org/x/sys v0.24.0 // indirect - golang.org/x/text v0.17.0 // indirect - golang.org/x/tools v0.24.0 // indirect + golang.org/x/sys v0.25.0 // indirect + golang.org/x/text v0.18.0 // indirect + golang.org/x/tools v0.25.0 // indirect google.golang.org/appengine v1.6.8 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240808171019-573a1156607a // indirect - google.golang.org/grpc v1.65.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240924160255-9d4c2d233b61 // indirect + google.golang.org/grpc v1.67.0 // indirect google.golang.org/protobuf v1.34.2 // indirect gopkg.in/yaml.v2 v2.3.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum index c1589495..e1cd799c 100644 --- a/go.sum +++ b/go.sum @@ -29,8 +29,8 @@ github.com/bmatcuk/doublestar/v4 v4.6.1 h1:FH9SifrbvJhnlQpztAx++wlkk70QBf0iBWDwN github.com/bmatcuk/doublestar/v4 v4.6.1/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc= github.com/bufbuild/protocompile v0.4.0 h1:LbFKd2XowZvQ/kajzguUp2DC9UEIQhIq77fZZlaQsNA= github.com/bufbuild/protocompile v0.4.0/go.mod h1:3v93+mbWn/v3xzN+31nwkJfrEpAUwp+BagBSZWx+TP8= -github.com/cloudflare/circl v1.3.9 h1:QFrlgFYf2Qpi8bSpVPK1HBvWpx16v/1TZivyo7pGuBE= -github.com/cloudflare/circl v1.3.9/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU= +github.com/cloudflare/circl v1.4.0 h1:BV7h5MgrktNzytKmWjpOtdYrf0lkkbF8YMlBGPhJQrY= +github.com/cloudflare/circl v1.4.0/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU= github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -91,10 +91,10 @@ github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/C github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/hc-install v0.8.0 h1:LdpZeXkZYMQhoKPCecJHlKvUkQFixN/nvyR1CdfOLjI= -github.com/hashicorp/hc-install v0.8.0/go.mod h1:+MwJYjDfCruSD/udvBmRB22Nlkwwkwf5sAB6uTIhSaU= -github.com/hashicorp/hcl/v2 v2.21.0 h1:lve4q/o/2rqwYOgUg3y3V2YPyD1/zkCLGjIV74Jit14= -github.com/hashicorp/hcl/v2 v2.21.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= +github.com/hashicorp/hc-install v0.9.0 h1:2dIk8LcvANwtv3QZLckxcjyF5w8KVtiMxu6G6eLhghE= +github.com/hashicorp/hc-install v0.9.0/go.mod h1:+6vOP+mf3tuGgMApVYtmsnDoKWMDcFXeTxCACYZ8SFg= +github.com/hashicorp/hcl/v2 v2.22.0 h1:hkZ3nCtqeJsDhPRFz5EA9iwcG1hNWGePOTw6oyul12M= +github.com/hashicorp/hcl/v2 v2.22.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/terraform-exec v0.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= @@ -103,8 +103,8 @@ github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7 github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= github.com/hashicorp/terraform-plugin-docs v0.19.4 h1:G3Bgo7J22OMtegIgn8Cd/CaSeyEljqjH3G39w28JK4c= github.com/hashicorp/terraform-plugin-docs v0.19.4/go.mod h1:4pLASsatTmRynVzsjEhbXZ6s7xBlUw/2Kt0zfrq8HxA= -github.com/hashicorp/terraform-plugin-go v0.23.0 h1:AALVuU1gD1kPb48aPQUjug9Ir/125t+AAurhqphJ2Co= -github.com/hashicorp/terraform-plugin-go v0.23.0/go.mod h1:1E3Cr9h2vMlahWMbsSEcNrOCxovCZhOOIXjFHbjc/lQ= +github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= +github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0= github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow= github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 h1:kJiWGx2kiQVo97Y5IOGR4EMcZ8DtMswHhUuFibsCQQE= @@ -113,8 +113,8 @@ github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTV github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ= github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc= -github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE= -github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= +github.com/hashicorp/yamux v0.1.2 h1:XtB8kyFOyHXYVFnwT5C3+Bdo8gArse7j2AQ0DA0Uey8= +github.com/hashicorp/yamux v0.1.2/go.mod h1:C+zze2n6e/7wshOZep2A70/aQU6QBRWJO/G6FT1wIns= github.com/huandu/xstrings v1.3.3 h1:/Gcsuc1x8JVbJ9/rlye4xZnVAbEkGauT8lbebqcQws4= github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= @@ -208,20 +208,20 @@ go.abhg.dev/goldmark/frontmatter v0.2.0/go.mod h1:XqrEkZuM57djk7zrlRUB02x8I5J0px golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= -golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= -golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa h1:ELnwvuAXPNtPk1TJRuGkI9fDTwym6AYBu0qzT8AcHdI= -golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa/go.mod h1:akd2r19cwCdwSwWeIdzYQGa/EZZyqcOdwWiwj5L5eKQ= +golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= +golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= +golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 h1:e66Fs6Z+fZTbFBAxKfP3PALWBtpfqks2bwGcexMxgtk= +golang.org/x/exp v0.0.0-20240909161429-701f63a606c0/go.mod h1:2TbTHSBQa924w8M6Xs1QcRcFwyucIwBGpK1p2f1YFFY= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= -golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= -golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= +golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= +golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs= golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -242,8 +242,8 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= -golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= @@ -253,22 +253,22 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= -golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= +golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= -golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= +golang.org/x/tools v0.25.0 h1:oFU9pkj/iJgs+0DT+VMHrx+oBKs/LJMV+Uvg78sl+fE= +golang.org/x/tools v0.25.0/go.mod h1:/vtpO8WL1N9cQC3FN5zPqb//fRXskFHbLKk4OW1Q7rg= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240808171019-573a1156607a h1:EKiZZXueP9/T68B8Nl0GAx9cjbQnCId0yP3qPMgaaHs= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240808171019-573a1156607a/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= -google.golang.org/grpc v1.65.0 h1:bs/cUb4lp1G5iImFFd3u5ixQzweKizoZJAwBNLR42lc= -google.golang.org/grpc v1.65.0/go.mod h1:WgYC2ypjlB0EiQi6wdKixMqukr6lBc0Vo+oOgjrM5ZQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240924160255-9d4c2d233b61 h1:N9BgCIAUvn/M+p4NJccWPWb3BWh88+zyL0ll9HgbEeM= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240924160255-9d4c2d233b61/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw= +google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=