-
Notifications
You must be signed in to change notification settings - Fork 57
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
[FEATURE] Integration: align datasource with workflow #1855
Comments
For this I was thinking of maybe adding an interface IntegrationWorkflow {
name: string;
label: string;
description: string;
enabled_by_default: boolean;
applicable_data_sources?: string[]; // default: all
} Then we could see workflows specified as {
"name": "flint-live-dashboards",
"label": "Dashboards & Visualizations For Flint Integrations using live queries",
"description": "Dashboards and visualizations aligned with Flint S3 datasource ",
"enabled_by_default": false,
"applicable_data_sources": ["s3"]
}, And when rendering workflow options, we filter based on the active connection type const cards = integration.workflows
.filter((workflow) => workflow.applicable_data_sources
? workflow.applicable_data_sources.includes(config.connectionType)
: true
)
.map((workflow) => {
return (
<EuiCheckableCard
id={`workflow-checkbox-${workflow.name}`}
key={workflow.name}
label={workflow.label}
checkableType="checkbox"
value={workflow.name}
checked={useWorkflows.get(workflow.name)}
onChange={() => toggleWorkflow(workflow.name)}
>
{workflow.description}
</EuiCheckableCard>
);
}); This would allow optionally specifying additional filters for workflows while preserving current behavior for all unmodified integrations, and also moves toward activating workflows for OS integrations in #1519. It's been on my to-do list for a while, but no bandwidth -- open to a PR here. |
Mutual exclusivity is also something I've thought about but I don't know if I have a great solution. A minimum fix would likely be to have a Maybe I could also think about how to formalize some sort of install picker directive that would look something like:
It's not too bad to implement validation-wise, but getting the UI to comprehensibly handle issues would be a challenge. I'm inclined to say let's split mutual exclusivity into its own issue, since data source alignment is considerably more straightforward. |
Is your feature request related to a problem?
Integration currently can contain multiple datasources - each one may have one or more workflows.
Some datasource cant use workflows that are relevant only for other datasources such as:
On a general note we sould also allow workflows to mutual exclusive such as when different alternatives are possible for creating an MV:
What solution would you like?
We need to add meta-data to associate the workflow with its datasource - and as a result only show the workflows that correspond with the selected datasource
Do you have any additional context?
The text was updated successfully, but these errors were encountered: