-
Notifications
You must be signed in to change notification settings - Fork 2k
Helm changes #5251
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Helm changes #5251
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -30,11 +30,11 @@ spec: | |||||
{{- end }} | ||||||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||||||
{{- toYaml .Values.celery_beat.podSecurityContext | nindent 8 }} | ||||||
containers: | ||||||
- name: celery-beat | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||||||
{{- toYaml .Values.celery_beat.securityContext | nindent 12 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined value .Values.celery_beat.securityContext Prompt for AI agents
|
||||||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||||||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||||||
command: | ||||||
|
@@ -52,10 +52,6 @@ spec: | |||||
name: {{ .Values.config.envConfigMapName }} | ||||||
env: | ||||||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||||||
{{- with .Values.celery_beat.volumeMounts }} | ||||||
volumeMounts: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
startupProbe: | ||||||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||||||
readinessProbe: | ||||||
|
@@ -77,8 +73,4 @@ spec: | |||||
- > | ||||||
python onyx/background/celery/celery_k8s_probe.py | ||||||
--probe liveness | ||||||
--filename /tmp/onyx_k8s_beat_liveness.txt | ||||||
{{- with .Values.celery_beat.volumes }} | ||||||
volumes: | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} | ||||||
--filename /tmp/onyx_k8s_beat_liveness.txt | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. style: File missing newline at end - should end with a newline character for consistency There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. File should end with a newline character Prompt for AI agents
Suggested change
|
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |||||
{{- end }} | ||||||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||||||
{{- toYaml .Values.celery_worker_docfetching.podSecurityContext | nindent 8 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Security context reference points to undefined field in values.yaml Prompt for AI agents
Suggested change
|
||||||
containers: | ||||||
- name: celery-worker-docfetching | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||||||
{{- toYaml .Values.celery_worker_docfetching.securityContext | nindent 12 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Container security context reference points to undefined field in values.yaml Prompt for AI agents
Suggested change
|
||||||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||||||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||||||
command: | ||||||
|
@@ -46,12 +46,12 @@ spec: | |||||
"onyx.background.celery.versioned_apps.docfetching", | ||||||
"worker", | ||||||
"--pool=threads", | ||||||
"--concurrency=2", | ||||||
"--concurrency=12", | ||||||
"--prefetch-multiplier=1", | ||||||
"--loglevel=INFO", | ||||||
"--hostname=docfetching@%n", | ||||||
"-Q", | ||||||
"connector_doc_fetching,user_files_indexing", | ||||||
"connector_doc_fetching", | ||||||
] | ||||||
resources: | ||||||
{{- toYaml .Values.celery_worker_docfetching.resources | nindent 12 }} | ||||||
|
@@ -60,10 +60,6 @@ spec: | |||||
name: {{ .Values.config.envConfigMapName }} | ||||||
env: | ||||||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||||||
{{- with .Values.celery_worker_docfetching.volumeMounts }} | ||||||
volumeMounts: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
startupProbe: | ||||||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||||||
readinessProbe: | ||||||
|
@@ -85,8 +81,4 @@ spec: | |||||
- > | ||||||
python onyx/background/celery/celery_k8s_probe.py | ||||||
--probe liveness | ||||||
--filename /tmp/onyx_k8s_docfetching_liveness.txt | ||||||
{{- with .Values.celery_worker_docfetching.volumes }} | ||||||
volumes: | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} | ||||||
--filename /tmp/onyx_k8s_docfetching_liveness.txt |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |
{{- end }} | ||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||
securityContext: | ||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||
{{- toYaml .Values.celery_worker_docprocessing.podSecurityContext | nindent 8 }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined security context values that will cause Helm deployment failure Prompt for AI agents
|
||
containers: | ||
- name: celery-worker-docprocessing | ||
securityContext: | ||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||
{{- toYaml .Values.celery_worker_docprocessing.securityContext | nindent 12 }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined container security context that will cause Helm deployment failure Prompt for AI agents
|
||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||
command: | ||
|
@@ -62,10 +62,6 @@ spec: | |
- name: ENABLE_MULTIPASS_INDEXING | ||
value: "{{ .Values.celery_worker_docprocessing.enableMiniChunk }}" | ||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||
{{- with .Values.celery_worker_docprocessing.volumeMounts }} | ||
volumeMounts: | ||
{{- toYaml . | nindent 12 }} | ||
{{- end }} | ||
startupProbe: | ||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||
readinessProbe: | ||
|
@@ -88,7 +84,3 @@ spec: | |
python onyx/background/celery/celery_k8s_probe.py | ||
--probe liveness | ||
--filename /tmp/onyx_k8s_docprocessing_liveness.txt | ||
{{- with .Values.celery_worker_docprocessing.volumes }} | ||
volumes: | ||
{{- toYaml . | nindent 8 }} | ||
{{- end }} |
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |||||
{{- end }} | ||||||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||||||
{{- toYaml .Values.celery_worker_heavy.podSecurityContext | nindent 8 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined values: celery_worker_heavy.podSecurityContext is not defined in values.yaml Prompt for AI agents
Suggested change
|
||||||
containers: | ||||||
- name: celery-worker-heavy | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||||||
{{- toYaml .Values.celery_worker_heavy.securityContext | nindent 12 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined values: celery_worker_heavy.securityContext is not defined in values.yaml Prompt for AI agents
Suggested change
|
||||||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||||||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||||||
command: | ||||||
|
@@ -57,10 +57,6 @@ spec: | |||||
name: {{ .Values.config.envConfigMapName }} | ||||||
env: | ||||||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||||||
{{- with .Values.celery_worker_heavy.volumeMounts }} | ||||||
volumeMounts: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
startupProbe: | ||||||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||||||
readinessProbe: | ||||||
|
@@ -83,7 +79,3 @@ spec: | |||||
python onyx/background/celery/celery_k8s_probe.py | ||||||
--probe liveness | ||||||
--filename /tmp/onyx_k8s_heavy_liveness.txt | ||||||
{{- with .Values.celery_worker_heavy.volumes }} | ||||||
volumes: | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |
{{- end }} | ||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||
securityContext: | ||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||
{{- toYaml .Values.celery_worker_light.podSecurityContext | nindent 8 }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Security context fields referenced in template are not defined in values.yaml Prompt for AI agents
|
||
containers: | ||
- name: celery-worker-light | ||
securityContext: | ||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||
{{- toYaml .Values.celery_worker_light.securityContext | nindent 12 }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Container security context field referenced in template is not defined in values.yaml Prompt for AI agents
|
||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||
command: | ||
|
@@ -48,7 +48,7 @@ spec: | |
"--loglevel=INFO", | ||
"--hostname=light@%n", | ||
"-Q", | ||
"vespa_metadata_sync,connector_deletion,doc_permissions_upsert,checkpoint_cleanup,index_attempt_cleanup", | ||
"vespa_metadata_sync,connector_deletion,doc_permissions_upsert,checkpoint_cleanup", | ||
] | ||
resources: | ||
{{- toYaml .Values.celery_worker_light.resources | nindent 12 }} | ||
|
@@ -57,10 +57,6 @@ spec: | |
name: {{ .Values.config.envConfigMapName }} | ||
env: | ||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||
{{- with .Values.celery_worker_light.volumeMounts }} | ||
volumeMounts: | ||
{{- toYaml . | nindent 12 }} | ||
{{- end }} | ||
startupProbe: | ||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||
readinessProbe: | ||
|
@@ -83,7 +79,3 @@ spec: | |
python onyx/background/celery/celery_k8s_probe.py | ||
--probe liveness | ||
--filename /tmp/onyx_k8s_light_liveness.txt | ||
{{- with .Values.celery_worker_light.volumes }} | ||
volumes: | ||
{{- toYaml . | nindent 8 }} | ||
{{- end }} |
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |||||
{{- end }} | ||||||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||||||
{{- toYaml .Values.celery_worker_monitoring.podSecurityContext | nindent 8 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined value .Values.celery_worker_monitoring.podSecurityContext Prompt for AI agents
Suggested change
|
||||||
containers: | ||||||
- name: celery-worker-monitoring | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||||||
{{- toYaml .Values.celery_worker_monitoring.securityContext | nindent 12 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined value .Values.celery_worker_monitoring.securityContext Prompt for AI agents
Suggested change
|
||||||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||||||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||||||
command: | ||||||
|
@@ -57,10 +57,6 @@ spec: | |||||
name: {{ .Values.config.envConfigMapName }} | ||||||
env: | ||||||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||||||
{{- with .Values.celery_worker_monitoring.volumeMounts }} | ||||||
volumeMounts: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
startupProbe: | ||||||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||||||
readinessProbe: | ||||||
|
@@ -83,7 +79,3 @@ spec: | |||||
python onyx/background/celery/celery_k8s_probe.py | ||||||
--probe liveness | ||||||
--filename /tmp/onyx_k8s_monitoring_liveness.txt | ||||||
{{- with .Values.celery_worker_monitoring.volumes }} | ||||||
volumes: | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} |
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |||||
{{- end }} | ||||||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||||||
{{- toYaml .Values.celery_worker_primary.podSecurityContext | nindent 8 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined podSecurityContext field, which will render as empty Prompt for AI agents
Suggested change
|
||||||
containers: | ||||||
- name: celery-worker-primary | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||||||
{{- toYaml .Values.celery_worker_primary.securityContext | nindent 12 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined securityContext field, which will render as empty Prompt for AI agents
Suggested change
|
||||||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||||||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||||||
command: | ||||||
|
@@ -57,10 +57,6 @@ spec: | |||||
name: {{ .Values.config.envConfigMapName }} | ||||||
env: | ||||||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||||||
{{- with .Values.celery_worker_primary.volumeMounts }} | ||||||
volumeMounts: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
startupProbe: | ||||||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||||||
readinessProbe: | ||||||
|
@@ -83,7 +79,3 @@ spec: | |||||
python onyx/background/celery/celery_k8s_probe.py | ||||||
--probe liveness | ||||||
--filename /tmp/onyx_k8s_primary_liveness.txt | ||||||
{{- with .Values.celery_worker_primary.volumes }} | ||||||
volumes: | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} |
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -32,11 +32,11 @@ spec: | |||||
{{- end }} | ||||||
serviceAccountName: {{ include "onyx-stack.serviceAccountName" . }} | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.podSecurityContext | nindent 8 }} | ||||||
{{- toYaml .Values.celery_worker_user_files_indexing.podSecurityContext | nindent 8 }} | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Template references undefined security context values that don't exist in values.yaml Prompt for AI agents
Suggested change
|
||||||
containers: | ||||||
- name: celery-worker-user-files-indexing | ||||||
securityContext: | ||||||
{{- toYaml .Values.celery_shared.securityContext | nindent 12 }} | ||||||
{{- toYaml .Values.celery_worker_user_files_indexing.securityContext | nindent 12 }} | ||||||
image: "{{ .Values.celery_shared.image.repository }}:{{ .Values.celery_shared.image.tag | default .Values.global.version }}" | ||||||
imagePullPolicy: {{ .Values.global.pullPolicy }} | ||||||
command: | ||||||
|
@@ -45,6 +45,9 @@ spec: | |||||
"-A", | ||||||
"onyx.background.celery.versioned_apps.docfetching", | ||||||
"worker", | ||||||
"--pool=threads", | ||||||
"--concurrency=2", | ||||||
"--prefetch-multiplier=1", | ||||||
"--loglevel=INFO", | ||||||
"--hostname=user-files-indexing@%n", | ||||||
"-Q", | ||||||
|
@@ -57,10 +60,6 @@ spec: | |||||
name: {{ .Values.config.envConfigMapName }} | ||||||
env: | ||||||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||||||
{{- with .Values.celery_worker_user_files_indexing.volumeMounts }} | ||||||
volumeMounts: | ||||||
{{- toYaml . | nindent 12 }} | ||||||
{{- end }} | ||||||
startupProbe: | ||||||
{{ .Values.celery_shared.startupProbe | toYaml | nindent 12}} | ||||||
readinessProbe: | ||||||
|
@@ -83,7 +82,3 @@ spec: | |||||
python onyx/background/celery/celery_k8s_probe.py | ||||||
--probe liveness | ||||||
--filename /tmp/onyx_k8s_userfilesindexing_liveness.txt | ||||||
{{- with .Values.celery_worker_user_files_indexing.volumes }} | ||||||
volumes: | ||||||
{{- toYaml . | nindent 8 }} | ||||||
{{- end }} |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -24,9 +24,8 @@ spec: | |
{{- toYaml . | nindent 8 }} | ||
{{- end }} | ||
spec: | ||
{{- if .Values.indexCapability.podSecurityContext }} | ||
securityContext: | ||
{{- toYaml .Values.indexCapability.podSecurityContext | nindent 8 }} | ||
{{- if .Values.indexCapability.serviceAccountName }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Removal of security contexts eliminates important enterprise security controls without replacement Prompt for AI agents
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Inconsistent serviceAccountName pattern compared to other deployments in the chart Prompt for AI agents
|
||
serviceAccountName: {{ .Values.indexCapability.serviceAccountName }} | ||
{{- end }} | ||
containers: | ||
- name: {{ .Values.indexCapability.name }} | ||
|
@@ -44,11 +43,5 @@ spec: | |
- name: INDEXING_ONLY | ||
value: "{{ default "True" .Values.indexCapability.indexingOnly }}" | ||
{{- include "onyx-stack.envSecrets" . | nindent 10}} | ||
{{- if .Values.indexCapability.securityContext }} | ||
securityContext: | ||
{{- toYaml .Values.indexCapability.securityContext | nindent 10 }} | ||
{{- end }} | ||
{{- if .Values.indexCapability.resources }} | ||
resources: | ||
{{- toYaml .Values.indexCapability.resources | nindent 10 }} | ||
{{- end }} | ||
{{- toYaml .Values.indexCapability.resources | nindent 12 }} |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -20,9 +20,8 @@ spec: | |
{{ .key }}: {{ .value }} | ||
{{- end }} | ||
spec: | ||
{{- if .Values.inferenceCapability.podSecurityContext }} | ||
securityContext: | ||
{{- toYaml .Values.inferenceCapability.podSecurityContext | nindent 8 }} | ||
{{- if .Values.inferenceCapability.serviceAccountName }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Removing security contexts may compromise enterprise security requirements. Consider keeping both pod and container security contexts configurable. Prompt for AI agents
|
||
serviceAccountName: {{ .Values.inferenceCapability.serviceAccountName }} | ||
{{- end }} | ||
containers: | ||
- name: model-server-inference | ||
|
@@ -38,12 +37,5 @@ spec: | |
name: {{ .Values.config.envConfigMapName }} | ||
env: | ||
{{- include "onyx-stack.envSecrets" . | nindent 12}} | ||
{{- if .Values.inferenceCapability.securityContext }} | ||
securityContext: | ||
{{- toYaml .Values.inferenceCapability.securityContext | nindent 10 }} | ||
{{- end }} | ||
{{- if .Values.inferenceCapability.resources }} | ||
resources: | ||
{{- toYaml .Values.inferenceCapability.resources | nindent 10 }} | ||
{{- end }} | ||
|
||
{{- toYaml .Values.inferenceCapability.resources | nindent 12 }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Template references undefined values .Values.celery_beat.podSecurityContext and .Values.celery_beat.securityContext
Prompt for AI agents