Skip to content

Commit

Permalink
The Makefile was generating manifests for v1alpha2:
Browse files Browse the repository at this point in the history
v1alpha2 is not implemented yet. We just want v1alpha1

Signed-off-by: Jacob Weinstock <[email protected]>
  • Loading branch information
jacobweinstock committed Oct 23, 2024
1 parent dfa8e28 commit 0ccecbb
Show file tree
Hide file tree
Showing 6 changed files with 8 additions and 486 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ generate-manifests: generate-crds generate-rbac
.PHONY: generate-crds
generate-crds: $(CONTROLLER_GEN) $(YAMLFMT)
$(CONTROLLER_GEN) \
paths=./api/... \
paths=./api/v1alpha1/... \
crd:crdVersions=v1 \
output:crd:dir=./config/crd/bases \
output:webhook:dir=./config/webhook \
Expand Down
4 changes: 2 additions & 2 deletions api/v1alpha1/hardware_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,8 @@ type Interface struct {
DHCP *DHCP `json:"dhcp,omitempty"`

// DisableDHCP disables DHCP for this interface.
// +kubebuilder:default=false
DisableDHCP bool `json:"disableDhcp,omitempty"`
// +optional
DisableDHCP *bool `json:"disableDhcp,omitempty"`
}

// Netboot configuration.
Expand Down
5 changes: 5 additions & 0 deletions api/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

