|
import streamlit as st |
|
|
|
from backend_services import ServiceOne, ServiceTwo |
|
|
|
|
|
services = { |
|
"Service One": ServiceOne(), |
|
"Service Two": ServiceTwo() |
|
} |
|
|
|
|
|
selected_services = st.multiselect("Select Services", list(services.keys())) |
|
parameters = {} |
|
|
|
|
|
for service_name in selected_services: |
|
service_instance = services[service_name] |
|
parameters[service_name] = {} |
|
for param_name in service_instance.parameters: |
|
parameters[service_name][param_name] = st.text_input(f"Enter {param_name} for {service_name}") |
|
|
|
|
|
if st.button("Run Workflow"): |
|
input_data = ... |
|
for service_name in selected_services: |
|
service_instance = services[service_name] |
|
service_instance.parameters = parameters[service_name] |
|
output_data = service_instance.execute(input_data) |
|
input_data = output_data |
|
|
|
|
|
st.success("Workflow executed successfully. Output: {}".format(input_data)) |
|
|