Skip to content
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

Fature/apply review fixes #388

Merged
merged 18 commits into from
Jan 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion extensions/deploy_replace_undeploy/standard/20-044.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
:issued-date: yyyy-mm-dd
:external-id: http://www.opengis.net/doc/IS/ogcapi-processes-2/1.0
:keywords: process, collection, instance, spatial, data, openapi, transactions, insert, update, delete, add, remove, deploy, undeploy, REST, PUT, POST, DELETE
:submitting-organizations: Geolabs; CubeWerx Inc.
:submitting-organizations: Geolabs; CubeWerx Inc; Terradue Srl.; Wuhan University (WHU).; Computer Research Institute of Montréal (CRIM).
:editor: Panagiotis (Peter) A. Vretanos, Gérald Fenoy
:mn-document-class: ogc
:mn-output-extensions: xml,html,doc,pdf
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@
====
[%metadata]
identifier:: /conf/cwl/deploy/body
target:: /rec/deploy-replace-undeploy/deploy/body-cwl
test-purpose:: Validate that the server support deploy operation using the Common Worflow Language encoding
target:: /req/cwl/deploy/body
test-purpose:: Validate that the server support deploy operation using the Common Workflow Language encoding
test-method::
+
--
1. Retrieve all links from the landing page with “rel=http://www.opengis.net/def/rel/ogc/1.0/processes” and /processes

2. Issue an HTTP POST request using the media type "application/cwl" and the application package content

3. Validate the reponse with <<ats_ogcapppkg_deploy_response,/conf/ogcapppkg/deploy/response>>
3. Validate the response with <<ats_ogcapppkg_deploy_response,/conf/ogcapppkg/deploy/response>>

4. Send the same POST request again

5. Validate the reponse with <<ats_ogcapppkg_deploy_response-duplicate,/conf/ogcapppkg/deploy/response-duplicate>>
5. Validate the response with <<ats_ogcapppkg_deploy_response-duplicate,/conf/ogcapppkg/deploy/response-duplicate>>
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
[%metadata]
identifier:: /conf/cwl/replace/body
target:: /req/cwl/replace/body
test-purpose:: Validate that the server support replace operation using the Common Worflow Language encoding
test-purpose:: Validate that the server support replace operation using the Common Workflow Language encoding
test-method::
+
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Append `/{processId}` to each path, where `{processId}` is a mutable process id.

3. Send a PUT request on one path using the media type "application/cwl" and the application package content
3. Send a PUT request for one path using the media type "application/cwl" and the application package content

4. Validate the reponse with <<ats_ogcapppkg_replace_response,/conf/ogcapppkg/replace/response>>
4. Validate the response with <<ats_ogcapppkg_replace_response,/conf/ogcapppkg/replace/response>>
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@
[%metadata]
identifier:: /conf/docker/deploy/body
target:: /rec/deploy-replace-undeploy/deploy/body-docker
test-purpose:: Validate that the server support deploy operation using a docker image as execution unit
test-purpose:: Validate that the server supports deploy operation using a Docker image as execution unit
test-method::
+
--
1. Retrieve all links from the landing page with “rel=http://www.opengis.net/def/rel/ogc/1.0/processes” and /processes

2. Issue an HTTP POST request using the media type "application/ogcapppkg+json" with as body a default OGC Application Package

3. Validate the reponse with <<ats_ogcapppkg_deploy_response,/conf/ogcapppkg/deploy/response>>
3. Validate the response with <<ats_ogcapppkg_deploy_response,/conf/ogcapppkg/deploy/response>>

4. Send the same POST request again

5. Validate the reponse with <<ats_ogcapppkg_deploy_response-duplicate,/conf/ogcapppkg/deploy/response-duplicate>>
5. Validate the response with <<ats_ogcapppkg_deploy_response-duplicate,/conf/ogcapppkg/deploy/response-duplicate>>
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
[%metadata]
identifier:: /conf/docker/replace/body
target:: /req/docker/replace/body
test-purpose:: Validate that the server support replace operation using the Common Worflow Language encoding
test-purpose:: Validate that the server support replace operation using a Docker image as execution unit
test-method::
+
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Append `/{processId}` to each path, where `{processId}` is the process id retrieved from <<ats_ogcapppkg_deploy_response-success,/conf/ogcapppkg/deploy/response-success>>.

