Skip to content

Commit 5978d85

Browse files
authored
Change to MachineClass yaml instead of json (#703)
Signed-off-by: Lukas Frank <lukas.frank@sap.com>
1 parent c7dd356 commit 5978d85

17 files changed

Lines changed: 245 additions & 211 deletions

.github/workflows/integration-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,4 +93,4 @@ jobs:
9393
9494
- name: Run integration tests
9595
# Starting a new instance of the Bash shell to reflect the added permissions
96-
run: sudo -H -E -u $USER bash -c 'make integration-tests'
96+
run: sudo -H -E -u $USER bash -c 'GOTOOLCHAIN=auto make integration-tests'

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ build: manifests generate fmt vet add-license lint ## Build the binary
124124
.PHONY: run
125125
run: manifests generate fmt vet ## Run the binary
126126
go run $(LIBVIRT_PROVIDER_BIN_SOURCE)/main.go \
127-
--supported-machine-classes config/development/machineclasses.json \
127+
--supported-machine-classes config/development/machineclasses.yaml \
128128
--network-interface-plugin-name isolated \
129129
--address iri.sock
130130

config/development/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ resources:
1919

2020
configMapGenerator:
2121
- files:
22-
- machineclasses.json
22+
- machineclasses.yaml
2323
name: machineclasses
2424

2525
patches:

config/development/machineclasses.json

Lines changed: 0 additions & 30 deletions
This file was deleted.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
apiVersion: compute.ironcore.dev/v1alpha1
2+
kind: MachineClass
3+
metadata:
4+
name: gpu
5+
capabilities:
6+
cpu: "4"
7+
memory: 8Gi
8+
nvidia.com/gpu: "1"
9+
---
10+
apiVersion: compute.ironcore.dev/v1alpha1
11+
kind: MachineClass
12+
metadata:
13+
name: t3-small
14+
capabilities:
15+
cpu: "2"
16+
memory: 2Gi
17+
---
18+
apiVersion: compute.ironcore.dev/v1alpha1
19+
kind: MachineClass
20+
metadata:
21+
name: x3-xlarge
22+
capabilities:
23+
cpu: "4"
24+
memory: 8Gi

config/development/manager.patch.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ spec:
2424
- "--address"
2525
- "/var/lib/libvirt-provider/iri.sock"
2626
- "--supported-machine-classes"
27-
- "/etc/libvirt-provider/machineclasses.json"
27+
- "/etc/libvirt-provider/machineclasses.yaml"
2828
- "--network-interface-plugin-name"
2929
- "isolated"
3030
- "--libvirt-provider-dir"

docs/development/dev_setup.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
--address=<local-path>/iri-machinebroker.sock
7070
```
7171

72-
Sample `machine-classes.json` can be found [here](../../config/development/machineclasses.json).
72+
Sample `machineclasses.yaml` can be found [here](../../config/development/machineclasses.yaml).
7373

7474
## Interact with the `libvirt-provider`
7575

docs/usage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ libvirt-provider -h
4646

4747
The following flags are required for the application to run properly:
4848

49-
`--supported-machine-classes` (Path to the supported machine classes file). Sample `machine-classes.json` can be found [here](../config/development/machineclasses.json).
49+
`--supported-machine-classes` (Path to the supported machine classes file). Sample `machineclasses.yaml` can be found [here](../config/development/machineclasses.yaml).
5050

5151
---
5252

go.mod

Lines changed: 31 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ require (
1010
github.com/go-chi/chi/v5 v5.2.5
1111
github.com/go-logr/logr v1.4.3
1212
github.com/google/uuid v1.6.0
13-
github.com/ironcore-dev/controller-utils v0.10.0
14-
github.com/ironcore-dev/ironcore v0.2.5-0.20251024123813-eecafba97af9
13+
github.com/ironcore-dev/controller-utils v0.11.0
14+
github.com/ironcore-dev/ironcore v0.3.0
1515
github.com/ironcore-dev/ironcore-image v0.3.0
1616
github.com/ironcore-dev/ironcore-net v0.2.4
1717
github.com/ironcore-dev/provider-utils v0.0.0-20260127115859-8d108ef8e4b4
@@ -23,12 +23,12 @@ require (
2323
github.com/spf13/cobra v1.10.2
2424
github.com/spf13/pflag v1.0.10
2525
golang.org/x/sync v0.20.0
26-
google.golang.org/grpc v1.79.2
26+
google.golang.org/grpc v1.79.3
2727
k8s.io/api v0.34.1
2828
k8s.io/apimachinery v0.34.1
2929
k8s.io/client-go v0.34.1
3030
k8s.io/kubectl v0.34.1
31-
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397
31+
k8s.io/utils v0.0.0-20251002143259-bc988d571ff4
3232
libvirt.org/go/libvirtxml v1.12001.0
3333
sigs.k8s.io/controller-runtime v0.22.3
3434
)
@@ -54,17 +54,28 @@ require (
5454
github.com/docker/go-connections v0.6.0 // indirect
5555
github.com/docker/go-metrics v0.0.1 // indirect
5656
github.com/ebitengine/purego v0.10.0 // indirect
57-
github.com/emicklei/go-restful/v3 v3.12.2 // indirect
57+
github.com/emicklei/go-restful/v3 v3.13.0 // indirect
5858
github.com/evanphx/json-patch/v5 v5.9.11 // indirect
5959
github.com/felixge/httpsnoop v1.0.4 // indirect
6060
github.com/fsnotify/fsnotify v1.9.0 // indirect
6161
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
6262
github.com/go-logr/stdr v1.2.2 // indirect
6363
github.com/go-logr/zapr v1.3.0 // indirect
6464
github.com/go-ole/go-ole v1.3.0 // indirect
65-
github.com/go-openapi/jsonpointer v0.21.1 // indirect
66-
github.com/go-openapi/jsonreference v0.21.0 // indirect
67-
github.com/go-openapi/swag v0.23.1 // indirect
65+
github.com/go-openapi/jsonpointer v0.22.1 // indirect
66+
github.com/go-openapi/jsonreference v0.21.2 // indirect
67+
github.com/go-openapi/swag v0.25.1 // indirect
68+
github.com/go-openapi/swag/cmdutils v0.25.1 // indirect
69+
github.com/go-openapi/swag/conv v0.25.1 // indirect
70+
github.com/go-openapi/swag/fileutils v0.25.1 // indirect
71+
github.com/go-openapi/swag/jsonname v0.25.1 // indirect
72+
github.com/go-openapi/swag/jsonutils v0.25.1 // indirect
73+
github.com/go-openapi/swag/loading v0.25.1 // indirect
74+
github.com/go-openapi/swag/mangling v0.25.1 // indirect
75+
github.com/go-openapi/swag/netutils v0.25.1 // indirect
76+
github.com/go-openapi/swag/stringutils v0.25.1 // indirect
77+
github.com/go-openapi/swag/typeutils v0.25.1 // indirect
78+
github.com/go-openapi/swag/yamlutils v0.25.1 // indirect
6879
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
6980
github.com/gogo/protobuf v1.3.2 // indirect
7081
github.com/google/btree v1.1.3 // indirect
@@ -74,12 +85,10 @@ require (
7485
github.com/gorilla/mux v1.8.1 // indirect
7586
github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect
7687
github.com/inconshreveable/mousetrap v1.1.0 // indirect
77-
github.com/josharian/intern v1.0.0 // indirect
7888
github.com/json-iterator/go v1.1.12 // indirect
7989
github.com/klauspost/compress v1.18.0 // indirect
8090
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect
8191
github.com/lufia/plan9stats v0.0.0-20250303091104-876f3ea5145d // indirect
82-
github.com/mailru/easyjson v0.9.0 // indirect
8392
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
8493
github.com/moby/locker v1.0.1 // indirect
8594
github.com/moby/spdystream v0.5.0 // indirect
@@ -93,44 +102,44 @@ require (
93102
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
94103
github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect
95104
github.com/prometheus/client_model v0.6.2 // indirect
96-
github.com/prometheus/common v0.66.1 // indirect
105+
github.com/prometheus/common v0.67.1 // indirect
97106
github.com/prometheus/procfs v0.19.2 // indirect
98107
github.com/sirupsen/logrus v1.9.3 // indirect
99108
github.com/tklauser/go-sysconf v0.3.16 // indirect
100109
github.com/tklauser/numcpus v0.11.0 // indirect
101110
github.com/x448/float16 v0.8.4 // indirect
102111
github.com/yusufpapurcu/wmi v1.2.4 // indirect
103112
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
104-
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 // indirect
105-
go.opentelemetry.io/otel v1.39.0 // indirect
106-
go.opentelemetry.io/otel/metric v1.39.0 // indirect
107-
go.opentelemetry.io/otel/trace v1.39.0 // indirect
113+
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 // indirect
114+
go.opentelemetry.io/otel v1.40.0 // indirect
115+
go.opentelemetry.io/otel/metric v1.40.0 // indirect
116+
go.opentelemetry.io/otel/trace v1.40.0 // indirect
108117
go.uber.org/multierr v1.11.0 // indirect
109118
go.uber.org/zap v1.27.1 // indirect
110-
go.yaml.in/yaml/v2 v2.4.2 // indirect
119+
go.yaml.in/yaml/v2 v2.4.3 // indirect
111120
go.yaml.in/yaml/v3 v3.0.4 // indirect
121+
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba // indirect
112122
golang.org/x/crypto v0.47.0 // indirect
113123
golang.org/x/mod v0.32.0 // indirect
114124
golang.org/x/net v0.49.0 // indirect
115125
golang.org/x/oauth2 v0.34.0 // indirect
116126
golang.org/x/sys v0.41.0 // indirect
117127
golang.org/x/term v0.39.0 // indirect
118128
golang.org/x/text v0.33.0 // indirect
119-
golang.org/x/time v0.12.0 // indirect
129+
golang.org/x/time v0.14.0 // indirect
120130
golang.org/x/tools v0.41.0 // indirect
121131
gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect
122132
google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217 // indirect
123-
google.golang.org/protobuf v1.36.10 // indirect
124-
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
133+
google.golang.org/protobuf v1.36.11 // indirect
134+
gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
125135
gopkg.in/inf.v0 v0.9.1 // indirect
126-
gopkg.in/yaml.v3 v3.0.1 // indirect
127136
k8s.io/apiextensions-apiserver v0.34.1 // indirect
128137
k8s.io/apiserver v0.34.1 // indirect
129138
k8s.io/cli-runtime v0.34.1 // indirect
130139
k8s.io/klog/v2 v2.130.1 // indirect
131-
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b // indirect
140+
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect
132141
oras.land/oras-go v1.2.7 // indirect
133-
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
142+
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect
134143
sigs.k8s.io/randfill v1.0.0 // indirect
135144
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect
136145
sigs.k8s.io/yaml v1.6.0 // indirect

0 commit comments

Comments
 (0)