@@ -25,19 +25,58 @@ func TestAccCloudProjectKubeDataSource_basic(t *testing.T) {
2525
2626 resource .Test (t , resource.TestCase {
2727 PreCheck : func () {
28+ testAccPreCheckCloud (t )
29+ testAccCheckCloudProjectExists (t )
2830 testAccPreCheckKubernetes (t )
2931 },
3032 Providers : testAccProviders ,
3133 Steps : []resource.TestStep {
3234 {
3335 Config : config ,
3436 Check : resource .ComposeTestCheckFunc (
35- resource .TestCheckResourceAttr (
36- "data.ovh_cloud_project_kube.cluster" , "region" , region ),
37- resource .TestCheckResourceAttr (
38- "data.ovh_cloud_project_kube.cluster" , "name" , name ),
39- resource .TestMatchResourceAttr (
40- "data.ovh_cloud_project_kube.cluster" , "version" , matchVersion ),
37+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "region" , region ),
38+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "name" , name ),
39+ resource .TestMatchResourceAttr ("data.ovh_cloud_project_kube.cluster" , "version" , matchVersion ),
40+ ),
41+ },
42+ },
43+ })
44+ }
45+
46+ func TestAccCloudProjectKubeDataSource_kubeProxy (t * testing.T ) {
47+ name := acctest .RandomWithPrefix (test_prefix )
48+ region := os .Getenv ("OVH_CLOUD_PROJECT_KUBE_REGION_TEST" )
49+ config := fmt .Sprintf (
50+ testAccCloudProjectKubeDatasourceKubeProxyConfig ,
51+ os .Getenv ("OVH_CLOUD_PROJECT_SERVICE_TEST" ),
52+ name ,
53+ region ,
54+ )
55+
56+ resource .Test (t , resource.TestCase {
57+ PreCheck : func () {
58+ testAccPreCheckCloud (t )
59+ testAccCheckCloudProjectExists (t )
60+ testAccPreCheckKubernetes (t )
61+ },
62+ Providers : testAccProviders ,
63+ Steps : []resource.TestStep {
64+ {
65+ Config : config ,
66+ Check : resource .ComposeTestCheckFunc (
67+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "region" , region ),
68+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "name" , name ),
69+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "kube_proxy_mode" , "ipvs" ),
70+
71+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.iptables.0.min_sync_period" , "PT30S" ),
72+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.iptables.0.sync_period" , "PT30S" ),
73+
74+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.ipvs.0.min_sync_period" , "PT30S" ),
75+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.ipvs.0.sync_period" , "PT30S" ),
76+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.ipvs.0.scheduler" , "rr" ),
77+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.ipvs.0.tcp_fin_timeout" , "PT30S" ),
78+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.ipvs.0.tcp_timeout" , "PT30S" ),
79+ resource .TestCheckResourceAttr ("data.ovh_cloud_project_kube.cluster" , "customization_kube_proxy.0.ipvs.0.udp_timeout" , "PT30S" ),
4180 ),
4281 },
4382 },
@@ -57,3 +96,33 @@ data "ovh_cloud_project_kube" "cluster" {
5796 kube_id = ovh_cloud_project_kube.cluster.id
5897}
5998`
99+
100+ var testAccCloudProjectKubeDatasourceKubeProxyConfig = `
101+ resource "ovh_cloud_project_kube" "cluster" {
102+ service_name = "%s"
103+ name = "%s"
104+ region = "%s"
105+
106+ kube_proxy_mode = "ipvs"
107+ customization_kube_proxy {
108+ iptables {
109+ min_sync_period = "PT30S"
110+ sync_period = "PT30S"
111+ }
112+
113+ ipvs {
114+ min_sync_period = "PT30S"
115+ sync_period = "PT30S"
116+ scheduler = "rr"
117+ tcp_fin_timeout = "PT30S"
118+ tcp_timeout = "PT30S"
119+ udp_timeout = "PT30S"
120+ }
121+ }
122+ }
123+
124+ data "ovh_cloud_project_kube" "cluster" {
125+ service_name = ovh_cloud_project_kube.cluster.service_name
126+ kube_id = ovh_cloud_project_kube.cluster.id
127+ }
128+ `
0 commit comments