3. Send a PUT request on one path using the media type "application/ogcapppkg+json" with as body a default OGC Application Package
3. Send a PUT request for one path using the media type "application/ogcapppkg+json" with as body a default OGC Application Package

4. Validate the reponse with <<ats_ogcapppkg_replace_response,/conf/ogcapppkg/replace/response>>
4. Validate the response with <<ats_ogcapppkg_replace_response,/conf/ogcapppkg/replace/response>>
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ test-method::
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Issue an HTTP GET request on each path
2. Issue an HTTP GET request for each path

3. Validate the process list is composed of processes that get the mutable boolean parameter set to true or false
3. Validate the process list is composed of processes that get the mutable Boolean parameter set to true or false
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ test-purpose:: Ensure that an application package URL can be provided in CWL enc
test-method::
+
--
If a server implementing the OGC API - Processes - Part 2: Deploy, Replace, Undeploy is tested using CITE tests, it should provide a URL to an example application package encoded in CWL for tests against the OGC Application Package and CWL conformance classes to occurred.
If a server implementing the OGC API - Processes - Part 2: Deploy, Replace, Undeploy is tested using CITE tests, it should provide a URL to an example application package encoded in CWL for tests against the OGC Application Package and CWL conformance classes.
--
====
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ test-method::
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Issue an HTTP POST request on each path.
2. Issue an HTTP POST request for each path.

3. Validate that the response header does not contain `405 Method not allowed`
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/dru/deploy/unsupported-content-type
target:: /req/deploy-replace-undeploy/deploy/unsupported-content-type
test-purpose:: Validate that the server return a 415 status code with a relevant exception
test-purpose:: Validate that the server returns a 415 status code with a relevant exception
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/dru/replace/content-type
target:: /req/deploy-replace-undeploy/replace/content-type
test-purpose:: Validate that the server support the Content-type header to declare the media type of the request body
test-purpose:: Validate that the server supports the Content-type header to declare the media type of the request body
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
[%metadata]
identifier:: /conf/dru/replace/put-op
target:: /req/deploy-replace-undeploy/replace/put-op
test-purpose:: Validate that the server support HTTP PUT operation at the path /processes
test-purpose:: Validate that the server supports HTTP PUT operation at the path /processes
test-method::
+
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Append `/{processId}` to each path, where `{processId}` is not an existing process id, i.e. `not-existing-process`.

3. Issue an HTTP PUT request on each path.
3. Issue an HTTP PUT request for each path.

4. Validate that the response header does not contain `405 Method not allowed`.
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/dru/replace/unsupported-content-type
target:: /req/deploy-replace-undeploy/deploy/unsupported-content-type
test-purpose:: Validate that the server return a 415 status code with a relevant exception
test-purpose:: Validate that the server returns a 415 status code with a relevant exception
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
[%metadata]
identifier:: /conf/dru/undeploy/delete-op
target:: /req/deploy-replace-undeploy/undeploy/delete-op
test-purpose:: Validate that the server support HTTP DELETE operation at the path /processes/{processId}
test-purpose:: Validate that the server supports HTTP DELETE operation at the path /processes/{processId}
test-method::
+
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Append `/{processId}` to each path, where `{processId}` is not an existing process id, i.e. `not-existing-process`.

3. Issue an HTTP DELETE request on each path.
3. Issue an HTTP DELETE request for each path.

3. Validate that the response header does not contain `405 Method not allowed`.
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/dru/undeploy/response-immutable-success
target:: /req/deploy-replace-undeploy/deploy/response-immutable
test-purpose:: Validate that the server return a 403 status code when removing an immutable process
test-purpose:: Validate that the server returns a 403 status code when removing an immutable process
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/dru/undeploy/response-immutable
target:: /req/deploy-replace-undeploy/deploy/response-immutable
test-purpose:: Validate that the server return a 403 status code when removing an immutable process
test-purpose:: Validate that the server returns a 403 status code when removing an immutable process
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/dru/undeploy/response
target:: /req/deploy-replace-undeploy/undeploy/response
test-purpose:: Validate that the server return a 204 status code when removing a mutable process
test-purpose:: Validate that the server returns a 204 status code when removing a mutable process
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@
====
[%metadata]
identifier:: /conf/ogcapppkg/deploy/body
target:: /rec/ogcapppkg/deploy/body
test-purpose:: Validate that the server support OGC Application Package encoding
target:: /req/ogcapppkg/deploy/body
test-purpose:: Validate that the server supports OGC Application Package encoding
test-method::
+
--
1. Retrieve all links from the landing page with “rel=http://www.opengis.net/def/rel/ogc/1.0/processes” and /processes

