Skip to content

Commit 7de5369

Browse files
committed
Helm chart and Application versions bump
Update to the latest ZOO-Project-DRU version Add parameter to pass the ZOO_REDIS_HOST value to the websocketd deployment Add /jobs/{jobId}/results/{outputId} endpoint to retrieve a unique job output Also update the tmpUrl configuration parameter in security_service.py
1 parent 2dde97d commit 7de5369

6 files changed

Lines changed: 72 additions & 22 deletions

File tree

zoo-project-dru/Chart.yaml

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@ type: application
2323
# This is the chart version. This version number should be incremented each time you make changes
2424
# to the chart and its templates, including the app version.
2525
# Versions are expected to follow Semantic Versioning (https://semver.org/)
26-
version: 0.8.3
26+
version: 0.8.4
2727

2828
# This is the version number of the application being deployed. This version number should be
2929
# incremented each time you make changes to the application. Versions are not expected to
3030
# follow Semantic Versioning. They should reflect the version the application is using.
3131
# It is recommended to use it with quotes.
32-
appVersion: "0.2.35"
32+
appVersion: "0.2.36"
3333

3434
keywords:
3535
- workflows
@@ -76,22 +76,13 @@ annotations:
7676
description: "Update to the latest ZOO-Project-DRU version"
7777
links:
7878
- name: GitHub Commit
79-
url: https://github.com/ZOO-Project/ZOO-Project/commit/0b815fb32ee04eb6bd98164a040cc2733a2b5230
79+
url: https://github.com/ZOO-Project/ZOO-Project/commit/e1a799659515b81812c676f3b245532cdfa7bf24
8080
- kind: fixed
81-
description: "Fix issue #24: service selector mismatch in webui service causes 503 errors"
82-
links:
83-
- name: GitHub Issue
84-
url: https://github.com/ZOO-Project/charts/issues/24
85-
- kind: added
86-
description: "Add eoapi proxy when the eoapi.enabled is set to true"
87-
- kind: added
88-
description: "Add the values.schema.json file to validate user values"
89-
- kind: added
90-
description: "Add options onlyImplicitFlow to the IAM configuration to restrict OpenAPI authentication method"
81+
description: "Add parameter to pass the ZOO_REDIS_HOST value to the websocketd deployment"
9182
- kind: added
92-
description: "Add globalNamespace option in oas.cfg configuration file"
83+
description: "Add /jobs/{jobId}/results/{outputId} endpoint to retrieve a unique job output"
9384
- kind: changed
94-
description: "Update DRU Helm chart documentation"
85+
description: "Also update the tmpUrl configuration parameter in security_service.py"
9586
9687
artifacthub.io/license: Apache-2.0
9788

zoo-project-dru/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ To install the chart with the release name `my-zoo-project-dru`:
2424

2525
````bash
2626
helm repo add zoo-project https://zoo-project.github.io/charts/
27-
helm install my-zoo-project-dru zoo-project/zoo-project-dru --version 0.8.3
27+
helm install my-zoo-project-dru zoo-project/zoo-project-dru --version 0.8.4
2828
````
2929

3030
## Parameters

zoo-project-dru/files/zoo-project/oas.cfg

Lines changed: 59 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ rootHost={{ $hosturl }}
2424
rootPath=ogc-api
2525
links=/,/api,/conformance,/processes,/jobs
2626
{{- if .Values.documentation.enabled }}
27-
paths={{ print "/root,/conformance," $customPaths "/api,/processes,/processes/water-bodies,/processes/{processID},/processes/{processID}/package,/processes/water-bodies/execution,/processes/{processID}/execution,/jobs,/jobs/{jobID},/jobs/{jobID}/results" $eoapiPaths }}
27+
paths={{ print "/root,/conformance," $customPaths "/api,/processes,/processes/water-bodies,/processes/{processID},/processes/{processID}/package,/processes/water-bodies/execution,/processes/{processID}/execution,/jobs,/jobs/{jobID},/jobs/{jobID}/results,/jobs/{jobID}/results/{outputID}" $eoapiPaths }}
2828
{{ else }}
29-
paths={{ print "/root,/conformance," $customPaths "/api,/processes,/processes/{processID},/processes/{processID}/package,/processes/{processID}/execution,/jobs,/jobs/{jobID},/jobs/{jobID}/results" $eoapiPaths }}
29+
paths={{ print "/root,/conformance," $customPaths "/api,/processes,/processes/{processID},/processes/{processID}/package,/processes/{processID}/execution,/jobs,/jobs/{jobID},/jobs/{jobID}/results,/jobs/{jobID}/results/{outputID}" $eoapiPaths }}
3030
{{- end }}
31-
parameters={{ print "processID,jobID,resultID" $eoapiParams }}
32-
header_parameters={{ print "oas-header1,oas-header2,oas-header3,oas-header4,oas-header5,limitParam,skipParam,processIdParam,statusParam,minDurationParam,maxDurationParam,typeParam,datetimeParam,wParam" $eoapiHeaderParams }}
31+
parameters={{ print "outputID,processID,jobID,resultID" $eoapiParams }}
32+
header_parameters={{ print "oas-header1,oas-header2,oas-header3,oas-header4,oas-header5,limitParam,skipParam,outputIdParam,processIdParam,statusParam,minDurationParam,maxDurationParam,typeParam,datetimeParam,wParam" $eoapiHeaderParams }}
3333
version=3.0.3
3434
license_name=OGC license
3535
license_url=https://raw.githubusercontent.com/opengeospatial/ogcapi-processes/master/LICENSE
@@ -725,6 +725,58 @@ schema_1=https://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/response
725725
parameters_1=/components/parameters/jobID
726726
{{ end }}
727727

