diff --git a/services/epics-opis/Chart.yaml b/services/epics-opis/Chart.yaml index 36c8e3a..945a2e9 100644 --- a/services/epics-opis/Chart.yaml +++ b/services/epics-opis/Chart.yaml @@ -8,6 +8,5 @@ type: application dependencies: - name: epics-opis - version: "3.4.0" - #repository: "file:///scratch/hgv27681/work/ec-helm-charts/Charts/epics-opis" + version: 4.0.0 repository: "oci://ghcr.io/epics-containers" diff --git a/services/epics-opis/README.md b/services/epics-opis/README.md index 8e2eeed..e1981c3 100644 --- a/services/epics-opis/README.md +++ b/services/epics-opis/README.md @@ -2,15 +2,3 @@ epics-opis Helm Chart ===================== Installs the web server that shares the engineering screens published by each IOC. The structure is two deep only: IOC names as folders at the root containing all the IOCs OPI files in a flat list. - -Deploy this chart to the cluster by setting up your cluster namespace connection using environment.sh and then executing -the following commands: - -```bash -# lists the latest versions of all services -ec list -# deploy the latest version of the epics-pvcs which includes an opis volume -ec deploy epics-pvcs VERSION -# deploy the latest version of the epics-opis service -ec deploy epics-opis VERSION -``` diff --git a/services/epics-opis/config/nginx.conf b/services/epics-opis/config/nginx.conf deleted file mode 100644 index ddb92a4..0000000 --- a/services/epics-opis/config/nginx.conf +++ /dev/null @@ -1,41 +0,0 @@ -worker_processes auto; - -# using tmp for logs due to capability DROPS on ioc namespaces -# (UPDATE: are now using standard image, this is no longer necessary - probably) -error_log /tmp/error.log notice; -pid /tmp/nginx.pid; - - -events { - # using a low number here as this server won't get much traffic - worker_connections 50; -} - - -http { - autoindex on; - - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /tmp/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; - - server { - autoindex on; - add_header Access-Control-Allow-Origin '*'; - add_header Access-Control-Allow-Methods 'GET'; - } -} \ No newline at end of file diff --git a/services/epics-opis/templates/configmap.yaml b/services/epics-opis/templates/configmap.yaml deleted file mode 100644 index 6bf5dd8..0000000 --- a/services/epics-opis/templates/configmap.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# a config map to contain nginx config - ingests the files in config folder -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ .Release.Name }}-nginx-config - labels: - app: {{ .Release.Name }} -data: -{{ (.Files.Glob "config/*").AsConfig | indent 2 }} ---- diff --git a/services/epics-opis/values.yaml b/services/epics-opis/values.yaml index f11baa6..8a3693e 100644 --- a/services/epics-opis/values.yaml +++ b/services/epics-opis/values.yaml @@ -1,20 +1,4 @@ -epics-opis: - # the beamline name - only set for beamlines - beamline: bl45p - # the location where the IOCs will run - same as beamline for beamlines - ioc_group: bl45p - # the name of the repository in which the IOC is grouped - location: bl45p - - # useAffinity - only run on nodes with label beamline: - # or location: - # Comment out useAffiniity for dedicated cluster, set to true for shared cluster - - useAffinity: true - - # extra toleration for the shared cluster training rigs - tolerations: - - key: "nodetype" - operator: "Equal" - value: "test-rig" - effect: "NoSchedule" +# Short name for this collection of services +# ioc_group: +# location where these IOCs and services will run +# location: \ No newline at end of file diff --git a/services/epics-pvcs/Chart.yaml b/services/epics-pvcs/Chart.yaml index a6e3982..c9f830e 100644 --- a/services/epics-pvcs/Chart.yaml +++ b/services/epics-pvcs/Chart.yaml @@ -8,6 +8,5 @@ type: application dependencies: - name: epics-pvcs - version: "3.4.0" - # repository: "file:///scratch/hgv27681/work/ec-helm-charts/Charts/epics-pvcs" - repository: "oci://ghcr.io/epics-containers" + version: 4.0.0 + repository: "oci://ghcr.io/epics-containers" \ No newline at end of file diff --git a/services/epics-pvcs/README.md b/services/epics-pvcs/README.md index 6b006da..380175c 100644 --- a/services/epics-pvcs/README.md +++ b/services/epics-pvcs/README.md @@ -8,13 +8,3 @@ Sets up the PVCs that all IOCs may use. These should be set up once and not dele - autosave data: for IOCs that support autosave. This is separate from IOC helm charts so that it can survive deletion and re-creation of an IOC. - opis: all the OPI files for engineering screens that an IOC supplies are saved here. This is stored in a single PVC so that the opis service can publish them over http for access by an OPI client. - -Deploy this chart to the cluster by setting up your cluster namespace connection using environment.sh and then executing -the following commands: - -```bash -# lists the latest versions of all services -ec list -# deploy the latest version of the epics-pvcs -ec deploy epics-pvcs VERSION -``` diff --git a/services/epics-pvcs/values.yaml b/services/epics-pvcs/values.yaml index 5d868dd..8a3693e 100644 --- a/services/epics-pvcs/values.yaml +++ b/services/epics-pvcs/values.yaml @@ -1,8 +1,4 @@ -epics-pvcs: - - # the beamline name - only set for beamlines - beamline: bl45p - # the location where the IOCs will run - same as beamline for beamlines - ioc_group: bl45p - # the name of the repository in which the IOC is grouped - location: bl45p +# Short name for this collection of services +# ioc_group: +# location where these IOCs and services will run +# location: \ No newline at end of file diff --git a/services/values.yaml b/services/values.yaml index 7632759..a953aa6 100644 --- a/services/values.yaml +++ b/services/values.yaml @@ -1,25 +1,40 @@ # shared beamline values for all services global: - beamline: bl45p - enabled: true - location: bl45p ioc_group: p45 + location: bl45p + enabled: true ioc-instance: + # useHostNetwork - use host network for IOC - required for Channel Access + # to work outside of the cluster + hostNetwork: true + + # affinity and tolerations to get the right nodes on pollux securityContext: runAsUser: 37988 runAsGroup: 37988 - dataVolume: - pvc: false - hostPath: /dls/p45/data - - useAffinity: true + affinity: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: beamline + operator: In + values: + - bl45p - # extra toleration for bl45p's nodetype taint tolerations: - - key: "nodetype" - operator: "Equal" - value: "test-rig" - effect: "NoSchedule" + - key: beamline + operator: Equal + value: bl45p + effect: NoSchedule + - key: location + operator: Equal + value: bl45p + effect: NoSchedule + - key: nodetype + operator: Equal + value: training-rig + effect: NoSchedule