2. Issue an HTTP POST request using the content type "application/ogcapppkg+json" with as body a default OGC Application Package or the application package as reference, if any, on one path

3. Validate the reponse with <<ats_ogcapppkg_deploy_response,/conf/ogcapppkg/deploy/response>>
3. Validate the response with <<ats_ogcapppkg_deploy_response,/conf/ogcapppkg/deploy/response>>

4. Send the same POST request again

5. Validate the reponse with <<ats_ogcapppkg_deploy_response-duplicate,/conf/ogcapppkg/deploy/response-deplicate>>
5. Validate the response with <<ats_ogcapppkg_deploy_response-duplicate,/conf/ogcapppkg/deploy/response-duplicate>>
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
[%metadata]
identifier:: /conf/ogcapppkg/deploy/response-success
target:: /req/deploy-replace-undeploy/deploy/response-success
test-purpose:: Validate that the server return a Location header and a process summary
test-purpose:: Validate that the server returns a Location header and a process summary
test-method::
+
--
1. Validate the Location header contain a URI of the deployed process.
1. Validate the Location header contains a URI of the deployed process.

2. Validate the document conforms to the https://schemas.opengis.net/ogcapi/processes/part1/1.0/openapi/schemas/processSummary.yaml[processSummary.yaml] schema.
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[%metadata]
identifier:: /conf/ogcapppkg/deploy/response
target:: /req/deploy-replace-undeploy/deploy/response-success
test-purpose:: Validate that the server return HTTP Status code 201 or 202
test-purpose:: Validate that the server returns HTTP Status code 201 or 202
test-method::
+
--
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@
====
[%metadata]
identifier:: /conf/ogcapppkg/replace/body
target:: /rec/deploy-replace-undeploy/replace/body-ogcapppkg
test-purpose:: Validate that the server support OGC Application Package encoding
target:: /req/ogcapppkg/replace/body
test-purpose:: Validate that the server supports OGC Application Package encoding
test-method::
+
--
1. Construct a path for each "rel=http://www.opengis.net/def/rel/ogc/1.0/processes" link on the landing page as well as for the {root}/processes path.

2. Append `/{processId}` to each path, where `{processId}` is the process id retrieved from <<ats_ogcapppkg_deploy_response-success,/conf/ogcapppkg/deploy/response-success>>.

3. Issue an HTTP PUT request using the media type "application/ogcapppkg+json" with as body a default OGC Application Package or the application package URL, if any, on each path
3. Issue an HTTP PUT request using the media type "application/ogcapppkg+json" with as body a default OGC Application Package or the application package URL, if any, for each path

4. Validate the reponse with <<ats_ogcapppkg_replace_response,/conf/ogcapppkg/replace/response>>
4. Validate the response with <<ats_ogcapppkg_replace_response,/conf/ogcapppkg/replace/response>>
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
[%metadata]
identifier:: /conf/ogcapppkg/replace/response
target:: /req/deploy-replace-undeploy/response-success
test-purpose:: Validate that the server return HTTP Status code 200, 202 or 204
test-purpose:: Validate that the server returns HTTP Status code 200, 202 or 204
test-method::
+
--
1. Validate that the status code is 200, 202 or 204
1. Validate that the status code is 200, 202 or 204.
--
====

Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
====
[%metadata]
label:: /per/core/additional-status-codes
part:: Servers may support other capabilities of the HTTP protocol and, therefore, may return other status codes than those listed in <<status_codes>>.
part:: Servers MAY support other HTTP protocol capabilities. Therefore, the server may return other status codes than those listed in <<status_codes>>.
====
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
====
[%metadata]
label:: /per/deploy-replace-undeploy/deploy/body
part:: A server may support any processes description encoding in the body of a HTTP POST operation.
part:: A server MAY support any processes description encoding in the body of a HTTP POST operation.
====
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,6 @@
[%metadata]
label:: /rec/deploy-replace-undeploy/deploy/body-cwl

part:: If a process can be represented for the intended use as a <<rc_cwl,CWL Application>>, implementations should consider supporting the <<rc_cwl,CWL>> encoding for describing the process to be deployed to the API.

