Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: citrixadc_lbvserver not allowed to create IP address type non addressable #1220

Open
IvoFulcoTR opened this issue Oct 23, 2024 · 0 comments
Labels

Comments

@IvoFulcoTR
Copy link

Terraform Core Version

v1.10.0-alpha20240926

citrixadc Provider Version

v1.41.0

Operating system

Windows 11

Affected Resource(s)

citrixadc_cspolicy

Equivalent NetScaler CLI Command

add lb vserver <vserver_name> HTTP 0.0.0.0 80 -lbMethod LEASTCONNECTION

Expected Behavior

Resources created with success, a virtual server with non addressable

Actual Behavior

Error: Provider produced inconsistent result after apply

│ When applying changes to citrixadc_lbvserver_service_binding.lb_vserver_service_binding, provider "provider["registry.terraform.io/citrix/citrixadc"]" produced an unexpected new value: Root object was
│ present, but now absent.

│ This is a bug in the provider, which should be reported in the provider's own issue tracker.


│ Error: [ERROR] netscaler-provider: Specified Action lb_vserver_ws does not exist

│ with citrixadc_cspolicy.ws_cspolicy,
│ on main.tf line 44, in resource "citrixadc_cspolicy" "ws_cspolicy":
│ 44: resource "citrixadc_cspolicy" "ws_cspolicy" {

Relevant Error/Panic Output Snippet

# Create an action in the Content Switch pointing to the virtual server
resource "citrixadc_cspolicy" "ws_cspolicy" {
  policyname = "ws_cs_action"
  rule       = "HTTP.REQ.HOSTNAME.EQ(\"mylink-for-instance.mysite.com\")"
  action     = citrixadc_lbvserver.ws_lb_vserver.name # Action points to the created vServer
}

Terraform Configuration Files

terraform {
required_providers {
citrixadc = {
source = "citrix/citrixadc"
version = "~> 1.41"
}
}
}
provider "citrixadc" {
username = "root"
password = "mysecret"
endpoint = "http://10.10.1.1"
}

Create a server in Citrix ADC

resource "citrixadc_server" "ws_server" {
name = "ws_10.56.26.171"
ipaddress = "10.56.26.171"
}

Create a service group associated with the ws_server

resource "citrixadc_servicegroup" "tf_servicegroup" {
servicegroupname = "tf_servicegroup"
servicetype = "HTTP"
}

resource "citrixadc_servicegroup_servicegroupmember_binding" "tf_service" {
servicegroupname = citrixadc_servicegroup.tf_servicegroup.servicegroupname
ip = "10.56.26.173"
port = 8522
}

Create a non-addressable virtual server (without IP) in the existing VM

resource "citrixadc_lbvserver" "ws_lb_vserver" {
name = "lb_vserver_ws"
servicetype = "HTTP"
#port = 80
#ipset = true # This ensures that the LB vServer does not have an assignable IP
#lbmethod = "LEASTCONNECTION"
ipv46 = "0.0.0.0"
}

Bind the service to the virtual server

resource "citrixadc_lbvserver_service_binding" "lb_vserver_service_binding" {
name = citrixadc_lbvserver.ws_lb_vserver.name
servicename = citrixadc_servicegroup.tf_servicegroup.servicegroupname
}

Create an action in the Content Switch pointing to the virtual server

resource "citrixadc_cspolicy" "ws_cspolicy" {
policyname = "ws_cs_action"
rule = "HTTP.REQ.HOSTNAME.EQ("mylink-for-instance.mysite.com")"
action = citrixadc_lbvserver.ws_lb_vserver.name # Action points to the created vServer
}

Create a policy in the Content Switch to use the newly created action

resource "citrixadc_csvserver" "ws_cs_vserver" {
name = "cs_vserver_ws"
servicetype = "HTTP"
port = 80
ipv46 = "10.56.26.172" # Non-addressable Virtual Server
}

Bind the policy to the Content Switch

resource "citrixadc_csvserver_cspolicy_binding" "cs_policy_binding" {
name = citrixadc_csvserver.ws_cs_vserver.name
policyname = citrixadc_cspolicy.ws_cspolicy.policyname
priority = 100
}

Steps to Reproduce

copy all code and run this commands:
terraform init
terraform apply -auto-approve

Debug Output

No response

Panic Output

No response

Important Factoids

No response

References

https://registry.terraform.io/providers/citrix/citrixadc/latest/docs/resources/servicegroup_servicegroupmember_binding

@IvoFulcoTR IvoFulcoTR added the bug label Oct 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant