@@ -315,27 +315,28 @@ whichever labels they like. However, HNC will overwrite any changes made to
315315these labels, so other applications can trust these labels for policy
316316application.
317317
318- * Note: in HNC v1.0, [ managed labels] ( #admin-managed-labels ) may also be trusted
319- for policy purposes.*
318+ If tree labels are too restrictive for your purposes, you can also use [ managed
319+ labels] ( #admin-managed-labels ) , which require more work to set up but are also
320+ managed by HNC and are therefore suitable for policy use.
320321
321322<a name =" basic-exceptions " />
322-
323+
323324### Exceptions and propagation control
324325
325326HNC typically propagates _ all_ objects of a [ specified type] ( how-to.md#admin-resources )
326327from ancestor namespaces to descendant namespaces. However, sometimes this is
327328too restrictive, and you need to create *** exceptions*** to certain policies. For example:
328329
329330* A ResourceQuota was propagated to many children, but one child namespace now
330- has higher requirements than the rest. Rather than getting rid of the quota in
331- the parent namespace, or raising the limit for everyone, you can stop the
332- quota in the parent from being propagated to that _ one_ child namespace,
333- allowing you to replace it with another, more suitable quota.
331+ has higher requirements than the rest. Rather than getting rid of the quota in
332+ the parent namespace, or raising the limit for everyone, you can stop the
333+ quota in the parent from being propagated to that _ one_ child namespace,
334+ allowing you to replace it with another, more suitable quota.
334335
335336* A RoleBinding allows any user to create subnamespaces under one namespace, but
336- we don’t want to allow those users to create additional levels of hierarchy
337- underneath those subnamespaces. So you can stop the role binding from being
338- propagated to _ any_ child namespace.
337+ we don’t want to allow those users to create additional levels of hierarchy
338+ underneath those subnamespaces. So you can stop the role binding from being
339+ propagated to _ any_ child namespace.
339340
340341Exceptions are defined using [ annotations on the objects
341342themselves] ( how-to.md#use-limit-propagation ) . As a result, anyone who can edit
@@ -353,18 +354,19 @@ exclude those objects, or else delete the conflicting objects to allow them to
353354be replaced.
354355
355356#### (Beta in v1.1) Opt-in propagation
356- The ` Propagate ` mode propagates all objects unless directed to otherwise via a selector,
357- using exceptions. By contrast, opt-in propagation, as set by the ` AllowPropagate `
358- mode, doesn't propagate objects unless directed to by a selector. That is, for an object
359- with a selector, its behaviour will be identical in both the ` Propagate ` and ` AllowPropagate ` modes;
360- the only difference in behaviours is for objects without a selector.
357+ The ` Propagate ` mode propagates all objects unless directed to otherwise via a
358+ selector, using exceptions. By contrast, opt-in propagation, as set by the
359+ ` AllowPropagate ` mode, doesn't propagate objects unless directed to by a
360+ selector. That is, for an object with a selector, its behaviour will be
361+ identical in both the ` Propagate ` and ` AllowPropagate ` modes; the only
362+ difference in behaviours is for objects without a selector.
361363
362364For example:
363-
365+
364366* A Secret exists on a namespace but we don't want this secret to be propagated
365- to all subnamespaces by default but instead only to one namespace of our choosing.
366- So you can choose to propagate to that _ one_ child namespace using ` AllowPropagate `
367- and exceptions.
367+ to all subnamespaces by default but instead only to one namespace of our
368+ choosing. So you can choose to propagate to that _ one_ child namespace using
369+ ` AllowPropagate ` and exceptions.
368370
369371#### Built-in exceptions
370372
@@ -374,10 +376,11 @@ objects from being propagated by HNC.
374376* Kubernetes Service Account Secrets
375377* ConfigMaps named ` istio-ca-root-cert ` or ` kube-root-ca.crt ` , which are
376378 auto-created in new namespaces by Istio and Kubernetes respectively
377- * * Planned for HNC v1.0+: * Any objects with the label
379+ * Any objects with the label
378380 ` cattle.io/creator:norman ` , which are [ inserted by Rancher to support
379381 Projects] ( https://rancher.com/docs/rancher/v2.6/en/system-tools/#remove ) )
380- * * Planned for future version:* Secrets with type ` helm.sh/release.v1 ` , which is auto-created in the namespaces where their respective Helm releases are deployed to.
382+ * * HNC v1.1+:* Secrets with type ` helm.sh/release.v1 ` , which is auto-created in
383+ the namespaces where their respective Helm releases are deployed to.
381384
382385<a name =" admin " />
383386
@@ -517,9 +520,9 @@ problem, and will generally require human intervention to resolve.
517520
518521<a name =" admin-managed-labels " />
519522
520- ### (Beta) Managed labels and annotations
523+ ### Managed labels and annotations
521524
522- *** Managed labels and annotations are new in HNC v1.0; please use with caution .***
525+ *** Managed labels and annotations are beta in HNC v1.0 and GA in HNC v1.1+ .***
523526
524527Just as certain objects can be propagated from parent namespaces to their
525528descendants, so can certain labels and annotations on namespaces. For example,
0 commit comments