728+
[/jobs/{jobID}/results/{outputID}]
729+
rel=http://www.opengis.net/def/rel/ogc/1.0/results
730+
type=application/json
731+
title=Get Result
732+
733+
[jobs/{jobID}/results/{outputID}]
734+
{{ if .Values.zoo.promoteHead }}
735+
length=2
736+
{{ end }}
737+
method=get
738+
operationId=get_jobs__jobID__results__outputID_
739+
{{- if .Values.iam.enabled }}
740+
secured={{ .Values.iam.name }}
741+
ecode=401,403,404,500
742+
{{- else }}
743+
ecode=404,500
744+
{{- end }}
745+
title=The result of a job execution.
746+
abstract=The result of a job execution.
747+
{{- if .Values.documentation.enabled }}
748+
abstract_file=/var/www/job-results.md
749+
{{- end }}
750+
tags=Execute process - monitor job - access the result
751+
aschema=https://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/Results.yaml
752+
parameters=/components/parameters/jobID,/components/parameters/outputID
753+
ep=,/components/parameters/oas-header2
754+
{{ if .Values.zoo.promoteHead }}
755+
method_1=head
756+
{{- if .Values.iam.enabled }}
757+
secured_1={{ .Values.iam.name }}
758+
ecode_1=401,403,404,500
759+
{{- else }}
760+
ecode_1=404,500
761+
{{- end }}
762+
title_1=The result of a job execution.
763+
abstract_1=The result of a job execution.
764+
{{- if .Values.documentation.enabled }}
765+
abstract_file=/var/www/job-results.md
766+
{{- end }}
767+
tags_1=Execute process - monitor job - access the result
768+
aschema_1=https://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/responses/Results.yaml
769+
parameters_1=/components/parameters/jobID,/components/parameters/outputID
770+
{{ end }}
771+
772+
[{outputID}]
773+
type=string
774+
title=The id of an output
775+
abstract=The id of an output
776+
in=path
777+
required=true
778+
example=stac
779+
728780
[{processID}]
729781
type=string
730782
title=The id of a process
@@ -750,6 +802,9 @@ required=true
750802
[statusParam]
751803
schema=https://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/status.yaml
752804

805+
[outputIdParam]
806+
schema=https://github.com/opengeospatial/ogcapi-processes/blob/master/openapi/parameters/processes-core/outputID.yaml
807+
753808
[processIdParam]
754809
schema=https://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/parameters/processIdQueryParam.yaml
755810

zoo-project-dru/files/zoo-project/security_service.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ def securityIn(conf, inputs, outputs):
6767
# conf["lenv"]["cwd"]=rPath
6868
conf["zooServicesNamespace"] = {"namespace": conf["renv"][i], "cwd": rPath}
6969
conf["main"]["tmpPath"] = rPath + "/temp"
70+
conf["main"]["tmpUrl"]=conf["main"]["tmpUrl"].replace("/temp", "/"+conf["renv"][i]+"/temp")
7071
if i.count("QUERY_STRING") and conf["renv"][i].count("/package"):
7172
if conf["renv"]["HTTP_ACCEPT"] == "application/cwl+json":
7273
zoo.info("Conversion to cwl+json should happen in securityOut")
@@ -117,6 +118,7 @@ def securityIn(conf, inputs, outputs):
117118
conf["lenv"]["fpm_cwd"] = rPath
118119
conf["auth_env"] = {"user": "anonymous","cwd": rPath}
119120
conf["main"]["tmpPath"]=rPath+"/temp"
121+
conf["main"]["tmpUrl"]=conf["main"]["tmpUrl"].replace("/temp", "/"+conf["lenv"]["fpm_user"]+"/temp")
120122
conf["zooServicesNamespace"] = {"namespace": "anonymous","cwd": rPath}
121123

122124
if not (os.path.isdir(rPath)):

zoo-project-dru/templates/dp-websocketd.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ spec:
5050
{{- toYaml .Values.securityContext | nindent 12 }}
5151
image: "{{ .Values.websocketd.image.repository }}:{{ .Values.websocketd.image.tag | default .Chart.AppVersion }}"
5252
imagePullPolicy: {{ .Values.websocketd.pullPolicy }}
53+
command: ["/websocketd/websocketd"]
54+
args: ["--port=8888", "--passenv=ZOO_REDIS_HOST", "/shell.py"]
5355
env:
5456
- name: ZOO_REDIS_HOST
5557
value: {{ include "zoo-project-dru.redis.servicename" . }}

zoo-project-dru/values.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ zoofpm:
170170
image:
171171
repository: zooproject/zoo-project
172172
pullPolicy: IfNotPresent
173-
tag: dru-0b815fb32ee04eb6bd98164a040cc2733a2b5230
173+
tag: dru-e1a799659515b81812c676f3b245532cdfa7bf24
174174
autoscaling:
175175
enabled: false
176176
replicaCount: 1
@@ -182,7 +182,7 @@ zookernel:
182182
image:
183183
repository: zooproject/zoo-project
184184
pullPolicy: IfNotPresent
185-
tag: dru-0b815fb32ee04eb6bd98164a040cc2733a2b5230
185+
tag: dru-e1a799659515b81812c676f3b245532cdfa7bf24
186186
extraMountPoints: []
187187

188188
notifications:

0 commit comments

Comments
 (0)