diff options
author | Harald Musum <musum@verizonmedia.com> | 2022-02-25 11:36:13 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-25 11:36:13 +0100 |
commit | 484861ffd79e943ec9dcacd5b02aab8e6b91709d (patch) | |
tree | 0c088aac8c5c90d86bd2d29b515fa63b08464a2c /controller-api | |
parent | 9fa74366994fa991c21db246df97377149fc37b9 (diff) | |
parent | 408ccb0e90f46ad702c175cc91912a4e2d6d6a88 (diff) |
Merge pull request #21382 from vespa-engine/hmusum/add-architecture-to-node-repo-rest-api
Add architecture to node repo rest api
Diffstat (limited to 'controller-api')
-rw-r--r-- | controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeResources.java | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeResources.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeResources.java index 2673e855751..ccd1a9a745b 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeResources.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeResources.java @@ -24,6 +24,8 @@ public class NodeResources { private String diskSpeed; @JsonProperty private String storageType; + @JsonProperty + private String architecture = "x86_64"; // TODO: Remove default value for architecture public Double getVcpu() { return vcpu; @@ -73,10 +75,19 @@ public class NodeResources { this.storageType = storageType; } + public String getArchitecture() { + return architecture; + } + + public void setArchitecture(String architecture) { + this.architecture = architecture; + } + public com.yahoo.config.provision.NodeResources toNodeResources() { return new com.yahoo.config.provision.NodeResources(vcpu, memoryGb, diskGb, bandwidthGbps, toDiskSpeed(diskSpeed), - toStorageType(storageType)); + toStorageType(storageType), + toArchitecture(architecture)); } private com.yahoo.config.provision.NodeResources.DiskSpeed toDiskSpeed(String diskSpeed) { @@ -97,6 +108,15 @@ public class NodeResources { } } + private com.yahoo.config.provision.NodeResources.Architecture toArchitecture(String architecture) { + switch (architecture) { + case "arm64" : return com.yahoo.config.provision.NodeResources.Architecture.arm64; + case "x86_64" : return com.yahoo.config.provision.NodeResources.Architecture.x86_64; + case "any" : return com.yahoo.config.provision.NodeResources.Architecture.any; + default : throw new IllegalArgumentException("Unknown architecture '" + architecture + "'"); + } + } + @Override public String toString() { return "NodeResources{" + @@ -106,6 +126,7 @@ public class NodeResources { ", bandwidthGbps=" + bandwidthGbps + ", diskSpeed='" + diskSpeed + '\'' + ", storageType='" + storageType + '\'' + + ", architecture='" + architecture + '\'' + '}'; } } |