/
SPIKE: Shared Module Feasibility to Handle Both Local and Cloud Execution

SPIKE: Shared Module Feasibility to Handle Both Local and Cloud Execution

The goal of this spike is to investigate whether it is feasible use the shared module that can execute scenarios both in GTP Chrome extension (local execution) and in a Execution Engine (cloud/ on-prem).

 

Problem Statement:

The executeScenarios() will be in residing in the shared module and it will be used by GTP extension and Execution engine. Since Local execution requires leveraging the Chrome APIs for storage and communication between extension modules, which may introduce challenges when adapting the same module for cloud-based execution. Chrome is not part of the shared module it won’t be able to use the chrome API and the chrome API is not required for the Execution Engine.

Hypothesis:

By passing GTP extension specific parameters to the shared module, it should be possible to handle extension-related operations (such as storage and communication) while maintaining the core functionality for execution. The module can leverage these parameters for local execution within the Chrome extension, and omit them when running in a cloud environment.

Findings:

The shared module was able to utilize the chrome API when passed as a parameter and the shortcomings of the local execution can be resolved. However the other two modes of execution in GTP extension (i.e. edit scenario execution and step by step execution) would not be able to use this approach because of user intervention when executing the scenario.

Risks and Considerations:

The shared module must handle Chrome API limitations, conditional logic complexity, performance concerns, and differing user interaction requirements between local and cloud execution.

Conclusion:

The approach of passing the extension required parameters to the shared module and leverage it in shared module would allow us to have a single code of execution with some conditional checks to handle execution of both local and cloud. The other two modes of execution extension requires separate implementation which will be part of chrome extension module.

 

executScenario.drawio.png

 

 

 

 

 

 

 

Related content