| 304 | } |
| 305 | |
| 306 | func SetupMockOpenstack() *openstack.MockCloud { |
| 307 | c := openstack.InstallMockOpenstackCloud("us-test1") |
| 308 | c.MockCinderClient = mockblockstorage.CreateClient() |
| 309 | |
| 310 | c.MockNeutronClient = mocknetworking.CreateClient() |
| 311 | |
| 312 | c.MockLBClient = mockloadbalancer.CreateClient() |
| 313 | |
| 314 | c.MockNovaClient = mockcompute.CreateClient(c.MockNeutronClient.ServiceClient()) |
| 315 | |
| 316 | c.MockDNSClient = mockdns.CreateClient() |
| 317 | |
| 318 | c.MockImageClient = mockimage.CreateClient() |
| 319 | |
| 320 | extNetworkName := "external" |
| 321 | networkCreateOpts := networks.CreateOpts{ |
| 322 | Name: extNetworkName, |
| 323 | AdminStateUp: fi.PtrTo(true), |
| 324 | } |
| 325 | extNetwork := external.CreateOptsExt{ |
| 326 | CreateOptsBuilder: networkCreateOpts, |
| 327 | External: fi.PtrTo(true), |
| 328 | } |
| 329 | c.CreateNetwork(extNetwork) |
| 330 | c.SetExternalNetwork(&extNetworkName) |
| 331 | |
| 332 | extSubnetName := "external" |
| 333 | extSubnet := subnets.CreateOpts{ |
| 334 | Name: extSubnetName, |
| 335 | NetworkID: extNetworkName, |
| 336 | EnableDHCP: fi.PtrTo(true), |
| 337 | CIDR: "172.20.0.0/22", |
| 338 | } |
| 339 | c.CreateSubnet(extSubnet) |
| 340 | c.SetExternalSubnet(fi.PtrTo(extSubnetName)) |
| 341 | c.SetLBFloatingSubnet(fi.PtrTo(extSubnetName)) |
| 342 | images.Create(context.TODO(), c.MockImageClient.ServiceClient(), images.CreateOpts{ |
| 343 | Name: "Ubuntu-20.04", |
| 344 | MinDisk: 12, |
| 345 | }) |
| 346 | flavors.Create(context.TODO(), c.MockNovaClient.ServiceClient(), flavors.CreateOpts{ |
| 347 | Name: "n1-standard-2", |
| 348 | RAM: 8192, |
| 349 | VCPUs: 8, |
| 350 | Disk: fi.PtrTo(16), |
| 351 | }) |
| 352 | flavors.Create(context.TODO(), c.MockNovaClient.ServiceClient(), flavors.CreateOpts{ |
| 353 | Name: "n1-standard-1", |
| 354 | RAM: 8192, |
| 355 | VCPUs: 4, |
| 356 | Disk: fi.PtrTo(16), |
| 357 | }) |
| 358 | zones.Create(context.TODO(), c.MockDNSClient.ServiceClient(), zones.CreateOpts{ |
| 359 | Name: "minimal-openstack.k8s.local", |
| 360 | }) |
| 361 | return c |
| 362 | } |
| 363 | |