1- data "ibm_pi_image" "data_source_image" {
2- pi_cloud_instance_id = var. cloud_instance_id
1+ # Create a workspace
2+ resource "ibm_resource_instance" "location" {
3+ name = var. workspace_name
4+ resource_group_id = var. resource_group_id
5+ location = var. datacenter
6+ service = " power-iaas"
7+ plan = " power-virtual-server-group"
8+ }
9+
10+ # Create an image
11+ resource "ibm_pi_image" "image" {
12+ pi_cloud_instance_id = ibm_resource_instance. location . guid
313 pi_image_name = var. image_name
14+ pi_image_id = var. image_id
415}
5- resource "ibm_pi_key" "key" {
6- pi_cloud_instance_id = var. cloud_instance_id
7- pi_key_name = var. ssh_key_name
8- pi_ssh_key = var. ssh_key_rsa
16+ data "ibm_pi_image" "data_source_image" {
17+ pi_cloud_instance_id = ibm_resource_instance. location . guid
18+ pi_image_name = resource. ibm_pi_image . image . pi_image_name
919}
10- data "ibm_pi_key" "data_source_key" {
11- depends_on = [ibm_pi_key . key ]
1220
13- pi_cloud_instance_id = var. cloud_instance_id
14- pi_key_name = var. ssh_key_name
15- }
16- resource "ibm_pi_network" "network" {
17- pi_cloud_instance_id = var. cloud_instance_id
21+ # Create a network
22+ resource "ibm_pi_network" "private_network" {
23+ pi_cloud_instance_id = ibm_resource_instance. location . guid
1824 pi_network_name = var. network_name
1925 pi_network_type = var. network_type
20- count = var. network_count
26+ pi_cidr = var. network_cidr
27+ pi_dns = [var . network_dns ]
28+ pi_network_mtu = 2000
2129}
22- data "ibm_pi_public_network" "data_source_network" {
23- depends_on = [ibm_pi_network . network ]
24-
25- pi_cloud_instance_id = var. cloud_instance_id
30+ data "ibm_pi_network" "data_source_private_network" {
31+ pi_cloud_instance_id = ibm_resource_instance. location . guid
32+ pi_network_name = resource. ibm_pi_network . private_network . pi_network_name
2633}
34+
35+ # Create a volume
2736resource "ibm_pi_volume" "volume" {
28- pi_cloud_instance_id = var . cloud_instance_id
37+ pi_cloud_instance_id = ibm_resource_instance . location . guid
2938 pi_volume_name = var. volume_name
3039 pi_volume_type = var. volume_type
3140 pi_volume_size = var. volume_size
3241 pi_volume_shareable = var. volume_shareable
3342}
3443data "ibm_pi_volume" "data_source_volume" {
35- depends_on = [ibm_pi_volume . volume ]
44+ pi_cloud_instance_id = ibm_resource_instance. location . guid
45+ pi_volume_name = resource. ibm_pi_volume . volume . pi_volume_name
46+ }
3647
37- pi_cloud_instance_id = var. cloud_instance_id
38- pi_volume_name = var. volume_name
48+ # Create an ssh key
49+ resource "ibm_pi_key" "key" {
50+ pi_cloud_instance_id = ibm_resource_instance. location . guid
51+ pi_key_name = var. ssh_key_name
52+ pi_ssh_key = var. ssh_key_rsa
53+ }
54+ data "ibm_pi_key" "data_source_key" {
55+ pi_cloud_instance_id = ibm_resource_instance. location . guid
56+ pi_key_name = resource. ibm_pi_key . key . pi_key_name
3957}
40- resource "ibm_pi_instance" "instance" {
41- depends_on = [data . ibm_pi_image . data_source_image ,
42- data . ibm_pi_key . data_source_key ,
43- data . ibm_pi_volume . data_source_volume ,
44- data . ibm_pi_public_network . data_source_network ]
4558
46- pi_cloud_instance_id = var. cloud_instance_id
59+ # Create an instance
60+ resource "ibm_pi_instance" "instance" {
61+ pi_cloud_instance_id = ibm_resource_instance. location . guid
4762 pi_instance_name = var. instance_name
4863 pi_memory = var. memory
4964 pi_processors = var. processors
@@ -52,13 +67,12 @@ resource "ibm_pi_instance" "instance" {
5267 pi_sys_type = var. sys_type
5368 pi_image_id = data. ibm_pi_image . data_source_image . id
5469 pi_key_pair_name = data. ibm_pi_key . data_source_key . id
55- pi_network { network_id = data. ibm_pi_public_network . data_source_network . id }
70+ pi_network {
71+ network_id = data. ibm_pi_network . data_source_private_network . id
72+ }
5673 pi_volume_ids = [data . ibm_pi_volume . data_source_volume . id ]
5774}
58-
5975data "ibm_pi_instance" "data_source_instance" {
60- depends_on = [ibm_pi_instance . instance ]
61-
62- pi_cloud_instance_id = var. cloud_instance_id
63- pi_instance_name = var. instance_name
64- }
76+ pi_cloud_instance_id = ibm_resource_instance. location . guid
77+ pi_instance_name = resource. ibm_pi_instance . instance . pi_instance_name
78+ }
0 commit comments