Skip to content

Commit

Permalink
Add Nack CRDs (#372)
Browse files Browse the repository at this point in the history
  • Loading branch information
codifierr authored Aug 28, 2024
1 parent eda1aa0 commit 329aee1
Show file tree
Hide file tree
Showing 6 changed files with 1,187 additions and 0 deletions.
77 changes: 77 additions & 0 deletions jetstream.nats.io/account_v1beta2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{
"properties": {
"spec": {
"properties": {
"creds": {
"description": "The creds to be used to connect to the NATS Service.",
"properties": {
"file": {
"description": "Credentials file, generated with github.com/nats-io/nsc tool.",
"type": "string"
},
"secret": {
"properties": {
"name": {
"description": "Name of the secret with the creds.",
"type": "string"
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"name": {
"description": "A unique name for the Account.",
"minLength": 1,
"pattern": "^[^.*>]*$",
"type": "string"
},
"servers": {
"description": "A list of servers to connect.",
"items": {
"minLength": 1,
"type": "string"
},
"minLength": 1,
"type": "array"
},
"tls": {
"description": "The TLS certs to be used to connect to the NATS Service.",
"properties": {
"ca": {
"description": "Filename of the Root CA of the TLS cert.",
"type": "string"
},
"cert": {
"description": "Filename of the TLS cert.",
"type": "string"
},
"key": {
"description": "Filename of the TLS cert key.",
"type": "string"
},
"secret": {
"properties": {
"name": {
"description": "Name of the TLS secret with the certs.",
"type": "string"
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object"
}

138 changes: 138 additions & 0 deletions jetstream.nats.io/consumer_v1beta1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
{
"properties": {
"spec": {
"properties": {
"ackPolicy": {
"default": "none",
"description": "How messages should be acknowledged.",
"enum": [
"none",
"all",
"explicit"
],
"type": "string"
},
"ackWait": {
"default": "1ns",
"description": "How long to allow messages to remain un-acknowledged before attempting redelivery.",
"type": "string"
},
"deliverGroup": {
"description": "The name of a queue group.",
"type": "string"
},
"deliverPolicy": {
"default": "all",
"enum": [
"all",
"last",
"new",
"byStartSequence",
"byStartTime"
],
"type": "string"
},
"deliverSubject": {
"description": "The subject to deliver observed messages, when not set, a pull-based Consumer is created.",
"type": "string"
},
"description": {
"description": "The description of the consumer.",
"type": "string"
},
"durableName": {
"description": "The name of the Consumer.",
"minLength": 1,
"pattern": "^[^.*>]+$",
"type": "string"
},
"filterSubject": {
"description": "Select only a specific incoming subjects, supports wildcards.",
"type": "string"
},
"flowControl": {
"default": false,
"description": "Enables flow control.",
"type": "boolean"
},
"heartbeatInterval": {
"description": "The interval used to deliver idle heartbeats for push-based consumers, in Go's time.Duration format.",
"type": "string"
},
"maxAckPending": {
"description": "Maximum pending Acks before consumers are paused.",
"type": "integer"
},
"maxDeliver": {
"minimum": -1,
"type": "integer"
},
"optStartSeq": {
"minimum": 0,
"type": "integer"
},
"optStartTime": {
"description": "Time format must be RFC3339.",
"type": "string"
},
"rateLimitBps": {
"description": "rate at which messages will be delivered to clients, expressed in bit per second.",
"type": "integer"
},
"replayPolicy": {
"default": "instant",
"description": "How messages are sent.",
"enum": [
"instant",
"original"
],
"type": "string"
},
"sampleFreq": {
"description": "What percentage of acknowledgements should be samples for observability.",
"type": "string"
},
"streamName": {
"description": "The name of the Stream to create the Consumer in.",
"type": "string"
}
},
"type": "object",
"additionalProperties": false
},
"status": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"type": "string"
},
"message": {
"type": "string"
},
"reason": {
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object",
"additionalProperties": false
},
"type": "array"
},
"observedGeneration": {
"type": "integer"
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object"
}
Loading

0 comments on commit 329aee1

Please sign in to comment.