Skip to content

Commit

Permalink
update(partner center sell): merge conflict solved
Browse files Browse the repository at this point in the history
Signed-off-by: Peter Harasztia <[email protected]>
  • Loading branch information
HarasztiaPeter committed Oct 16, 2024
2 parents acdb2ec + 839fe1d commit fec7ed3
Show file tree
Hide file tree
Showing 86 changed files with 4,885 additions and 107 deletions.
41 changes: 34 additions & 7 deletions examples/ibm-event-streams/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,34 @@ resource "ibm_resource_tag" "tag_example_on_es" {
}
```

#### Scenario 6: Connect to an existing Event Streams instance and its topics.
#### Scenario 6: Set default and user quotas on an existing Event Streams instance.

This code sets the default quota to 32768 bytes/second for producers and 16384 bytes/second for consumers.
It sets a quota for user `iam-ServiceId-00001111-2222-3333-4444-555566667777` to 65536 bytes/second for producers and no limit (-1) for consumers.
For more information on quotas, see [Setting Kafka quotas](https://cloud.ibm.com/docs/EventStreams?topic=EventStreams-enabling_kafka_quotas).

```terraform
data "ibm_resource_instance" "es_instance_6" {
name = "terraform-integration-6"
resource_group_id = data.ibm_resource_group.group.id
}
resource "ibm_event_streams_quota" "default_quota" {
resource_instance_id = data.ibm_resource_instance.es_instance_6.id
entity = "default"
producer_byte_rate = 32768
consumer_byte_rate = 16384
}
resource "ibm_event_streams_quota" "user00001111_quota" {
resource_instance_id = data.ibm_resource_instance.es_instance_6.id
entity = "iam-ServiceId-00001111-2222-3333-4444-555566667777"
producer_byte_rate = 65536
consumer_byte_rate = -1
}
```

#### Scenario 7: Connect to an existing Event Streams instance and its topics.

This scenario uses a fictitious `"kafka_consumer_app"` resource to demonstrate how a consumer application could be configured.
The resource uses three configuration properties:
Expand All @@ -177,22 +204,22 @@ The topic names can be provided as strings, or can be taken from topic data sour

```terraform
# Use an existing instance
data "ibm_resource_instance" "es_instance_6" {
name = "terraform-integration-6"
data "ibm_resource_instance" "es_instance_7" {
name = "terraform-integration-7"
resource_group_id = data.ibm_resource_group.group.id
}
# Use an existing topic on that instance
data "ibm_event_streams_topic" "es_topic_6" {
resource_instance_id = data.ibm_resource_instance.es_instance_6.id
data "ibm_event_streams_topic" "es_topic_7" {
resource_instance_id = data.ibm_resource_instance.es_instance_7.id
name = "my-es-topic"
}
# The FICTITIOUS consumer application, configured with brokers, API key, and topics
resource "kafka_consumer_app" "es_kafka_app" {
bootstrap_server = lookup(data.ibm_resource_instance.es_instance_4.extensions, "kafka_brokers_sasl", [])
bootstrap_server = lookup(data.ibm_resource_instance.es_instance_7.extensions, "kafka_brokers_sasl", [])
apikey = var.es_reader_api_key
topics = [data.ibm_event_streams_topic.es_topic_4.name]
topics = [data.ibm_event_streams_topic.es_topic_7.name]
}
```

Expand Down
6 changes: 5 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ toolchain go1.22.5
require (
github.com/IBM-Cloud/bluemix-go v0.0.0-20240926024252-81b3928fd062
github.com/IBM-Cloud/container-services-go-sdk v0.0.0-20240725064144-454a2ae23113
github.com/IBM-Cloud/power-go-client v1.8.1
github.com/IBM-Cloud/power-go-client v1.8.3
github.com/IBM/apigateway-go-sdk v0.0.0-20210714141226-a5d5d49caaca
github.com/IBM/appconfiguration-go-admin-sdk v0.3.0
github.com/IBM/appid-management-go-sdk v0.0.0-20210908164609-dd0e0eaf732f
Expand Down Expand Up @@ -219,7 +219,11 @@ require (
golang.org/x/mod v0.19.0 // indirect
golang.org/x/net v0.27.0 // indirect
golang.org/x/oauth2 v0.7.0 // indirect
<<<<<<< HEAD
golang.org/x/sys v0.26.0 // indirect
=======
golang.org/x/sys v0.25.0 // indirect
>>>>>>> 839fe1dc1199839840162c768f4571d26dfd6a1f
golang.org/x/term v0.22.0 // indirect
golang.org/x/text v0.16.0 // indirect
golang.org/x/time v0.3.0 // indirect
Expand Down
9 changes: 7 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -120,8 +120,8 @@ github.com/IBM-Cloud/bluemix-go v0.0.0-20240926024252-81b3928fd062/go.mod h1:/7h
github.com/IBM-Cloud/container-services-go-sdk v0.0.0-20240725064144-454a2ae23113 h1:f2Erqfea1dKpaTFagTJM6W/wnD3JGq/Vn9URh8nuRwk=
github.com/IBM-Cloud/container-services-go-sdk v0.0.0-20240725064144-454a2ae23113/go.mod h1:xUQL9SGAjoZFd4GNjrjjtEpjpkgU7RFXRyHesbKTjiY=
github.com/IBM-Cloud/ibm-cloud-cli-sdk v0.5.3/go.mod h1:RiUvKuHKTBmBApDMUQzBL14pQUGKcx/IioKQPIcRQjs=
github.com/IBM-Cloud/power-go-client v1.8.1 h1:tx1aPJmIQrNru1MD1VHGNasGx3eRIs0zzPZ0KvdFQrg=
github.com/IBM-Cloud/power-go-client v1.8.1/go.mod h1:N4RxrsMUvBQjSQ/qPk0iMZ8zK+fZPRTnHi/gTaASw0g=
github.com/IBM-Cloud/power-go-client v1.8.3 h1:QsBuIS6KvKsiEpe0yiHYKhWgXlqkcJ7XqFHtATj8Yh4=
github.com/IBM-Cloud/power-go-client v1.8.3/go.mod h1:UDyXeIKEp6r7yWUXYu3r0ZnFSlNZ2YeQTHwM2Tmlgv0=
github.com/IBM-Cloud/softlayer-go v1.0.5-tf h1:koUAyF9b6X78lLLruGYPSOmrfY2YcGYKOj/Ug9nbKNw=
github.com/IBM-Cloud/softlayer-go v1.0.5-tf/go.mod h1:6HepcfAXROz0Rf63krk5hPZyHT6qyx2MNvYyHof7ik4=
github.com/IBM/apigateway-go-sdk v0.0.0-20210714141226-a5d5d49caaca h1:crniVcf+YcmgF03NmmfonXwSQ73oJF+IohFYBwknMxs=
Expand Down Expand Up @@ -2071,8 +2071,13 @@ golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
<<<<<<< HEAD
golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
golang.org/x/sys v0.26.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=
>>>>>>> 839fe1dc1199839840162c768f4571d26dfd6a1f
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
Expand Down
27 changes: 24 additions & 3 deletions ibm/acctest/acctest.go
Original file line number Diff line number Diff line change
Expand Up @@ -217,14 +217,18 @@ var (
Pi_image_id string
Pi_instance_name string
Pi_key_name string
Pi_network_address_group_id string
Pi_network_name string
Pi_network_id string
Pi_network_interface_id string
Pi_placement_group_name string
Pi_replication_volume_name string
Pi_resource_group_id string
Pi_sap_image string
Pi_shared_processor_pool_id string
Pi_snapshot_id string
Pi_spp_placement_group_id string
Pi_storage_connection string
Pi_target_storage_tier string
Pi_volume_clone_task_id string
Pi_volume_group_id string
Expand Down Expand Up @@ -1068,7 +1072,16 @@ func init() {
Pi_network_name = "terraform-test-power"
fmt.Println("[INFO] Set the environment variable PI_NETWORK_NAME for testing ibm_pi_network_name resource else it is set to default value 'terraform-test-power'")
}

Pi_network_id = os.Getenv("PI_NETWORK_ID")
if Pi_network_id == "" {
Pi_network_id = "terraform-test-power"
fmt.Println("[INFO] Set the environment variable PI_NETWORK_ID for testing ibm_pi_network_interface resource else it is set to default value 'terraform-test-power'")
}
Pi_network_interface_id = os.Getenv("PI_NETWORK_INTERFACE_ID")
if Pi_network_interface_id == "" {
Pi_network_interface_id = "terraform-test-power"
fmt.Println("[INFO] Set the environment variable PI_NETWORK_INTERFACE_ID for testing ibm_pi_network_interface resource else it is set to default value 'terraform-test-power'")
}
Pi_volume_name = os.Getenv("PI_VOLUME_NAME")
if Pi_volume_name == "" {
Pi_volume_name = "terraform-test-power"
Expand Down Expand Up @@ -1197,7 +1210,10 @@ func init() {
Pi_shared_processor_pool_id = "tf-pi-shared-processor-pool"
fmt.Println("[WARN] Set the environment variable PI_SHARED_PROCESSOR_POOL_ID for testing ibm_pi_shared_processor_pool resource else it is set to default value 'tf-pi-shared-processor-pool'")
}

Pi_storage_connection = os.Getenv("PI_STORAGE_CONNECTION")
if Pi_storage_connection == "" {
fmt.Println("[WARN] Set the environment variable PI_STORAGE_CONNECTION for testing pi_storage_connection resource else it is empty")
}
Pi_target_storage_tier = os.Getenv("PI_TARGET_STORAGE_TIER")
if Pi_target_storage_tier == "" {
Pi_target_storage_tier = "terraform-test-tier"
Expand All @@ -1220,12 +1236,17 @@ func init() {
Pi_host_group_id = ""
fmt.Println("[WARN] Set the environment variable PI_HOST_GROUP_ID for testing ibm_pi_host resource else it is set to default value ''")
}

Pi_host_id = os.Getenv("PI_HOST_ID")
if Pi_host_id == "" {
Pi_host_id = ""
fmt.Println("[WARN] Set the environment variable PI_HOST_ID for testing ibm_pi_host resource else it is set to default value ''")
}
Pi_network_address_group_id = os.Getenv("PI_NETWORK_ADDRESS_GROUP_ID")
if Pi_network_address_group_id == "" {
Pi_network_address_group_id = "terraform-test-power"
fmt.Println("[INFO] Set the environment variable PI_NETWORK_ADDRESS_GROUP_ID for testing ibm_pi_network_address_group data source else it is set to default value 'terraform-test-power'")
}

WorkspaceID = os.Getenv("SCHEMATICS_WORKSPACE_ID")
if WorkspaceID == "" {
WorkspaceID = "us-south.workspace.tf-acc-test-schematics-state-test.392cd99f"
Expand Down
23 changes: 23 additions & 0 deletions ibm/conns/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@ import (
"github.com/IBM/continuous-delivery-go-sdk/cdtektonpipelinev2"
"github.com/IBM/continuous-delivery-go-sdk/cdtoolchainv2"
"github.com/IBM/event-notifications-go-admin-sdk/eventnotificationsv1"
"github.com/IBM/eventstreams-go-sdk/pkg/adminrestv1"
"github.com/IBM/eventstreams-go-sdk/pkg/schemaregistryv1"
"github.com/IBM/ibm-hpcs-uko-sdk/ukov4"
"github.com/IBM/logs-go-sdk/logsv0"
Expand Down Expand Up @@ -302,6 +303,7 @@ type ClientSession interface {
AtrackerV2() (*atrackerv2.AtrackerV2, error)
MetricsRouterV3() (*metricsrouterv3.MetricsRouterV3, error)
ESschemaRegistrySession() (*schemaregistryv1.SchemaregistryV1, error)
ESadminRestSession() (*adminrestv1.AdminrestV1, error)
ContextBasedRestrictionsV1() (*contextbasedrestrictionsv1.ContextBasedRestrictionsV1, error)
SecurityAndComplianceCenterV3() (*scc.SecurityAndComplianceCenterApiV3, error)
CdToolchainV2() (*cdtoolchainv2.CdToolchainV2, error)
Expand Down Expand Up @@ -620,6 +622,9 @@ type clientSession struct {
esSchemaRegistryClient *schemaregistryv1.SchemaregistryV1
esSchemaRegistryErr error

esAdminRestClient *adminrestv1.AdminrestV1
esAdminRestErr error

// Security and Compliance Center (SCC)
securityAndComplianceCenterClient *scc.SecurityAndComplianceCenterApiV3
securityAndComplianceCenterClientErr error
Expand Down Expand Up @@ -1223,6 +1228,10 @@ func (session clientSession) ESschemaRegistrySession() (*schemaregistryv1.Schema
return session.esSchemaRegistryClient, session.esSchemaRegistryErr
}

func (session clientSession) ESadminRestSession() (*adminrestv1.AdminrestV1, error) {
return session.esAdminRestClient, session.esAdminRestErr
}

// Security and Compliance center Admin API
func (session clientSession) SecurityAndComplianceCenterV3() (*scc.SecurityAndComplianceCenterApiV3, error) {
return session.securityAndComplianceCenterClient, session.securityAndComplianceCenterClientErr
Expand Down Expand Up @@ -3358,6 +3367,20 @@ func (c *Config) ClientSession() (interface{}, error) {
})
}

esAdminRestV1Options := &adminrestv1.AdminrestV1Options{
Authenticator: authenticator,
}
session.esAdminRestClient, err = adminrestv1.NewAdminrestV1(esAdminRestV1Options)
if err != nil {
session.esAdminRestErr = fmt.Errorf("[ERROR] Error occured while configuring Event Streams admin rest: %q", err)
}
if session.esAdminRestClient != nil && session.esAdminRestClient.Service != nil {
session.esAdminRestClient.Service.EnableRetries(c.RetryCount, c.RetryDelay)
session.esAdminRestClient.SetDefaultHeaders(gohttp.Header{
"X-Original-User-Agent": {fmt.Sprintf("terraform-provider-ibm/%s", version.Version)},
})
}

// Construct an "options" struct for creating the service client.
var cdToolchainClientURL string
if c.Visibility == "private" || c.Visibility == "public-and-private" {
Expand Down
12 changes: 12 additions & 0 deletions ibm/provider/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,7 @@ func Provider() *schema.Provider {
"ibm_dns_secondary": classicinfrastructure.DataSourceIBMDNSSecondary(),
"ibm_event_streams_topic": eventstreams.DataSourceIBMEventStreamsTopic(),
"ibm_event_streams_schema": eventstreams.DataSourceIBMEventStreamsSchema(),
"ibm_event_streams_quota": eventstreams.DataSourceIBMEventStreamsQuota(),
"ibm_hpcs": hpcs.DataSourceIBMHPCS(),
"ibm_hpcs_managed_key": hpcs.DataSourceIbmManagedKey(),
"ibm_hpcs_key_template": hpcs.DataSourceIbmKeyTemplate(),
Expand Down Expand Up @@ -655,6 +656,10 @@ func Provider() *schema.Provider {
"ibm_pi_instances": power.DataSourceIBMPIInstances(),
"ibm_pi_key": power.DataSourceIBMPIKey(),
"ibm_pi_keys": power.DataSourceIBMPIKeys(),
"ibm_pi_network_address_group": power.DataSourceIBMPINetworkAddressGroup(),
"ibm_pi_network_address_groups": power.DataSourceIBMPINetworkAddressGroups(),
"ibm_pi_network_interface": power.DataSourceIBMPINetworkInterface(),
"ibm_pi_network_interfaces": power.DataSourceIBMPINetworkInterfaces(),
"ibm_pi_network_port": power.DataSourceIBMPINetworkPort(),
"ibm_pi_network": power.DataSourceIBMPINetwork(),
"ibm_pi_networks": power.DataSourceIBMPINetworks(),
Expand All @@ -670,6 +675,7 @@ func Provider() *schema.Provider {
"ibm_pi_spp_placement_groups": power.DataSourceIBMPISPPPlacementGroups(),
"ibm_pi_storage_pool_capacity": power.DataSourceIBMPIStoragePoolCapacity(),
"ibm_pi_storage_pools_capacity": power.DataSourceIBMPIStoragePoolsCapacity(),
"ibm_pi_storage_tiers": power.DataSourceIBMPIStorageTiers(),
"ibm_pi_storage_type_capacity": power.DataSourceIBMPIStorageTypeCapacity(),
"ibm_pi_storage_types_capacity": power.DataSourceIBMPIStorageTypesCapacity(),
"ibm_pi_system_pools": power.DataSourceIBMPISystemPools(),
Expand All @@ -685,6 +691,8 @@ func Provider() *schema.Provider {
"ibm_pi_volume_onboarding": power.DataSourceIBMPIVolumeOnboarding(),
"ibm_pi_volume_onboardings": power.DataSourceIBMPIVolumeOnboardings(),
"ibm_pi_volume_remote_copy_relationship": power.DataSourceIBMPIVolumeRemoteCopyRelationship(),
"ibm_pi_volume_snapshot": power.DataSourceIBMPIVolumeSnapshot(),
"ibm_pi_volume_snapshots": power.DataSourceIBMPIVolumeSnapshots(),
"ibm_pi_volume": power.DataSourceIBMPIVolume(),
"ibm_pi_workspace": power.DatasourceIBMPIWorkspace(),
"ibm_pi_workspaces": power.DatasourceIBMPIWorkspaces(),
Expand Down Expand Up @@ -1107,6 +1115,7 @@ func Provider() *schema.Provider {
"ibm_dns_record": classicinfrastructure.ResourceIBMDNSRecord(),
"ibm_event_streams_topic": eventstreams.ResourceIBMEventStreamsTopic(),
"ibm_event_streams_schema": eventstreams.ResourceIBMEventStreamsSchema(),
"ibm_event_streams_quota": eventstreams.ResourceIBMEventStreamsQuota(),
"ibm_firewall": classicinfrastructure.ResourceIBMFirewall(),
"ibm_firewall_policy": classicinfrastructure.ResourceIBMFirewallPolicy(),
"ibm_hpcs": hpcs.ResourceIBMHPCS(),
Expand Down Expand Up @@ -1304,6 +1313,9 @@ func Provider() *schema.Provider {
"ibm_pi_instance": power.ResourceIBMPIInstance(),
"ibm_pi_ipsec_policy": power.ResourceIBMPIIPSecPolicy(),
"ibm_pi_key": power.ResourceIBMPIKey(),
"ibm_pi_network_address_group_member": power.ResourceIBMPINetworkAddressGroupMember(),
"ibm_pi_network_address_group": power.ResourceIBMPINetworkAddressGroup(),
"ibm_pi_network_interface": power.ResourceIBMPINetworkInterface(),
"ibm_pi_network_port_attach": power.ResourceIBMPINetworkPortAttach(),
"ibm_pi_network": power.ResourceIBMPINetwork(),
"ibm_pi_placement_group": power.ResourceIBMPIPlacementGroup(),
Expand Down
Loading

0 comments on commit fec7ed3

Please sign in to comment.