Skip to content

Commit 8a6d8c5

Browse files
Marcel JacekMarcel Jacek
authored andcommitted
migrate iaas examples
1 parent 469a4c0 commit 8a6d8c5

File tree

3 files changed

+130
-103
lines changed

3 files changed

+130
-103
lines changed

examples/custom-http-client/src/main/java/cloud/stackit/sdk/customhttpclient/examples/CustomHttpClientExample.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,12 @@ public static void main(String[] args) throws IOException {
4646
}
4747
UUID projectId = UUID.fromString(projectIdString);
4848

49+
// specify which region should be queried
50+
String region = "eu01";
51+
4952
try {
5053
/* list all servers */
51-
ServerListResponse servers = iaasApi.listServers(projectId, false, null);
54+
ServerListResponse servers = iaasApi.listServers(projectId, region, false, null);
5255
System.out.println("\nAvailable servers: ");
5356
for (Server server : servers.getItems()) {
5457
System.out.println("* " + server.getId() + " | " + server.getName());

examples/iaas/src/main/java/cloud/stackit/sdk/iaas/examples/IaaSExample.java

Lines changed: 125 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import java.util.concurrent.TimeUnit;
1212

1313
final class IaaSExample {
14+
private static final String REGION = "eu01";
1415

1516
private IaaSExample() {}
1617

@@ -49,38 +50,40 @@ public static void main(String[] args) throws IOException {
4950
Network newNetwork =
5051
iaasApi.createNetwork(
5152
projectId,
53+
REGION,
5254
new CreateNetworkPayload()
5355
.name("java-sdk-example-network-01")
5456
.dhcp(true)
5557
.routed(false)
5658
.labels(Collections.singletonMap("some-network-label", "bar"))
57-
.addressFamily(
58-
new CreateNetworkAddressFamily()
59-
.ipv4(
60-
new CreateNetworkIPv4Body()
61-
.addNameserversItem(
62-
"8.8.8.8"))));
63-
59+
.ipv4(
60+
new CreateNetworkIPv4(
61+
new CreateNetworkIPv4WithPrefixLength()
62+
.addNameserversItem("8.8.8.8")
63+
.prefixLength(24L))));
6464
/* update the network we just created */
6565
iaasApi.partialUpdateNetwork(
6666
projectId,
67-
newNetwork.getNetworkId(),
67+
REGION,
68+
newNetwork.getId(),
6869
new PartialUpdateNetworkPayload()
6970
.dhcp(false)
7071
.labels(Collections.singletonMap("some-network-label", "bar-updated")));
7172

7273
/* fetch the network we just created */
73-
Network fetchedNetwork = iaasApi.getNetwork(projectId, newNetwork.getNetworkId());
74+
Network fetchedNetwork = iaasApi.getNetwork(projectId, REGION, newNetwork.getId());
7475
System.out.println("\nFetched network: ");
7576
System.out.println("* Network name: " + fetchedNetwork.getName());
76-
System.out.println("* Id: " + fetchedNetwork.getNetworkId());
77+
System.out.println("* Id: " + fetchedNetwork.getId());
7778
System.out.println(
7879
"* DHCP: " + (Boolean.TRUE.equals(fetchedNetwork.getDhcp()) ? "YES" : "NO"));
79-
System.out.println("* Gateway: " + fetchedNetwork.getGateway());
80-
System.out.println("* Public IP: " + fetchedNetwork.getPublicIp());
80+
if (fetchedNetwork.getIpv4() != null) {
81+
System.out.println("* Gateway: " + fetchedNetwork.getIpv4().getGateway());
82+
System.out.println("* Public IP: " + fetchedNetwork.getIpv4().getPublicIp());
83+
}
8184

8285
/* list all available networks in the project */
83-
NetworkListResponse networks = iaasApi.listNetworks(projectId, null);
86+
NetworkListResponse networks = iaasApi.listNetworks(projectId, REGION, null);
8487
System.out.println("\nAvailable networks: ");
8588
for (Network network : networks.getItems()) {
8689
System.out.println("* " + network.getName());
@@ -93,7 +96,7 @@ public static void main(String[] args) throws IOException {
9396
* */
9497

9598
/* list all available images */
96-
ImageListResponse images = iaasApi.listImages(projectId, false, null);
99+
ImageListResponse images = iaasApi.listImages(projectId, REGION, false, null);
97100
System.out.println("\nAvailable images: ");
98101
for (Image image : images.getItems()) {
99102
System.out.println(image.getId() + " | " + image.getName());
@@ -104,8 +107,8 @@ public static void main(String[] args) throws IOException {
104107
images.getItems()
105108
.get(0)
106109
.getId(); // we just use a random image id in our example
107-
assert imageId != null;
108-
Image fetchedImage = iaasApi.getImage(projectId, imageId);
110+
Objects.requireNonNull(imageId != null);
111+
Image fetchedImage = iaasApi.getImage(projectId, REGION, imageId);
109112
System.out.println("\nFetched image:");
110113
System.out.println("* Image name: " + fetchedImage.getName());
111114
System.out.println("* Image id: " + fetchedImage.getId());
@@ -137,7 +140,7 @@ public static void main(String[] args) throws IOException {
137140
System.out.println("\nKeypair created: " + newKeypair.getName());
138141

139142
/* update the keypair */
140-
assert newKeypair.getName() != null;
143+
Objects.requireNonNull(newKeypair.getName());
141144
iaasApi.updateKeyPair(
142145
newKeypair.getName(),
143146
new UpdateKeyPairPayload()
@@ -160,15 +163,17 @@ public static void main(String[] args) throws IOException {
160163
* */
161164

162165
/* list all available machine types */
163-
MachineTypeListResponse machineTypes = iaasApi.listMachineTypes(projectId, null);
166+
MachineTypeListResponse machineTypes =
167+
iaasApi.listMachineTypes(projectId, REGION, null);
164168
System.out.println("\nAvailable machine types: ");
165169
for (MachineType machineType : machineTypes.getItems()) {
166170
System.out.println("* " + machineType.getName());
167171
}
168172

169173
/* fetch details about a machine type */
170174
MachineType fetchedMachineType =
171-
iaasApi.getMachineType(projectId, machineTypes.getItems().get(0).getName());
175+
iaasApi.getMachineType(
176+
projectId, REGION, machineTypes.getItems().get(0).getName());
172177
System.out.println("\nFetched machine type: ");
173178
System.out.println("* Machine type name: " + fetchedMachineType.getName());
174179
System.out.println("* Description: " + fetchedMachineType.getDescription());
@@ -177,102 +182,121 @@ public static void main(String[] args) throws IOException {
177182
System.out.println("* vCPUs: " + fetchedMachineType.getVcpus());
178183
System.out.println("* Extra specs: " + fetchedMachineType.getExtraSpecs());
179184

180-
/*
181-
* create a server
182-
*
183-
* NOTE: see the following link for available machine types
184-
* https://docs.stackit.cloud/products/compute-engine/server/basics/machine-types/
185-
*
186-
* */
187-
Server newServer =
188-
iaasApi.createServer(
189-
projectId,
190-
new CreateServerPayload()
191-
.name("java-sdk-example-server-01")
192-
.machineType("t2i.1")
193-
.imageId(imageId)
194-
.labels(Collections.singletonMap("foo", "bar"))
195-
// add the keypair we created above
196-
.keypairName(newKeypair.getName())
197-
// add the server to the network we created above
198-
.networking(
199-
new CreateServerPayloadNetworking(
200-
new CreateServerNetworking()
201-
.networkId(
202-
newNetwork.getNetworkId()))));
203-
assert newServer.getId() != null;
204-
205-
/* wait for the server creation to complete */
206-
UUID serverId = newServer.getId();
207-
assert serverId != null;
208-
while (Objects.equals(
209-
iaasApi.getServer(projectId, serverId, false).getStatus(), "CREATING")) {
210-
System.out.println("Waiting for server creation to complete ...");
211-
TimeUnit.SECONDS.sleep(5);
212-
}
185+
UUID serverId = null;
186+
try {
187+
188+
/*
189+
* create a server
190+
*
191+
* NOTE: see the following link for available machine types
192+
* https://docs.stackit.cloud/products/compute-engine/server/basics/machine-types/
193+
*
194+
* */
195+
Server newServer =
196+
iaasApi.createServer(
197+
projectId,
198+
REGION,
199+
new CreateServerPayload()
200+
.name("java-sdk-example-server-01")
201+
.machineType("t2i.1")
202+
.bootVolume(
203+
new BootVolume()
204+
.deleteOnTermination(true)
205+
.size(32L)
206+
.source(
207+
new BootVolumeSource()
208+
.id(imageId)
209+
.type("image")))
210+
.labels(Collections.singletonMap("foo", "bar"))
211+
// add the keypair we created above
212+
.keypairName(newKeypair.getName())
213+
// add the server to the network we created above
214+
.networking(
215+
new CreateServerPayloadAllOfNetworking(
216+
new CreateServerNetworking()
217+
.networkId(newNetwork.getId()))));
218+
Objects.requireNonNull(newServer.getId());
219+
220+
/* wait for the server creation to complete */
221+
serverId = newServer.getId();
222+
Objects.requireNonNull(serverId);
223+
while (Objects.equals(
224+
iaasApi.getServer(projectId, REGION, serverId, false).getStatus(),
225+
"CREATING")) {
226+
System.out.println("Waiting for server creation to complete ...");
227+
TimeUnit.SECONDS.sleep(5);
228+
}
213229

214-
/* update the server we just created */
215-
iaasApi.updateServer(
216-
projectId,
217-
newServer.getId(),
218-
new UpdateServerPayload()
219-
.labels(Collections.singletonMap("foo", "bar-updated")));
220-
221-
/* list all servers */
222-
ServerListResponse servers = iaasApi.listServers(projectId, false, null);
223-
System.out.println("\nAvailable servers: ");
224-
for (Server server : servers.getItems()) {
225-
System.out.println("* " + server.getId() + " | " + server.getName());
226-
}
230+
/* update the server we just created */
231+
iaasApi.updateServer(
232+
projectId,
233+
REGION,
234+
newServer.getId(),
235+
new UpdateServerPayload()
236+
.labels(Collections.singletonMap("foo", "bar-updated")));
237+
238+
/* list all servers */
239+
ServerListResponse servers = iaasApi.listServers(projectId, REGION, false, null);
240+
System.out.println("\nAvailable servers: ");
241+
for (Server server : servers.getItems()) {
242+
System.out.println("* " + server.getId() + " | " + server.getName());
243+
}
227244

228-
/* fetch the server we just created */
229-
Server fetchedServer = iaasApi.getServer(projectId, serverId, false);
230-
System.out.println("\nFetched server:");
231-
System.out.println("* Name: " + fetchedServer.getName());
232-
System.out.println("* Id: " + fetchedServer.getId());
233-
if (fetchedServer.getLabels() != null) {
234-
System.out.println("* Labels: " + fetchedServer.getLabels().toString());
235-
}
236-
System.out.println("* Machine type: " + fetchedServer.getMachineType());
237-
System.out.println("* Created at: " + fetchedServer.getCreatedAt());
238-
System.out.println("* Updated at: " + fetchedServer.getUpdatedAt());
239-
System.out.println("* Launched at: " + fetchedServer.getLaunchedAt());
240-
241-
/* stop the server we just created */
242-
iaasApi.stopServer(projectId, serverId);
243-
/* wait for the server to stop */
244-
while (!Objects.equals(
245-
iaasApi.getServer(projectId, serverId, false).getPowerStatus(), "STOPPED")) {
246-
System.out.println("Waiting for server " + serverId + " to stop...");
247-
TimeUnit.SECONDS.sleep(5);
248-
}
245+
/* fetch the server we just created */
246+
Server fetchedServer = iaasApi.getServer(projectId, REGION, serverId, false);
247+
System.out.println("\nFetched server:");
248+
System.out.println("* Name: " + fetchedServer.getName());
249+
System.out.println("* Id: " + fetchedServer.getId());
250+
if (fetchedServer.getLabels() != null) {
251+
System.out.println("* Labels: " + fetchedServer.getLabels().toString());
252+
}
253+
System.out.println("* Machine type: " + fetchedServer.getMachineType());
254+
System.out.println("* Created at: " + fetchedServer.getCreatedAt());
255+
System.out.println("* Updated at: " + fetchedServer.getUpdatedAt());
256+
System.out.println("* Launched at: " + fetchedServer.getLaunchedAt());
257+
258+
/* stop the server we just created */
259+
iaasApi.stopServer(projectId, REGION, serverId);
260+
/* wait for the server to stop */
261+
while (!Objects.equals(
262+
iaasApi.getServer(projectId, REGION, serverId, false).getPowerStatus(),
263+
"STOPPED")) {
264+
System.out.println("Waiting for server " + serverId + " to stop...");
265+
TimeUnit.SECONDS.sleep(5);
266+
}
249267

250-
/* boot the server we just created */
251-
iaasApi.startServer(projectId, serverId);
252-
/* wait for the server to boot */
253-
while (!Objects.equals(
254-
iaasApi.getServer(projectId, serverId, false).getPowerStatus(), "RUNNING")) {
255-
System.out.println("Waiting for server " + serverId + " to boot...");
256-
TimeUnit.SECONDS.sleep(5);
257-
}
268+
/* boot the server we just created */
269+
iaasApi.startServer(projectId, REGION, serverId);
270+
/* wait for the server to boot */
271+
while (!Objects.equals(
272+
iaasApi.getServer(projectId, REGION, serverId, false).getPowerStatus(),
273+
"RUNNING")) {
274+
System.out.println("Waiting for server " + serverId + " to boot...");
275+
TimeUnit.SECONDS.sleep(5);
276+
}
258277

259-
/* reboot the server we just created */
260-
iaasApi.rebootServer(projectId, serverId, null);
278+
/* reboot the server we just created */
279+
iaasApi.rebootServer(projectId, REGION, serverId, null);
261280

281+
} catch (ApiException e) {
282+
System.out.println("server creation failed" + e);
283+
}
262284
/*
263285
* ///////////////////////////////////////////////////////
264286
* // D E L E T I O N //
265287
* ///////////////////////////////////////////////////////
266288
* */
267289

268290
/* delete the server we just created */
269-
iaasApi.deleteServer(projectId, serverId);
270-
System.out.println("Deleted server: " + serverId);
291+
if (serverId != null) {
292+
iaasApi.deleteServer(projectId, REGION, serverId);
293+
System.out.println("Deleted server: " + serverId);
294+
}
271295

272296
/* wait for server deletion to complete */
273297
while (true) {
274298
try {
275-
iaasApi.getServer(projectId, serverId, false);
299+
iaasApi.getServer(projectId, REGION, serverId, false);
276300
System.out.println("Waiting for server deletion to complete...");
277301
TimeUnit.SECONDS.sleep(5);
278302
} catch (ApiException e) {
@@ -287,8 +311,8 @@ public static void main(String[] args) throws IOException {
287311
System.out.println("Deleted key pair: " + newKeypair.getName());
288312

289313
/* delete the network we just created */
290-
iaasApi.deleteNetwork(projectId, newNetwork.getNetworkId());
291-
System.out.println("Deleted network: " + newNetwork.getNetworkId());
314+
iaasApi.deleteNetwork(projectId, REGION, newNetwork.getId());
315+
System.out.println("Deleted network: " + newNetwork.getId());
292316

293317
} catch (ApiException | InterruptedException e) {
294318
throw new RuntimeException(e);

examples/serverbackup/src/main/java/cloud/stackit/sdk/serverbackup/examples/ServerbackupExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public static void main(String[] args) throws IOException {
4747
UUID serverId = UUID.fromString(serverIdString);
4848

4949
try {
50-
Server server = iaasApi.getServer(projectId, serverId, true);
50+
Server server = iaasApi.getServer(projectId, REGION, serverId, true);
5151
assert server.getId() != null;
5252
assert server.getVolumes() != null;
5353

0 commit comments

Comments
 (0)