Make a configurable timeout
Currently ACM-Runtime fetches "maxStatusWaitMs" from properties file, uses that value to calculate the timeout for all operations.
What can be implemented:
For each operation, continue to use the maxStatusWaitMs property as default value
Add specific value for each operation in composition definition or into the instance that override the default value
Proposed solution 1
Add specific value for each operation in composition definition into metadata.
Example of composition definition
service template
tosca_definitions_version: tosca_simple_yaml_1_3
metadata:
primeTimeoutMs: 200000
deprimeTimeoutMs: 200000
deployTimeoutMs: 1000000
undeployTimeoutMs: 200000
updateTimeoutMs: 1000000
migrateTimeoutMs: 1000000
deleteTimeoutMs: 200000
Proposed solution 2
Add primeTimeoutMs
and deprimeTimeoutMs
in composition definition into metadata.
Add specific value for each instance operation into the instance.
Example of composition definition and composition instance
service template
tosca_definitions_version: tosca_simple_yaml_1_3
metadata:
primeTimeoutMs: 200000
deprimeTimeoutMs: 200000
composition instance
name: DemoInstanceOslo
version: 1.0.1
metadata:
deployTimeoutMs: 1000000
undeployTimeoutMs: 200000
updateTimeoutMs: 1000000
migrateTimeoutMs: 1000000
deleteTimeoutMs: 200000
compositionId: {{composition1Id}}
description: Demo automation composition instance for Oslo
elements:
709c62b3-8918-41b9-a747-d21eb79c6c25:
id: 709c62b3-8918-41b9-a747-d21eb79c6c25
definition:
name: onap.policy.clamp.ac.element.Http_BridgeAutomationCompositionElement
version: 1.2.3
description: Bridge Automation Composition Element for the Demo
properties:
baseUrl: http://{{address}}:30801
httpHeaders:
Content-Type: application/json
Authorization: Basic YWNtVXNlcjp6YiFYenRHMzQ=
Proposed solution 3
Add primeTimeoutMs
and deprimeTimeoutMs
in composition definition into metadata.
Add specific value for each instance operation into the instance element.
Example of composition definition and composition instance
service template
composition instance