part:: The media type `application/cwl` shall be used to indicate that request body contains a processes description encoded as a <<rc_cwl,CWL Application>>.

part:: If the CWL contains more than one workflow, an additional `w` query parameter may be used to reference the workflow id to be deployed.

part:: The server should validate the CWL at the request time. In case, the server cannot find the `w` identifier within the workflow from the CWL provided, a 400 status code is expected with the type "worflow-not-found".
part:: If a process can be encoded for the intended use in <<rc_cwl,CWL>>, implementations SHOULD consider supporting the <<rc_cwl,CWL>> encoding for describing the process to be deployed to the API.

====
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,5 @@
[%metadata]
label:: /rec/deploy-replace-undeploy/deploy/body-ogcapppkg

part:: If a process can be represented for the intended use as an <<rc_ogcapppkg,OGC Application Package>>, implementations should consider supporting the <<rc_ogcapppkg,OGC Application Package>> encoding for describing the process to be added to the API.

part:: The media type `application/ogcapppkg+json` shall be used to indicate that request body contains a processes description encoded as an <<rc_ogcapppkg,OGC Application Package>>.
part:: If a process can be represented for the intended use as an <<rc_ogcapppkg,OGC Application Package>>, implementations SHOULD consider supporting the <<rc_ogcapppkg,OGC Application Package>> encoding for describing the process to be added to the API.
====
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
====
[%metadata]
label:: /per/deploy-replace-undeploy/replace/body
part:: A server may support any processes description encoding in the body of a HTTP POST operation.
part:: A server MAY support any processes description encoding in the body of a HTTP PUT operation.
====
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
[%metadata]
label:: /rec/deploy-replace-undeploy/replace/body-cwl

part:: If a process can be described for the intended use as a <<rc_cwl,CWL graph>>, implementations should consider supporting the <<rc_cwl,CWL>> encoding for describing the replacement process.
part:: If a process can be encoded for the intended use in <<rc_cwl,CWL>>, implementations SHOULD consider supporting the <<rc_cwl,CWL>> encoding for describing the replacement process.

part:: The media type `application/cwl` shall be used to indicate that request body contains a processes description encoded as <<rc_ogcapppkg,CWL>>.
====
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
[%metadata]
label:: /rec/deploy-replace-undeploy/replace/body-ogcapppkg

part:: If a process can be described for the intended use as an <<rc_ogcapppkg,OGC Application Package>>, implementations should consider supporting the <<rc_ogcapppkg,OGC Application Package>> encoding for describing the replacement process.
part:: If a process can be described for the intended use as an <<rc_ogcapppkg,OGC Application Package>>, implementations SHOULD consider supporting the <<rc_ogcapppkg,OGC Application Package>> encoding for describing the replacement process.

part:: The media type `application/ogcapppkg+json` shall be used to indicate that request body contains a processes description encoded as an <<rc_ogcapppkg,OGC Application Package>>.
====
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,5 @@
====
[%metadata]
label:: /rec/ogcapppkg/execution-unit-docker

part:: If the execution unit is a Docker image then it is recommended that the contents of the execution unit have the properties `type` and `image`.

part:: The value of the `type` property shall be `docker'.

part:: The value of the `image` property shall be a reference to the Docker image.
part:: If the execution unit is a Docker image, implementations SHOULD consider supporting the <<rc_docker,Docker Requirements class>>.
====
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,5 @@
====
[%metadata]
label:: /rec/ogcapppkg/execution-unit-cwl

part:: If the execution unit is encoded in CWL then it is recommended that the contents of the execution unit be the properties:
* `type` and `href` if passed by reference
* `value` and `mediaType` if passed by value

part:: The value of the `type` property shall be `application/cwl`, when for `mediaType` it should be `application/cwl+json`.

part:: The value of the `href` property shall be a reference to the CWL encoded file. The value of the `value` property shall be the CWL encoded in json format.

part:: If the CWL contains more than a single workflow identifier, an addition `w` query parameter may be used to target a specific workflow id to be deployed.

part:: The server should validate the CWL at the request time. In case, the server cannot find the `w` identifier within the workflow from the CWL provided, a 400 status code is expected with the type "cwl-worflow-not-exist".

part:: If the execution unit is encoded in CWL, implementations SHOULD consider supporting the <<rc_cwl,CWL Requirement class>>.
====
Loading
Loading