163 changes: 0 additions & 163 deletions config/crd/bases/tinkerbell.org_hardware.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,6 @@ spec:
type: string
type: object
disableDhcp:
default: false
description: DisableDHCP disables DHCP for this interface.
type: boolean
netboot:
Expand Down Expand Up @@ -386,165 +385,3 @@ spec:
storage: true
subresources:
status: {}
- additionalPrinterColumns:
- description: Baseboard management computer attached to the Hardware
jsonPath: .spec.bmcRef
name: BMC
type: string
name: v1alpha2
schema:
openAPIV3Schema:
description: Hardware is a logical representation of a machine that can execute Workflows.
properties:
apiVersion:
description: |-
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
description: |-
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
spec:
properties:
bmcRef:
description: BMCRef references a Rufio Machine object.
properties:
name:
default: ""
description: |-
Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
type: object
x-kubernetes-map-type: atomic
instance:
description: Instance describes instance specific data that is generally unused by Tinkerbell core.
properties:
userdata:
description: Userdata is data with a structure understood by the producer and consumer of the data.
type: string
vendordata:
description: Vendordata is data with a structure understood by the producer and consumer of the data.
type: string
type: object
ipxe:
description: |-
IPXE provides iPXE script override fields. This is useful for debugging or netboot
customization.
properties:
inline:
description: Content is an inline iPXE script.
type: string
url:
description: URL is a URL to a hosted iPXE script.
type: string
type: object
kernelParams:
description: |-
KernelParams passed to the kernel when launching the OSIE. Parameters are joined with a
space.
items:
type: string
type: array
networkInterfaces:
additionalProperties:
description: NetworkInterface is the desired configuration for a particular network interface.
properties:
dhcp:
description: |-
DHCP is the basic network information for serving DHCP requests. Required when DisbaleDHCP
is false.
properties:
gateway:
description: Gateway is the default gateway address to serve.
pattern: (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}
type: string
hostname:
pattern: ^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9]"[A-Za-z0-9\-]*[A-Za-z0-9])$
type: string
ip:
description: IP is an IPv4 address to serve.
pattern: (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}
type: string
leaseTimeSeconds:
default: 86400
description: |-
LeaseTimeSeconds to serve. 24h default. Maximum equates to max uint32 as defined by RFC 2132
§ 9.2 (https://www.rfc-editor.org/rfc/rfc2132.html#section-9.2).
format: int64
maximum: 4294967295
minimum: 0
type: integer
nameservers:
description: Nameservers to serve.
items:
description: Nameserver is an IP or hostname.
pattern: ^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$|^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
type: string
type: array
netmask:
description: Netmask is an IPv4 netmask to serve.
type: string
timeservers:
description: Timeservers to serve.
items:
description: Timeserver is an IP or hostname.
pattern: ^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$|^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
type: string
type: array
vlanId:
description: VLANID is a VLAN ID between 0 and 4096.
pattern: ^(([0-9][0-9]{0,2}|[1-3][0-9][0-9][0-9]|40([0-8][0-9]|9[0-6]))(,[1-9][0-9]{0,2}|[1-3][0-9][0-9][0-9]|40([0-8][0-9]|9[0-6]))*)$
type: string
type: object
disableDhcp:
default: false
description: DisableDHCP disables DHCP for this interface. Implies DisableNetboot.
type: boolean
disableNetboot:
default: false
description: |-
DisableNetboot disables netbooting for this interface. The interface will still receive
network information specified by DHCP.
type: boolean
type: object
description: NetworkInterfaces defines the desired DHCP and netboot configuration for a network interface.
type: object
osie:
description: OSIE describes the Operating System Installation Environment to be netbooted.
properties:
name:
default: ""
description: |-
Name of the referent.
This field is effectively required, but due to backwards compatibility is
allowed to be empty. Instances of this type with an empty value here are
almost certainly wrong.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
type: object
x-kubernetes-map-type: atomic
storageDevices:
description: StorageDevices is a list of storage devices that will be available in the OSIE.
items:
description: "StorageDevice describes a storage device path that will be present in the OSIE.\nStorageDevices must be valid Linux paths. They should not contain partitions.\n\nGood\n\n\t/dev/sda\n\t/dev/nvme0n1\n\nBad (contains partitions)\n\n\t/dev/sda1\n\t/dev/nvme0n1p1\n\nBad (invalid Linux path)\n\n\t\\dev\\sda"
pattern: ^(/[^/ ]*)+/?$
type: string
type: array
type: object
type: object
served: false
storage: false
subresources: {}
101 changes: 0 additions & 101 deletions config/crd/bases/tinkerbell.org_templates.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,104 +61,3 @@ spec:
storage: true
subresources:
status: {}
- name: v1alpha2
schema:
openAPIV3Schema:
description: |-
Template defines a set of actions to be run on a target machine. The template is rendered
prior to execution where it is exposed to Hardware and user defined data. Most fields within the
TemplateSpec may contain templates values excluding .TemplateSpec.Actions[].Name.
See https://pkg.go.dev/text/template for more details.
properties:
apiVersion:
description: |-
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
description: |-
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
spec:
properties:
actions:
description: |-
Actions defines the set of actions to be run on a target machine. Actions are run sequentially
in the order they are specified. At least 1 action must be specified. Names of actions
must be unique within a Template.
items:
description: Action defines an individual action to be run on a target machine.
properties:
args:
description: |-
Args are a set of arguments to be passed to the command executed by the container on
launch.
items:
type: string
type: array
cmd:
description: |-
Cmd defines the command to use when launching the image. It overrides the default command
of the action. It must be a unix path to an executable program.
pattern: ^(/[^/ ]*)+/?$
type: string
env:
additionalProperties:
type: string
description: Env defines environment variables used when launching the container.
type: object
image:
description: Image is an OCI image.
type: string
name:
description: Name is a name for the action.
type: string
namespaces:
description: Namespace defines the Linux namespaces this container should execute in.
properties:
network:
description: Network defines the network namespace.
type: string
pid:
description: PID defines the PID namespace
type: integer
type: object
volumes:
description: Volumes defines the volumes to mount into the container.
items:
description: "Volume is a specification for mounting a volume in an action. Volumes take the form\n{SRC-VOLUME-NAME | SRC-HOST-DIR}:TGT-CONTAINER-DIR:OPTIONS. When specifying a VOLUME-NAME that\ndoes not exist it will be created for you. Examples:\n\nRead-only bind mount bound to /data\n\n\t/etc/data:/data:ro\n\nWritable volume name bound to /data\n\n\tshared_volume:/data\n\nSee https://docs.docker.com/storage/volumes/ for additional details."
type: string
type: array
required:
- image
- name
type: object
minItems: 1
type: array
env:
additionalProperties:
type: string
description: |-
Env defines environment variables to be available in all actions. If an action specifies
the same environment variable it will take precedence.
type: object
volumes:
description: |-
Volumes to be mounted on all actions. If an action specifies the same volume it will take
precedence.
items:
description: "Volume is a specification for mounting a volume in an action. Volumes take the form\n{SRC-VOLUME-NAME | SRC-HOST-DIR}:TGT-CONTAINER-DIR:OPTIONS. When specifying a VOLUME-NAME that\ndoes not exist it will be created for you. Examples:\n\nRead-only bind mount bound to /data\n\n\t/etc/data:/data:ro\n\nWritable volume name bound to /data\n\n\tshared_volume:/data\n\nSee https://docs.docker.com/storage/volumes/ for additional details."
type: string
type: array
type: object
type: object
served: false
storage: false
Loading

0 comments on commit 0ccecbb

Please sign in to comment.