@intentius/chant-lexicon-k8s 0.41.19 → 0.42.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/builders.d.ts +4 -0
- package/dist/components/builders.d.ts.map +1 -1
- package/dist/components/capability-plugin.d.ts +1 -1
- package/dist/components/capability-plugin.d.ts.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/kustomize-apply.d.ts +48 -0
- package/dist/components/kustomize-apply.d.ts.map +1 -0
- package/dist/deep-observe-hooks.d.ts +8 -0
- package/dist/deep-observe-hooks.d.ts.map +1 -1
- package/dist/describe-resources.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/integrity.json +2 -2
- package/dist/manifest.json +1 -1
- package/dist/okf/index.md +250 -0
- package/dist/okf/rules/ARGO001.md +16 -0
- package/dist/okf/rules/ARGO002.md +16 -0
- package/dist/okf/rules/ARGO003.md +15 -0
- package/dist/okf/rules/ARGO004.md +17 -0
- package/dist/okf/rules/ARGO005.md +15 -0
- package/dist/okf/rules/WK8001.md +16 -0
- package/dist/okf/rules/WK8002.md +20 -0
- package/dist/okf/rules/WK8003.md +19 -0
- package/dist/okf/rules/WK8005.md +11 -0
- package/dist/okf/rules/WK8006.md +11 -0
- package/dist/okf/rules/WK8041.md +11 -0
- package/dist/okf/rules/WK8042.md +11 -0
- package/dist/okf/rules/WK8101.md +11 -0
- package/dist/okf/rules/WK8102.md +11 -0
- package/dist/okf/rules/WK8103.md +11 -0
- package/dist/okf/rules/WK8104.md +15 -0
- package/dist/okf/rules/WK8105.md +11 -0
- package/dist/okf/rules/WK8201.md +11 -0
- package/dist/okf/rules/WK8202.md +11 -0
- package/dist/okf/rules/WK8203.md +11 -0
- package/dist/okf/rules/WK8204.md +11 -0
- package/dist/okf/rules/WK8205.md +11 -0
- package/dist/okf/rules/WK8207.md +11 -0
- package/dist/okf/rules/WK8208.md +11 -0
- package/dist/okf/rules/WK8209.md +11 -0
- package/dist/okf/rules/WK8301.md +16 -0
- package/dist/okf/rules/WK8302.md +11 -0
- package/dist/okf/rules/WK8303.md +15 -0
- package/dist/okf/rules/WK8304.md +15 -0
- package/dist/okf/rules/WK8305.md +15 -0
- package/dist/okf/rules/WK8306.md +11 -0
- package/dist/okf/rules/WK8401.md +15 -0
- package/dist/okf/rules/WK8402.md +15 -0
- package/dist/okf/rules/WK8403.md +15 -0
- package/dist/okf/types/APIGroup.md +16 -0
- package/dist/okf/types/APIGroupList.md +13 -0
- package/dist/okf/types/APIResourceList.md +14 -0
- package/dist/okf/types/APIService.md +14 -0
- package/dist/okf/types/APIServiceList.md +14 -0
- package/dist/okf/types/APIVersions.md +14 -0
- package/dist/okf/types/Alert.md +14 -0
- package/dist/okf/types/AppProject.md +19 -0
- package/dist/okf/types/Application.md +23 -0
- package/dist/okf/types/ApplicationSet.md +18 -0
- package/dist/okf/types/Backup.md +14 -0
- package/dist/okf/types/BatchJob.md +14 -0
- package/dist/okf/types/Binding.md +14 -0
- package/dist/okf/types/Bucket.md +14 -0
- package/dist/okf/types/CM.md +16 -0
- package/dist/okf/types/CSIDriver.md +14 -0
- package/dist/okf/types/CSIDriverList.md +14 -0
- package/dist/okf/types/CSINode.md +14 -0
- package/dist/okf/types/CSINodeList.md +14 -0
- package/dist/okf/types/CSIStorageCapacity.md +17 -0
- package/dist/okf/types/CSIStorageCapacityList.md +14 -0
- package/dist/okf/types/Certificate.md +18 -0
- package/dist/okf/types/CertificateRequest.md +14 -0
- package/dist/okf/types/CertificateSigningRequest.md +14 -0
- package/dist/okf/types/CertificateSigningRequestList.md +14 -0
- package/dist/okf/types/Challenge.md +14 -0
- package/dist/okf/types/Cluster.md +14 -0
- package/dist/okf/types/ClusterIssuer.md +14 -0
- package/dist/okf/types/ClusterRole.md +15 -0
- package/dist/okf/types/ClusterRoleBinding.md +15 -0
- package/dist/okf/types/ClusterRoleBindingList.md +14 -0
- package/dist/okf/types/ClusterRoleList.md +14 -0
- package/dist/okf/types/ClusterTrustBundle.md +14 -0
- package/dist/okf/types/ClusterTrustBundleList.md +14 -0
- package/dist/okf/types/ComponentStatus.md +14 -0
- package/dist/okf/types/ComponentStatusList.md +14 -0
- package/dist/okf/types/ConfigMapList.md +14 -0
- package/dist/okf/types/ControllerRevision.md +15 -0
- package/dist/okf/types/ControllerRevisionList.md +14 -0
- package/dist/okf/types/CoreEventList.md +14 -0
- package/dist/okf/types/CrdbCluster.md +14 -0
- package/dist/okf/types/CronJob.md +20 -0
- package/dist/okf/types/CronJobList.md +14 -0
- package/dist/okf/types/CustomResourceDefinition.md +14 -0
- package/dist/okf/types/CustomResourceDefinitionList.md +14 -0
- package/dist/okf/types/DaemonSet.md +19 -0
- package/dist/okf/types/DaemonSetList.md +14 -0
- package/dist/okf/types/DeleteOptions.md +18 -0
- package/dist/okf/types/Deploy.md +14 -0
- package/dist/okf/types/DeploymentList.md +14 -0
- package/dist/okf/types/DeviceClass.md +14 -0
- package/dist/okf/types/DeviceClassList.md +14 -0
- package/dist/okf/types/DeviceTaintRule.md +14 -0
- package/dist/okf/types/DeviceTaintRuleList.md +14 -0
- package/dist/okf/types/EndpointSlice.md +16 -0
- package/dist/okf/types/EndpointSliceList.md +14 -0
- package/dist/okf/types/Endpoints.md +14 -0
- package/dist/okf/types/EndpointsList.md +14 -0
- package/dist/okf/types/Event.md +27 -0
- package/dist/okf/types/EventsEvent.md +27 -0
- package/dist/okf/types/EventsEventList.md +14 -0
- package/dist/okf/types/Eviction.md +14 -0
- package/dist/okf/types/FlowSchema.md +14 -0
- package/dist/okf/types/FlowSchemaList.md +14 -0
- package/dist/okf/types/FluxInstance.md +14 -0
- package/dist/okf/types/FluxReport.md +14 -0
- package/dist/okf/types/GRPCRoute.md +14 -0
- package/dist/okf/types/Gateway.md +14 -0
- package/dist/okf/types/GatewayClass.md +14 -0
- package/dist/okf/types/GitRepository.md +14 -0
- package/dist/okf/types/HTTPRoute.md +14 -0
- package/dist/okf/types/HelmChart.md +14 -0
- package/dist/okf/types/HelmRelease.md +14 -0
- package/dist/okf/types/HelmRepository.md +14 -0
- package/dist/okf/types/HorizontalPodAutoscaler.md +14 -0
- package/dist/okf/types/HorizontalPodAutoscalerList.md +14 -0
- package/dist/okf/types/IPAddress.md +14 -0
- package/dist/okf/types/IPAddressList.md +14 -0
- package/dist/okf/types/ImagePolicy.md +14 -0
- package/dist/okf/types/ImageRepository.md +14 -0
- package/dist/okf/types/ImageUpdateAutomation.md +14 -0
- package/dist/okf/types/InfisicalDynamicSecret.md +14 -0
- package/dist/okf/types/InfisicalPushSecret.md +14 -0
- package/dist/okf/types/InfisicalSecret.md +14 -0
- package/dist/okf/types/Ing.md +14 -0
- package/dist/okf/types/IngressClass.md +14 -0
- package/dist/okf/types/IngressClassList.md +14 -0
- package/dist/okf/types/IngressList.md +14 -0
- package/dist/okf/types/IngressRoute.md +14 -0
- package/dist/okf/types/IngressRouteTCP.md +14 -0
- package/dist/okf/types/IngressRouteUDP.md +14 -0
- package/dist/okf/types/Issuer.md +14 -0
- package/dist/okf/types/JobList.md +14 -0
- package/dist/okf/types/Kustomization.md +14 -0
- package/dist/okf/types/Lease.md +14 -0
- package/dist/okf/types/LeaseCandidate.md +14 -0
- package/dist/okf/types/LeaseCandidateList.md +14 -0
- package/dist/okf/types/LeaseList.md +14 -0
- package/dist/okf/types/LimitRange.md +14 -0
- package/dist/okf/types/LimitRangeList.md +14 -0
- package/dist/okf/types/LocalSubjectAccessReview.md +14 -0
- package/dist/okf/types/MicroVM.md +14 -0
- package/dist/okf/types/MicroVMClass.md +14 -0
- package/dist/okf/types/MicroVMImage.md +14 -0
- package/dist/okf/types/MicroVMNetwork.md +14 -0
- package/dist/okf/types/MicroVMReplicaSet.md +14 -0
- package/dist/okf/types/Middleware.md +14 -0
- package/dist/okf/types/MiddlewareTCP.md +14 -0
- package/dist/okf/types/MutatingAdmissionPolicy.md +14 -0
- package/dist/okf/types/MutatingAdmissionPolicyBinding.md +14 -0
- package/dist/okf/types/MutatingAdmissionPolicyBindingList.md +14 -0
- package/dist/okf/types/MutatingAdmissionPolicyList.md +14 -0
- package/dist/okf/types/MutatingWebhookConfiguration.md +14 -0
- package/dist/okf/types/MutatingWebhookConfigurationList.md +14 -0
- package/dist/okf/types/Namespace.md +18 -0
- package/dist/okf/types/NamespaceList.md +14 -0
- package/dist/okf/types/NetPol.md +14 -0
- package/dist/okf/types/NetworkPolicyList.md +14 -0
- package/dist/okf/types/Node.md +21 -0
- package/dist/okf/types/NodeList.md +14 -0
- package/dist/okf/types/OCIRepository.md +14 -0
- package/dist/okf/types/ObjectStore.md +14 -0
- package/dist/okf/types/Order.md +14 -0
- package/dist/okf/types/PDB.md +18 -0
- package/dist/okf/types/PersistentVolume.md +14 -0
- package/dist/okf/types/PersistentVolumeClaim.md +14 -0
- package/dist/okf/types/PersistentVolumeClaimList.md +14 -0
- package/dist/okf/types/PersistentVolumeList.md +14 -0
- package/dist/okf/types/Pod.md +18 -0
- package/dist/okf/types/PodCertificateRequest.md +14 -0
- package/dist/okf/types/PodCertificateRequestList.md +14 -0
- package/dist/okf/types/PodDisruptionBudgetList.md +14 -0
- package/dist/okf/types/PodList.md +14 -0
- package/dist/okf/types/PodTemplate.md +14 -0
- package/dist/okf/types/PodTemplateList.md +14 -0
- package/dist/okf/types/Pooler.md +14 -0
- package/dist/okf/types/PriorityClass.md +17 -0
- package/dist/okf/types/PriorityClassList.md +14 -0
- package/dist/okf/types/PriorityLevelConfiguration.md +14 -0
- package/dist/okf/types/PriorityLevelConfigurationList.md +14 -0
- package/dist/okf/types/PrometheusRule.md +14 -0
- package/dist/okf/types/Provider.md +14 -0
- package/dist/okf/types/RayCluster.md +20 -0
- package/dist/okf/types/RayJob.md +14 -0
- package/dist/okf/types/RayService.md +14 -0
- package/dist/okf/types/Receiver.md +14 -0
- package/dist/okf/types/ReferenceGrant.md +14 -0
- package/dist/okf/types/ReplicaSet.md +19 -0
- package/dist/okf/types/ReplicaSetList.md +14 -0
- package/dist/okf/types/ReplicationController.md +14 -0
- package/dist/okf/types/ReplicationControllerList.md +14 -0
- package/dist/okf/types/ResourceClaim.md +14 -0
- package/dist/okf/types/ResourceClaimList.md +14 -0
- package/dist/okf/types/ResourceClaimTemplate.md +14 -0
- package/dist/okf/types/ResourceClaimTemplateList.md +14 -0
- package/dist/okf/types/ResourceQuota.md +14 -0
- package/dist/okf/types/ResourceQuotaList.md +14 -0
- package/dist/okf/types/ResourceSet.md +14 -0
- package/dist/okf/types/ResourceSetInputProvider.md +14 -0
- package/dist/okf/types/ResourceSlice.md +14 -0
- package/dist/okf/types/ResourceSliceList.md +14 -0
- package/dist/okf/types/Role.md +14 -0
- package/dist/okf/types/RoleBinding.md +15 -0
- package/dist/okf/types/RoleBindingList.md +14 -0
- package/dist/okf/types/RoleList.md +14 -0
- package/dist/okf/types/RuntimeClass.md +16 -0
- package/dist/okf/types/RuntimeClassList.md +14 -0
- package/dist/okf/types/SA.md +16 -0
- package/dist/okf/types/Scale.md +14 -0
- package/dist/okf/types/ScheduledBackup.md +14 -0
- package/dist/okf/types/Sec.md +17 -0
- package/dist/okf/types/SecretList.md +14 -0
- package/dist/okf/types/SelfSubjectAccessReview.md +14 -0
- package/dist/okf/types/SelfSubjectReview.md +13 -0
- package/dist/okf/types/SelfSubjectRulesReview.md +14 -0
- package/dist/okf/types/ServersTransport.md +14 -0
- package/dist/okf/types/ServersTransportTCP.md +14 -0
- package/dist/okf/types/Service.md +20 -0
- package/dist/okf/types/ServiceAccountList.md +14 -0
- package/dist/okf/types/ServiceCIDR.md +14 -0
- package/dist/okf/types/ServiceCIDRList.md +14 -0
- package/dist/okf/types/ServiceList.md +14 -0
- package/dist/okf/types/ServiceMonitor.md +14 -0
- package/dist/okf/types/StatefulSet.md +19 -0
- package/dist/okf/types/StatefulSetList.md +14 -0
- package/dist/okf/types/Status.md +17 -0
- package/dist/okf/types/StorageClass.md +20 -0
- package/dist/okf/types/StorageClassList.md +14 -0
- package/dist/okf/types/StorageVersionMigration.md +14 -0
- package/dist/okf/types/StorageVersionMigrationList.md +14 -0
- package/dist/okf/types/SubjectAccessReview.md +14 -0
- package/dist/okf/types/TLSOption.md +14 -0
- package/dist/okf/types/TLSStore.md +14 -0
- package/dist/okf/types/TokenRequest.md +14 -0
- package/dist/okf/types/TokenReview.md +14 -0
- package/dist/okf/types/TraefikService.md +14 -0
- package/dist/okf/types/ValidatingAdmissionPolicy.md +14 -0
- package/dist/okf/types/ValidatingAdmissionPolicyBinding.md +14 -0
- package/dist/okf/types/ValidatingAdmissionPolicyBindingList.md +14 -0
- package/dist/okf/types/ValidatingAdmissionPolicyList.md +14 -0
- package/dist/okf/types/ValidatingWebhookConfiguration.md +14 -0
- package/dist/okf/types/ValidatingWebhookConfigurationList.md +14 -0
- package/dist/okf/types/VolumeAttachment.md +14 -0
- package/dist/okf/types/VolumeAttachmentList.md +14 -0
- package/dist/okf/types/VolumeAttributesClass.md +15 -0
- package/dist/okf/types/VolumeAttributesClassList.md +14 -0
- package/dist/okf/types/WatchEvent.md +14 -0
- package/dist/op/activities/kubectl.d.ts +15 -1
- package/dist/op/activities/kubectl.d.ts.map +1 -1
- package/dist/op/activities/wait-for-ready.d.ts +16 -6
- package/dist/op/activities/wait-for-ready.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/components/builders.ts +5 -0
- package/src/components/capability-plugin.ts +3 -2
- package/src/components/index.ts +7 -0
- package/src/components/kustomize-apply.test.ts +98 -0
- package/src/components/kustomize-apply.ts +133 -0
- package/src/deep-observe-hooks.ts +60 -0
- package/src/deep-observe.test.ts +114 -0
- package/src/describe-resources.test.ts +159 -0
- package/src/describe-resources.ts +142 -2
- package/src/index.ts +1 -0
- package/src/op/activities/kubectl.test.ts +22 -0
- package/src/op/activities/kubectl.ts +15 -2
- package/src/op/activities/wait-for-ready.test.ts +27 -0
- package/src/op/activities/wait-for-ready.ts +84 -6
|
@@ -11,7 +11,11 @@
|
|
|
11
11
|
* instead of a raw object literal.
|
|
12
12
|
*/
|
|
13
13
|
import type { KubectlApplyInput } from "./kubectl-apply.js";
|
|
14
|
+
import type { KustomizeApplyInput } from "./kustomize-apply.js";
|
|
14
15
|
export declare const kubectlApply: (input: KubectlApplyInput & {
|
|
15
16
|
noRollback?: string;
|
|
16
17
|
}) => import("@intentius/chant/components").Step;
|
|
18
|
+
export declare const kustomizeApply: (input: KustomizeApplyInput & {
|
|
19
|
+
noRollback?: string;
|
|
20
|
+
}) => import("@intentius/chant/components").Step;
|
|
17
21
|
//# sourceMappingURL=builders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/components/builders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/components/builders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,eAAO,MAAM,YAAY;iBAA2C,MAAM;gDAAoB,CAAC;AAI/F,eAAO,MAAM,cAAc;iBAA6C,MAAM;gDAAsB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type CapabilityPlugin } from "@intentius/chant/components/capability-plugin";
|
|
2
2
|
export declare const K8S_VERB_FAMILIES: {
|
|
3
|
-
readonly apply: readonly ["kubectl-apply"];
|
|
3
|
+
readonly apply: readonly ["kubectl-apply", "kustomize-apply"];
|
|
4
4
|
};
|
|
5
5
|
export declare const k8sCapabilityPlugin: CapabilityPlugin;
|
|
6
6
|
//# sourceMappingURL=capability-plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability-plugin.d.ts","sourceRoot":"","sources":["../../src/components/capability-plugin.ts"],"names":[],"mappings":"AAWA,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"capability-plugin.d.ts","sourceRoot":"","sources":["../../src/components/capability-plugin.ts"],"names":[],"mappings":"AAWA,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAIzG,eAAO,MAAM,iBAAiB;;CAEpB,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,gBAWjC,CAAC"}
|
|
@@ -13,4 +13,5 @@
|
|
|
13
13
|
export { k8sCapabilityPlugin, K8S_VERB_FAMILIES } from "./capability-plugin.js";
|
|
14
14
|
export * from "./builders.js";
|
|
15
15
|
export { kubectlApplyCapability, createKubectlApplyCapability, type KubectlApplyInput, type KubectlApplyOutcome, } from "./kubectl-apply.js";
|
|
16
|
+
export { kustomizeApplyCapability, createKustomizeApplyCapability, renderCommand, type KustomizeApplyInput, type KustomizeApplyOutcome, } from "./kustomize-apply.js";
|
|
16
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,GAC3B,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Capability } from "@intentius/chant/components/capability";
|
|
2
|
+
/** Injectable shell runner — the helm-upgrade seam, same buffer bound. */
|
|
3
|
+
export type KustomizeRunner = (command: string) => Promise<{
|
|
4
|
+
stdout: string;
|
|
5
|
+
}>;
|
|
6
|
+
/** Structural mirrors of the activity module's shapes (see the module doc). */
|
|
7
|
+
interface AppliedRef {
|
|
8
|
+
apiVersion: string;
|
|
9
|
+
kind: string;
|
|
10
|
+
name: string;
|
|
11
|
+
namespace?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface KustomizeApplyOutcome {
|
|
14
|
+
fieldManager: string;
|
|
15
|
+
applied: AppliedRef[];
|
|
16
|
+
pruned: AppliedRef[];
|
|
17
|
+
}
|
|
18
|
+
interface ApplierArgs {
|
|
19
|
+
manifest: string;
|
|
20
|
+
documents?: Array<Record<string, unknown>>;
|
|
21
|
+
environment?: string;
|
|
22
|
+
stack?: string;
|
|
23
|
+
context?: string;
|
|
24
|
+
deleteMode?: "never" | "owned-only" | "gated";
|
|
25
|
+
}
|
|
26
|
+
type Applier = (args: ApplierArgs) => Promise<KustomizeApplyOutcome>;
|
|
27
|
+
export interface KustomizeApplyInput {
|
|
28
|
+
/** The kustomization directory (holds `kustomization.yaml`) — an overlay or a base. */
|
|
29
|
+
dir: string;
|
|
30
|
+
/**
|
|
31
|
+
* The deploy unit / ownership stack — same double duty as kubectl-apply's.
|
|
32
|
+
* Omitted derives from the project's `ownership.stack`, but then the unit is
|
|
33
|
+
* invisible to `components status --live`. Name it.
|
|
34
|
+
*/
|
|
35
|
+
stack?: string;
|
|
36
|
+
/** kubectl context. Omitted resolves `k8s.profiles.<ctx.env>.context`. */
|
|
37
|
+
context?: string;
|
|
38
|
+
/** Same delete vocabulary as kubectl-apply; default `never`. */
|
|
39
|
+
delete?: "never" | "owned-only";
|
|
40
|
+
}
|
|
41
|
+
/** The exact render command, standalone binary first. Pure; exported for tests. */
|
|
42
|
+
export declare function renderCommand(dir: string, tool?: "kustomize" | "kubectl"): string;
|
|
43
|
+
/** Factory with injectable renderer + applier, so tests assert the render
|
|
44
|
+
* command and the exact applier delegation without kustomize or a cluster. */
|
|
45
|
+
export declare function createKustomizeApplyCapability(run?: KustomizeRunner, apply?: Applier): Capability<KustomizeApplyInput, KustomizeApplyOutcome>;
|
|
46
|
+
export declare const kustomizeApplyCapability: Capability<KustomizeApplyInput, KustomizeApplyOutcome>;
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=kustomize-apply.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kustomize-apply.d.ts","sourceRoot":"","sources":["../../src/components/kustomize-apply.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,wCAAwC,CAAC;AAIxF,0EAA0E;AAC1E,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAQ/E,+EAA+E;AAC/E,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAED,UAAU,WAAW;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,OAAO,CAAC;CAC/C;AAED,KAAK,OAAO,GAAG,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,uFAAuF;IACvF,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,GAAG,YAAY,CAAC;CACjC;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,WAAW,GAAG,SAAuB,GAAG,MAAM,CAE9F;AAoBD;8EAC8E;AAC9E,wBAAgB,8BAA8B,CAC5C,GAAG,GAAE,eAA+B,EACpC,KAAK,CAAC,EAAE,OAAO,GACd,UAAU,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,CAmBxD;AAED,eAAO,MAAM,wBAAwB,wDAAmC,CAAC"}
|
|
@@ -65,6 +65,14 @@ import type { DeepArrayElement, DeepNormalizationHooks } from "@intentius/chant/
|
|
|
65
65
|
* under it is exactly at its default.
|
|
66
66
|
*/
|
|
67
67
|
export declare const K8S_SERVICE_DEFAULTS: Record<string, Record<string, unknown>>;
|
|
68
|
+
/**
|
|
69
|
+
* Server-ASSIGNED fields — populated by the API server with a value that
|
|
70
|
+
* varies per object (an allocated ClusterIP, the resolved IP family list), so
|
|
71
|
+
* unlike {@link K8S_SERVICE_DEFAULTS} there is no fixed value to compare
|
|
72
|
+
* against. Counterpart-gated like the defaults table: a declared `clusterIP`
|
|
73
|
+
* is still compared, only the purely server-filled appearance is noise.
|
|
74
|
+
*/
|
|
75
|
+
export declare const K8S_SERVER_ASSIGNED_PATTERNS: Record<string, ReadonlySet<string>>;
|
|
68
76
|
/**
|
|
69
77
|
* Order an associative list's element by the identity the SPEC declares for it
|
|
70
78
|
* (chant #1441), falling back to `@intentius/chant/managed-fields`'s hand-written
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deep-observe-hooks.d.ts","sourceRoot":"","sources":["../src/deep-observe-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAY,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"deep-observe-hooks.d.ts","sourceRoot":"","sources":["../src/deep-observe-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAY,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAanG;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoCxE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAE5E,CAAC;AAiGF;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAYnF;AAMD,eAAO,MAAM,yBAAyB,EAAE,sBAmBvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"describe-resources.d.ts","sourceRoot":"","sources":["../src/describe-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAsC,MAAM,0BAA0B,CAAC;AAGtG,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAmBvE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"describe-resources.d.ts","sourceRoot":"","sources":["../src/describe-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAsC,MAAM,0BAA0B,CAAC;AAGtG,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAmBvE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CA2CvD;AA4FD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAetE;AAQD,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sFAAsF;IACtF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,wBAAwB,EACjC,OAAO,GAAE,YAAkC,GAC1C,OAAO,CAAC,iBAAiB,CAAC,CAmI5B"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export { k8sSerializer } from "./serializer.js";
|
|
|
2
2
|
export { k8sPlugin } from "./plugin.js";
|
|
3
3
|
export { k8sCapabilityPlugin, K8S_VERB_FAMILIES } from "./components/capability-plugin.js";
|
|
4
4
|
export { kubectlApplyCapability, createKubectlApplyCapability, type KubectlApplyInput } from "./components/kubectl-apply.js";
|
|
5
|
+
export { kustomizeApplyCapability, createKustomizeApplyCapability, type KustomizeApplyInput } from "./components/kustomize-apply.js";
|
|
5
6
|
export { defaultLabels, defaultAnnotations, isDefaultLabels, isDefaultAnnotations } from "./default-labels.js";
|
|
6
7
|
export { DEFAULT_LABELS_MARKER, DEFAULT_ANNOTATIONS_MARKER } from "./default-labels.js";
|
|
7
8
|
export { K8sLabels, K8sAnnotations } from "./variables.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAKrC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/integrity.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"algorithm": "sha256",
|
|
3
3
|
"artifacts": {
|
|
4
|
-
"manifest.json": "
|
|
4
|
+
"manifest.json": "9a86742dc7d08b1d32dd3ae73ae9a62febf09f0a83f2cfaaeeee5c26efdaba05",
|
|
5
5
|
"meta.json": "c0b141b882c51483c1d1aead748a0eb171aceca7432edd2a0404b062bf6d7831",
|
|
6
6
|
"types/index.d.ts": "3be2af7494aca94adfa16269cb9c4e7a155529872207a3d70b0c4d39914f9eec",
|
|
7
7
|
"rules/argo-appset-single-project.ts": "afa9f310753aa2d475f35012b13135b2dfaebed2a35d44edbe185ebc07673674",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"skills/chant-k8s-aks.md": "e18f0e2b055f72cd7a37deaf258d7027c2d4d3e286e8fd4975b27a1f981a3ad9",
|
|
51
51
|
"skills/chant-k8s-argo.md": "b1a0b826559d8c5033a479c5781efaf650320f0aee4419d8841170bd3393cea5"
|
|
52
52
|
},
|
|
53
|
-
"composite": "
|
|
53
|
+
"composite": "cb6e9c99fe95c9c11ad9440c2ae9082e36c26ca90574b636904fcf25775b0250"
|
|
54
54
|
}
|
package/dist/manifest.json
CHANGED
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
---
|
|
2
|
+
okf_version: '0.2'
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Resource types
|
|
6
|
+
|
|
7
|
+
* [Alert](/types/Alert.md) - K8s::Flux::Alert
|
|
8
|
+
* [APIGroup](/types/APIGroup.md) - K8s::Core::APIGroup
|
|
9
|
+
* [APIGroupList](/types/APIGroupList.md) - K8s::Core::APIGroupList
|
|
10
|
+
* [APIResourceList](/types/APIResourceList.md) - K8s::Core::APIResourceList
|
|
11
|
+
* [APIService](/types/APIService.md) - K8s::Apiregistration::APIService
|
|
12
|
+
* [APIServiceList](/types/APIServiceList.md) - K8s::Apiregistration::APIServiceList
|
|
13
|
+
* [APIVersions](/types/APIVersions.md) - K8s::Core::APIVersions
|
|
14
|
+
* [Application](/types/Application.md) - K8s::Argo::Application
|
|
15
|
+
* [ApplicationSet](/types/ApplicationSet.md) - K8s::Argo::ApplicationSet
|
|
16
|
+
* [AppProject](/types/AppProject.md) - K8s::Argo::AppProject
|
|
17
|
+
* [Backup](/types/Backup.md) - K8s::Cnpg::Backup
|
|
18
|
+
* [BatchJob](/types/BatchJob.md) - K8s::Batch::Job
|
|
19
|
+
* [Binding](/types/Binding.md) - K8s::Core::Binding
|
|
20
|
+
* [Bucket](/types/Bucket.md) - K8s::Flux::Bucket
|
|
21
|
+
* [Certificate](/types/Certificate.md) - K8s::CertManager::Certificate
|
|
22
|
+
* [CertificateRequest](/types/CertificateRequest.md) - K8s::CertManager::CertificateRequest
|
|
23
|
+
* [CertificateSigningRequest](/types/CertificateSigningRequest.md) - K8s::Certificates::CertificateSigningRequest
|
|
24
|
+
* [CertificateSigningRequestList](/types/CertificateSigningRequestList.md) - K8s::Certificates::CertificateSigningRequestList
|
|
25
|
+
* [Challenge](/types/Challenge.md) - K8s::Acme::Challenge
|
|
26
|
+
* [Cluster](/types/Cluster.md) - K8s::Cnpg::Cluster
|
|
27
|
+
* [ClusterIssuer](/types/ClusterIssuer.md) - K8s::CertManager::ClusterIssuer
|
|
28
|
+
* [ClusterRole](/types/ClusterRole.md) - K8s::Rbac::ClusterRole
|
|
29
|
+
* [ClusterRoleBinding](/types/ClusterRoleBinding.md) - K8s::Rbac::ClusterRoleBinding
|
|
30
|
+
* [ClusterRoleBindingList](/types/ClusterRoleBindingList.md) - K8s::Rbac::ClusterRoleBindingList
|
|
31
|
+
* [ClusterRoleList](/types/ClusterRoleList.md) - K8s::Rbac::ClusterRoleList
|
|
32
|
+
* [ClusterTrustBundle](/types/ClusterTrustBundle.md) - K8s::Certificates::ClusterTrustBundle
|
|
33
|
+
* [ClusterTrustBundleList](/types/ClusterTrustBundleList.md) - K8s::Certificates::ClusterTrustBundleList
|
|
34
|
+
* [CM](/types/CM.md) - K8s::Core::ConfigMap
|
|
35
|
+
* [ComponentStatus](/types/ComponentStatus.md) - K8s::Core::ComponentStatus
|
|
36
|
+
* [ComponentStatusList](/types/ComponentStatusList.md) - K8s::Core::ComponentStatusList
|
|
37
|
+
* [ConfigMapList](/types/ConfigMapList.md) - K8s::Core::ConfigMapList
|
|
38
|
+
* [ControllerRevision](/types/ControllerRevision.md) - K8s::Apps::ControllerRevision
|
|
39
|
+
* [ControllerRevisionList](/types/ControllerRevisionList.md) - K8s::Apps::ControllerRevisionList
|
|
40
|
+
* [CoreEventList](/types/CoreEventList.md) - K8s::Core::EventList
|
|
41
|
+
* [CrdbCluster](/types/CrdbCluster.md) - K8s::Crdb::CrdbCluster
|
|
42
|
+
* [CronJob](/types/CronJob.md) - K8s::Batch::CronJob
|
|
43
|
+
* [CronJobList](/types/CronJobList.md) - K8s::Batch::CronJobList
|
|
44
|
+
* [CSIDriver](/types/CSIDriver.md) - K8s::Storage::CSIDriver
|
|
45
|
+
* [CSIDriverList](/types/CSIDriverList.md) - K8s::Storage::CSIDriverList
|
|
46
|
+
* [CSINode](/types/CSINode.md) - K8s::Storage::CSINode
|
|
47
|
+
* [CSINodeList](/types/CSINodeList.md) - K8s::Storage::CSINodeList
|
|
48
|
+
* [CSIStorageCapacity](/types/CSIStorageCapacity.md) - K8s::Storage::CSIStorageCapacity
|
|
49
|
+
* [CSIStorageCapacityList](/types/CSIStorageCapacityList.md) - K8s::Storage::CSIStorageCapacityList
|
|
50
|
+
* [CustomResourceDefinition](/types/CustomResourceDefinition.md) - K8s::Apiextensions::CustomResourceDefinition
|
|
51
|
+
* [CustomResourceDefinitionList](/types/CustomResourceDefinitionList.md) - K8s::Apiextensions::CustomResourceDefinitionList
|
|
52
|
+
* [DaemonSet](/types/DaemonSet.md) - K8s::Apps::DaemonSet
|
|
53
|
+
* [DaemonSetList](/types/DaemonSetList.md) - K8s::Apps::DaemonSetList
|
|
54
|
+
* [DeleteOptions](/types/DeleteOptions.md) - K8s::Core::DeleteOptions
|
|
55
|
+
* [Deploy](/types/Deploy.md) - K8s::Apps::Deployment
|
|
56
|
+
* [DeploymentList](/types/DeploymentList.md) - K8s::Apps::DeploymentList
|
|
57
|
+
* [DeviceClass](/types/DeviceClass.md) - K8s::Resource::DeviceClass
|
|
58
|
+
* [DeviceClassList](/types/DeviceClassList.md) - K8s::Resource::DeviceClassList
|
|
59
|
+
* [DeviceTaintRule](/types/DeviceTaintRule.md) - K8s::Resource::DeviceTaintRule
|
|
60
|
+
* [DeviceTaintRuleList](/types/DeviceTaintRuleList.md) - K8s::Resource::DeviceTaintRuleList
|
|
61
|
+
* [Endpoints](/types/Endpoints.md) - K8s::Core::Endpoints
|
|
62
|
+
* [EndpointSlice](/types/EndpointSlice.md) - K8s::Discovery::EndpointSlice
|
|
63
|
+
* [EndpointSliceList](/types/EndpointSliceList.md) - K8s::Discovery::EndpointSliceList
|
|
64
|
+
* [EndpointsList](/types/EndpointsList.md) - K8s::Core::EndpointsList
|
|
65
|
+
* [Event](/types/Event.md) - K8s::Core::Event
|
|
66
|
+
* [EventsEvent](/types/EventsEvent.md) - K8s::Events::Event
|
|
67
|
+
* [EventsEventList](/types/EventsEventList.md) - K8s::Events::EventList
|
|
68
|
+
* [Eviction](/types/Eviction.md) - K8s::Policy::Eviction
|
|
69
|
+
* [FlowSchema](/types/FlowSchema.md) - K8s::Flowcontrol::FlowSchema
|
|
70
|
+
* [FlowSchemaList](/types/FlowSchemaList.md) - K8s::Flowcontrol::FlowSchemaList
|
|
71
|
+
* [FluxInstance](/types/FluxInstance.md) - K8s::Flux::FluxInstance
|
|
72
|
+
* [FluxReport](/types/FluxReport.md) - K8s::Flux::FluxReport
|
|
73
|
+
* [Gateway](/types/Gateway.md) - K8s::Gateway::Gateway
|
|
74
|
+
* [GatewayClass](/types/GatewayClass.md) - K8s::Gateway::GatewayClass
|
|
75
|
+
* [GitRepository](/types/GitRepository.md) - K8s::Flux::GitRepository
|
|
76
|
+
* [GRPCRoute](/types/GRPCRoute.md) - K8s::Gateway::GRPCRoute
|
|
77
|
+
* [HelmChart](/types/HelmChart.md) - K8s::Flux::HelmChart
|
|
78
|
+
* [HelmRelease](/types/HelmRelease.md) - K8s::Flux::HelmRelease
|
|
79
|
+
* [HelmRepository](/types/HelmRepository.md) - K8s::Flux::HelmRepository
|
|
80
|
+
* [HorizontalPodAutoscaler](/types/HorizontalPodAutoscaler.md) - K8s::Autoscaling::HorizontalPodAutoscaler
|
|
81
|
+
* [HorizontalPodAutoscalerList](/types/HorizontalPodAutoscalerList.md) - K8s::Autoscaling::HorizontalPodAutoscalerList
|
|
82
|
+
* [HTTPRoute](/types/HTTPRoute.md) - K8s::Gateway::HTTPRoute
|
|
83
|
+
* [ImagePolicy](/types/ImagePolicy.md) - K8s::Flux::ImagePolicy
|
|
84
|
+
* [ImageRepository](/types/ImageRepository.md) - K8s::Flux::ImageRepository
|
|
85
|
+
* [ImageUpdateAutomation](/types/ImageUpdateAutomation.md) - K8s::Flux::ImageUpdateAutomation
|
|
86
|
+
* [InfisicalDynamicSecret](/types/InfisicalDynamicSecret.md) - K8s::Infisical::InfisicalDynamicSecret
|
|
87
|
+
* [InfisicalPushSecret](/types/InfisicalPushSecret.md) - K8s::Infisical::InfisicalPushSecret
|
|
88
|
+
* [InfisicalSecret](/types/InfisicalSecret.md) - K8s::Infisical::InfisicalSecret
|
|
89
|
+
* [Ing](/types/Ing.md) - K8s::Networking::Ingress
|
|
90
|
+
* [IngressClass](/types/IngressClass.md) - K8s::Networking::IngressClass
|
|
91
|
+
* [IngressClassList](/types/IngressClassList.md) - K8s::Networking::IngressClassList
|
|
92
|
+
* [IngressList](/types/IngressList.md) - K8s::Networking::IngressList
|
|
93
|
+
* [IngressRoute](/types/IngressRoute.md) - K8s::Traefik::IngressRoute
|
|
94
|
+
* [IngressRouteTCP](/types/IngressRouteTCP.md) - K8s::Traefik::IngressRouteTCP
|
|
95
|
+
* [IngressRouteUDP](/types/IngressRouteUDP.md) - K8s::Traefik::IngressRouteUDP
|
|
96
|
+
* [IPAddress](/types/IPAddress.md) - K8s::Networking::IPAddress
|
|
97
|
+
* [IPAddressList](/types/IPAddressList.md) - K8s::Networking::IPAddressList
|
|
98
|
+
* [Issuer](/types/Issuer.md) - K8s::CertManager::Issuer
|
|
99
|
+
* [JobList](/types/JobList.md) - K8s::Batch::JobList
|
|
100
|
+
* [Kustomization](/types/Kustomization.md) - K8s::Flux::Kustomization
|
|
101
|
+
* [Lease](/types/Lease.md) - K8s::Coordination::Lease
|
|
102
|
+
* [LeaseCandidate](/types/LeaseCandidate.md) - K8s::Coordination::LeaseCandidate
|
|
103
|
+
* [LeaseCandidateList](/types/LeaseCandidateList.md) - K8s::Coordination::LeaseCandidateList
|
|
104
|
+
* [LeaseList](/types/LeaseList.md) - K8s::Coordination::LeaseList
|
|
105
|
+
* [LimitRange](/types/LimitRange.md) - K8s::Core::LimitRange
|
|
106
|
+
* [LimitRangeList](/types/LimitRangeList.md) - K8s::Core::LimitRangeList
|
|
107
|
+
* [LocalSubjectAccessReview](/types/LocalSubjectAccessReview.md) - K8s::Authorization::LocalSubjectAccessReview
|
|
108
|
+
* [MicroVM](/types/MicroVM.md) - K8s::KubeMicroVM::MicroVM
|
|
109
|
+
* [MicroVMClass](/types/MicroVMClass.md) - K8s::KubeMicroVM::MicroVMClass
|
|
110
|
+
* [MicroVMImage](/types/MicroVMImage.md) - K8s::KubeMicroVM::MicroVMImage
|
|
111
|
+
* [MicroVMNetwork](/types/MicroVMNetwork.md) - K8s::KubeMicroVM::MicroVMNetwork
|
|
112
|
+
* [MicroVMReplicaSet](/types/MicroVMReplicaSet.md) - K8s::KubeMicroVM::MicroVMReplicaSet
|
|
113
|
+
* [Middleware](/types/Middleware.md) - K8s::Traefik::Middleware
|
|
114
|
+
* [MiddlewareTCP](/types/MiddlewareTCP.md) - K8s::Traefik::MiddlewareTCP
|
|
115
|
+
* [MutatingAdmissionPolicy](/types/MutatingAdmissionPolicy.md) - K8s::Admissionregistration::MutatingAdmissionPolicy
|
|
116
|
+
* [MutatingAdmissionPolicyBinding](/types/MutatingAdmissionPolicyBinding.md) - K8s::Admissionregistration::MutatingAdmissionPolicyBinding
|
|
117
|
+
* [MutatingAdmissionPolicyBindingList](/types/MutatingAdmissionPolicyBindingList.md) - K8s::Admissionregistration::MutatingAdmissionPolicyBindingList
|
|
118
|
+
* [MutatingAdmissionPolicyList](/types/MutatingAdmissionPolicyList.md) - K8s::Admissionregistration::MutatingAdmissionPolicyList
|
|
119
|
+
* [MutatingWebhookConfiguration](/types/MutatingWebhookConfiguration.md) - K8s::Admissionregistration::MutatingWebhookConfiguration
|
|
120
|
+
* [MutatingWebhookConfigurationList](/types/MutatingWebhookConfigurationList.md) - K8s::Admissionregistration::MutatingWebhookConfigurationList
|
|
121
|
+
* [Namespace](/types/Namespace.md) - K8s::Core::Namespace
|
|
122
|
+
* [NamespaceList](/types/NamespaceList.md) - K8s::Core::NamespaceList
|
|
123
|
+
* [NetPol](/types/NetPol.md) - K8s::Networking::NetworkPolicy
|
|
124
|
+
* [NetworkPolicyList](/types/NetworkPolicyList.md) - K8s::Networking::NetworkPolicyList
|
|
125
|
+
* [Node](/types/Node.md) - K8s::Core::Node
|
|
126
|
+
* [NodeList](/types/NodeList.md) - K8s::Core::NodeList
|
|
127
|
+
* [ObjectStore](/types/ObjectStore.md) - K8s::Cnpg::ObjectStore
|
|
128
|
+
* [OCIRepository](/types/OCIRepository.md) - K8s::Flux::OCIRepository
|
|
129
|
+
* [Order](/types/Order.md) - K8s::Acme::Order
|
|
130
|
+
* [PDB](/types/PDB.md) - K8s::Policy::PodDisruptionBudget
|
|
131
|
+
* [PersistentVolume](/types/PersistentVolume.md) - K8s::Core::PersistentVolume
|
|
132
|
+
* [PersistentVolumeClaim](/types/PersistentVolumeClaim.md) - K8s::Core::PersistentVolumeClaim
|
|
133
|
+
* [PersistentVolumeClaimList](/types/PersistentVolumeClaimList.md) - K8s::Core::PersistentVolumeClaimList
|
|
134
|
+
* [PersistentVolumeList](/types/PersistentVolumeList.md) - K8s::Core::PersistentVolumeList
|
|
135
|
+
* [Pod](/types/Pod.md) - K8s::Core::Pod
|
|
136
|
+
* [PodCertificateRequest](/types/PodCertificateRequest.md) - K8s::Certificates::PodCertificateRequest
|
|
137
|
+
* [PodCertificateRequestList](/types/PodCertificateRequestList.md) - K8s::Certificates::PodCertificateRequestList
|
|
138
|
+
* [PodDisruptionBudgetList](/types/PodDisruptionBudgetList.md) - K8s::Policy::PodDisruptionBudgetList
|
|
139
|
+
* [PodList](/types/PodList.md) - K8s::Core::PodList
|
|
140
|
+
* [PodTemplate](/types/PodTemplate.md) - K8s::Core::PodTemplate
|
|
141
|
+
* [PodTemplateList](/types/PodTemplateList.md) - K8s::Core::PodTemplateList
|
|
142
|
+
* [Pooler](/types/Pooler.md) - K8s::Cnpg::Pooler
|
|
143
|
+
* [PriorityClass](/types/PriorityClass.md) - K8s::Scheduling::PriorityClass
|
|
144
|
+
* [PriorityClassList](/types/PriorityClassList.md) - K8s::Scheduling::PriorityClassList
|
|
145
|
+
* [PriorityLevelConfiguration](/types/PriorityLevelConfiguration.md) - K8s::Flowcontrol::PriorityLevelConfiguration
|
|
146
|
+
* [PriorityLevelConfigurationList](/types/PriorityLevelConfigurationList.md) - K8s::Flowcontrol::PriorityLevelConfigurationList
|
|
147
|
+
* [PrometheusRule](/types/PrometheusRule.md) - K8s::Monitoring::PrometheusRule
|
|
148
|
+
* [Provider](/types/Provider.md) - K8s::Flux::Provider
|
|
149
|
+
* [RayCluster](/types/RayCluster.md) - K8s::Ray::RayCluster
|
|
150
|
+
* [RayJob](/types/RayJob.md) - K8s::Ray::RayJob
|
|
151
|
+
* [RayService](/types/RayService.md) - K8s::Ray::RayService
|
|
152
|
+
* [Receiver](/types/Receiver.md) - K8s::Flux::Receiver
|
|
153
|
+
* [ReferenceGrant](/types/ReferenceGrant.md) - K8s::Gateway::ReferenceGrant
|
|
154
|
+
* [ReplicaSet](/types/ReplicaSet.md) - K8s::Apps::ReplicaSet
|
|
155
|
+
* [ReplicaSetList](/types/ReplicaSetList.md) - K8s::Apps::ReplicaSetList
|
|
156
|
+
* [ReplicationController](/types/ReplicationController.md) - K8s::Core::ReplicationController
|
|
157
|
+
* [ReplicationControllerList](/types/ReplicationControllerList.md) - K8s::Core::ReplicationControllerList
|
|
158
|
+
* [ResourceClaim](/types/ResourceClaim.md) - K8s::Resource::ResourceClaim
|
|
159
|
+
* [ResourceClaimList](/types/ResourceClaimList.md) - K8s::Resource::ResourceClaimList
|
|
160
|
+
* [ResourceClaimTemplate](/types/ResourceClaimTemplate.md) - K8s::Resource::ResourceClaimTemplate
|
|
161
|
+
* [ResourceClaimTemplateList](/types/ResourceClaimTemplateList.md) - K8s::Resource::ResourceClaimTemplateList
|
|
162
|
+
* [ResourceQuota](/types/ResourceQuota.md) - K8s::Core::ResourceQuota
|
|
163
|
+
* [ResourceQuotaList](/types/ResourceQuotaList.md) - K8s::Core::ResourceQuotaList
|
|
164
|
+
* [ResourceSet](/types/ResourceSet.md) - K8s::Flux::ResourceSet
|
|
165
|
+
* [ResourceSetInputProvider](/types/ResourceSetInputProvider.md) - K8s::Flux::ResourceSetInputProvider
|
|
166
|
+
* [ResourceSlice](/types/ResourceSlice.md) - K8s::Resource::ResourceSlice
|
|
167
|
+
* [ResourceSliceList](/types/ResourceSliceList.md) - K8s::Resource::ResourceSliceList
|
|
168
|
+
* [Role](/types/Role.md) - K8s::Rbac::Role
|
|
169
|
+
* [RoleBinding](/types/RoleBinding.md) - K8s::Rbac::RoleBinding
|
|
170
|
+
* [RoleBindingList](/types/RoleBindingList.md) - K8s::Rbac::RoleBindingList
|
|
171
|
+
* [RoleList](/types/RoleList.md) - K8s::Rbac::RoleList
|
|
172
|
+
* [RuntimeClass](/types/RuntimeClass.md) - K8s::Node::RuntimeClass
|
|
173
|
+
* [RuntimeClassList](/types/RuntimeClassList.md) - K8s::Node::RuntimeClassList
|
|
174
|
+
* [SA](/types/SA.md) - K8s::Core::ServiceAccount
|
|
175
|
+
* [Scale](/types/Scale.md) - K8s::Autoscaling::Scale
|
|
176
|
+
* [ScheduledBackup](/types/ScheduledBackup.md) - K8s::Cnpg::ScheduledBackup
|
|
177
|
+
* [Sec](/types/Sec.md) - K8s::Core::Secret
|
|
178
|
+
* [SecretList](/types/SecretList.md) - K8s::Core::SecretList
|
|
179
|
+
* [SelfSubjectAccessReview](/types/SelfSubjectAccessReview.md) - K8s::Authorization::SelfSubjectAccessReview
|
|
180
|
+
* [SelfSubjectReview](/types/SelfSubjectReview.md) - K8s::Authentication::SelfSubjectReview
|
|
181
|
+
* [SelfSubjectRulesReview](/types/SelfSubjectRulesReview.md) - K8s::Authorization::SelfSubjectRulesReview
|
|
182
|
+
* [ServersTransport](/types/ServersTransport.md) - K8s::Traefik::ServersTransport
|
|
183
|
+
* [ServersTransportTCP](/types/ServersTransportTCP.md) - K8s::Traefik::ServersTransportTCP
|
|
184
|
+
* [Service](/types/Service.md) - K8s::Core::Service
|
|
185
|
+
* [ServiceAccountList](/types/ServiceAccountList.md) - K8s::Core::ServiceAccountList
|
|
186
|
+
* [ServiceCIDR](/types/ServiceCIDR.md) - K8s::Networking::ServiceCIDR
|
|
187
|
+
* [ServiceCIDRList](/types/ServiceCIDRList.md) - K8s::Networking::ServiceCIDRList
|
|
188
|
+
* [ServiceList](/types/ServiceList.md) - K8s::Core::ServiceList
|
|
189
|
+
* [ServiceMonitor](/types/ServiceMonitor.md) - K8s::Monitoring::ServiceMonitor
|
|
190
|
+
* [StatefulSet](/types/StatefulSet.md) - K8s::Apps::StatefulSet
|
|
191
|
+
* [StatefulSetList](/types/StatefulSetList.md) - K8s::Apps::StatefulSetList
|
|
192
|
+
* [Status](/types/Status.md) - K8s::Core::Status
|
|
193
|
+
* [StorageClass](/types/StorageClass.md) - K8s::Storage::StorageClass
|
|
194
|
+
* [StorageClassList](/types/StorageClassList.md) - K8s::Storage::StorageClassList
|
|
195
|
+
* [StorageVersionMigration](/types/StorageVersionMigration.md) - K8s::Storagemigration::StorageVersionMigration
|
|
196
|
+
* [StorageVersionMigrationList](/types/StorageVersionMigrationList.md) - K8s::Storagemigration::StorageVersionMigrationList
|
|
197
|
+
* [SubjectAccessReview](/types/SubjectAccessReview.md) - K8s::Authorization::SubjectAccessReview
|
|
198
|
+
* [TLSOption](/types/TLSOption.md) - K8s::Traefik::TLSOption
|
|
199
|
+
* [TLSStore](/types/TLSStore.md) - K8s::Traefik::TLSStore
|
|
200
|
+
* [TokenRequest](/types/TokenRequest.md) - K8s::Authentication::TokenRequest
|
|
201
|
+
* [TokenReview](/types/TokenReview.md) - K8s::Authentication::TokenReview
|
|
202
|
+
* [TraefikService](/types/TraefikService.md) - K8s::Traefik::TraefikService
|
|
203
|
+
* [ValidatingAdmissionPolicy](/types/ValidatingAdmissionPolicy.md) - K8s::Admissionregistration::ValidatingAdmissionPolicy
|
|
204
|
+
* [ValidatingAdmissionPolicyBinding](/types/ValidatingAdmissionPolicyBinding.md) - K8s::Admissionregistration::ValidatingAdmissionPolicyBinding
|
|
205
|
+
* [ValidatingAdmissionPolicyBindingList](/types/ValidatingAdmissionPolicyBindingList.md) - K8s::Admissionregistration::ValidatingAdmissionPolicyBindingList
|
|
206
|
+
* [ValidatingAdmissionPolicyList](/types/ValidatingAdmissionPolicyList.md) - K8s::Admissionregistration::ValidatingAdmissionPolicyList
|
|
207
|
+
* [ValidatingWebhookConfiguration](/types/ValidatingWebhookConfiguration.md) - K8s::Admissionregistration::ValidatingWebhookConfiguration
|
|
208
|
+
* [ValidatingWebhookConfigurationList](/types/ValidatingWebhookConfigurationList.md) - K8s::Admissionregistration::ValidatingWebhookConfigurationList
|
|
209
|
+
* [VolumeAttachment](/types/VolumeAttachment.md) - K8s::Storage::VolumeAttachment
|
|
210
|
+
* [VolumeAttachmentList](/types/VolumeAttachmentList.md) - K8s::Storage::VolumeAttachmentList
|
|
211
|
+
* [VolumeAttributesClass](/types/VolumeAttributesClass.md) - K8s::Storage::VolumeAttributesClass
|
|
212
|
+
* [VolumeAttributesClassList](/types/VolumeAttributesClassList.md) - K8s::Storage::VolumeAttributesClassList
|
|
213
|
+
* [WatchEvent](/types/WatchEvent.md) - K8s::Core::WatchEvent
|
|
214
|
+
|
|
215
|
+
# Rules
|
|
216
|
+
|
|
217
|
+
* [ARGO001](/rules/ARGO001.md) - Production Application must not enable automated prune
|
|
218
|
+
* [ARGO002](/rules/ARGO002.md) - Application.spec.project must reference a declared AppProject (or the built-in default)
|
|
219
|
+
* [ARGO003](/rules/ARGO003.md) - Application.spec.destination must reference a registered cluster or the in-cluster target
|
|
220
|
+
* [ARGO004](/rules/ARGO004.md) - ApplicationSet template must scope to a single AppProject
|
|
221
|
+
* [ARGO005](/rules/ARGO005.md) - Application source.path should resolve to an existing directory under the build root
|
|
222
|
+
* [WK8001](/rules/WK8001.md) - Hardcoded Namespace
|
|
223
|
+
* [WK8002](/rules/WK8002.md) - Latest Image Tag
|
|
224
|
+
* [WK8003](/rules/WK8003.md) - Missing Resource Limits
|
|
225
|
+
* [WK8005](/rules/WK8005.md) - Hardcoded secrets in env vars — sensitive environment variables should use secretKeyRef
|
|
226
|
+
* [WK8006](/rules/WK8006.md) - No :latest or untagged images — container images should use explicit version tags
|
|
227
|
+
* [WK8041](/rules/WK8041.md) - Hardcoded API keys — detects well-known API key patterns in env var values
|
|
228
|
+
* [WK8042](/rules/WK8042.md) - Private keys in ConfigMap — private keys should be stored in Secrets, not ConfigMaps
|
|
229
|
+
* [WK8101](/rules/WK8101.md) - Deployment selector must match template labels — mismatched selectors cause runtime failures
|
|
230
|
+
* [WK8102](/rules/WK8102.md) - Resources should have metadata labels — labels enable filtering and operational tooling
|
|
231
|
+
* [WK8103](/rules/WK8103.md) - Containers must have name — the name field is required by the Kubernetes API
|
|
232
|
+
* [WK8104](/rules/WK8104.md) - Ports should be named — named ports improve Service and NetworkPolicy configuration
|
|
233
|
+
* [WK8105](/rules/WK8105.md) - ImagePullPolicy should be explicit — avoids surprising default behavior
|
|
234
|
+
* [WK8201](/rules/WK8201.md) - Resource limits required — containers should have CPU and memory limits
|
|
235
|
+
* [WK8202](/rules/WK8202.md) - No privileged containers — privileged mode grants full host access
|
|
236
|
+
* [WK8203](/rules/WK8203.md) - ReadOnlyRootFilesystem recommended — prevents runtime modification of the container image
|
|
237
|
+
* [WK8204](/rules/WK8204.md) - RunAsNonRoot recommended — running as root increases container breakout risk
|
|
238
|
+
* [WK8205](/rules/WK8205.md) - Drop ALL capabilities — containers should drop all capabilities and add only what is needed
|
|
239
|
+
* [WK8207](/rules/WK8207.md) - No hostNetwork — using host network bypasses network isolation
|
|
240
|
+
* [WK8208](/rules/WK8208.md) - No hostPID — sharing host PID namespace allows visibility into all host processes
|
|
241
|
+
* [WK8209](/rules/WK8209.md) - No hostIPC — sharing host IPC namespace can expose shared memory segments
|
|
242
|
+
* [WK8301](/rules/WK8301.md) - Probes required — containers should have livenessProbe and readinessProbe
|
|
243
|
+
* [WK8302](/rules/WK8302.md) - Replicas >= 2 recommended — single-replica Deployments have no high availability
|
|
244
|
+
* [WK8303](/rules/WK8303.md) - PDB recommended for HA Deployments — ensures availability during voluntary disruptions
|
|
245
|
+
* [WK8304](/rules/WK8304.md) - SSL redirect without certificate — ssl-redirect annotation requires a valid certificate-arn and HTTPS listen-ports
|
|
246
|
+
* [WK8305](/rules/WK8305.md) - Ingress port not matching Service — backend port must match a declared Service port
|
|
247
|
+
* [WK8306](/rules/WK8306.md) - Container command starts with flag — first element should be a binary, not a flag
|
|
248
|
+
* [WK8401](/rules/WK8401.md) - shmSize must not exceed the container memory limit — pod will not schedule if it does
|
|
249
|
+
* [WK8402](/rules/WK8402.md) - RayCluster should set spec.rayVersion so KubeRay selects the correct autoscaler image
|
|
250
|
+
* [WK8403](/rules/WK8403.md) - spec.rayVersion should match the Ray version in the head container image tag
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: lint-rule
|
|
3
|
+
title: ARGO001
|
|
4
|
+
description: Production Application must not enable automated prune
|
|
5
|
+
id: ARGO001
|
|
6
|
+
severity: warning
|
|
7
|
+
category: correctness
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Production Application must not enable automated prune
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Application](/types/Application.md)
|
|
16
|
+
- [Node](/types/Node.md)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: ARGO002
|
|
4
|
+
description: Application.spec.project must reference a declared AppProject (or the built-in default)
|
|
5
|
+
id: ARGO002
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Application.spec.project must reference a declared AppProject (or the built-in default)
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Application](/types/Application.md)
|
|
16
|
+
- [AppProject](/types/AppProject.md)
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: ARGO003
|
|
4
|
+
description: Application.spec.destination must reference a registered cluster or the in-cluster target
|
|
5
|
+
id: ARGO003
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Application.spec.destination must reference a registered cluster or the in-cluster target
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Application](/types/Application.md)
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: lint-rule
|
|
3
|
+
title: ARGO004
|
|
4
|
+
description: ApplicationSet template must scope to a single AppProject
|
|
5
|
+
id: ARGO004
|
|
6
|
+
severity: warning
|
|
7
|
+
category: correctness
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
ApplicationSet template must scope to a single AppProject
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Application](/types/Application.md)
|
|
16
|
+
- [ApplicationSet](/types/ApplicationSet.md)
|
|
17
|
+
- [AppProject](/types/AppProject.md)
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: ARGO005
|
|
4
|
+
description: Application source.path should resolve to an existing directory under the build root
|
|
5
|
+
id: ARGO005
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Application source.path should resolve to an existing directory under the build root
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Application](/types/Application.md)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: lint-rule
|
|
3
|
+
title: WK8001
|
|
4
|
+
description: Hardcoded Namespace
|
|
5
|
+
id: WK8001
|
|
6
|
+
severity: warning
|
|
7
|
+
category: correctness
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Hardcoded Namespace
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Namespace](/types/Namespace.md)
|
|
16
|
+
- [Node](/types/Node.md)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: lint-rule
|
|
3
|
+
title: WK8002
|
|
4
|
+
description: Latest Image Tag
|
|
5
|
+
id: WK8002
|
|
6
|
+
severity: warning
|
|
7
|
+
category: security
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Latest Image Tag
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [CronJob](/types/CronJob.md)
|
|
16
|
+
- [DaemonSet](/types/DaemonSet.md)
|
|
17
|
+
- [Node](/types/Node.md)
|
|
18
|
+
- [Pod](/types/Pod.md)
|
|
19
|
+
- [ReplicaSet](/types/ReplicaSet.md)
|
|
20
|
+
- [StatefulSet](/types/StatefulSet.md)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: lint-rule
|
|
3
|
+
title: WK8003
|
|
4
|
+
description: Missing Resource Limits
|
|
5
|
+
id: WK8003
|
|
6
|
+
severity: warning
|
|
7
|
+
category: correctness
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Missing Resource Limits
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [CronJob](/types/CronJob.md)
|
|
16
|
+
- [DaemonSet](/types/DaemonSet.md)
|
|
17
|
+
- [Node](/types/Node.md)
|
|
18
|
+
- [ReplicaSet](/types/ReplicaSet.md)
|
|
19
|
+
- [StatefulSet](/types/StatefulSet.md)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: WK8005
|
|
4
|
+
description: Hardcoded secrets in env vars — sensitive environment variables should use secretKeyRef
|
|
5
|
+
id: WK8005
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Hardcoded secrets in env vars — sensitive environment variables should use secretKeyRef
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: WK8006
|
|
4
|
+
description: No :latest or untagged images — container images should use explicit version tags
|
|
5
|
+
id: WK8006
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
No :latest or untagged images — container images should use explicit version tags
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: WK8041
|
|
4
|
+
description: Hardcoded API keys — detects well-known API key patterns in env var values
|
|
5
|
+
id: WK8041
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: k8s
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/k8s/rules/
|
|
10
|
+
---
|
|
11
|
+
Hardcoded API keys — detects well-known API key patterns in env var values
|