Skip to content
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
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,14 @@ abstract class AbstractCloudQueryCommand extends Task {
title = "Set CloudQuery environment variables",
description = "Key-value pairs rendered by Kestra and passed to the CloudQuery process; empty by default."
)
@PluginProperty(group = "execution")
protected Property<Map<String, String>> env;

@Schema(
title = "Deprecated Docker runner options",
description = "Replaced by 'taskRunner'; keep only for legacy flows."
)
@PluginProperty
@PluginProperty(group = "execution")
@Deprecated
private DockerOptions docker;

Expand All @@ -42,7 +43,7 @@ abstract class AbstractCloudQueryCommand extends Task {
description = """
Defaults to the Docker runner with an empty entrypoint. If you switch runners, ensure the entrypoint suits the CloudQuery binary."""
)
@PluginProperty
@PluginProperty(group = "execution")
@Builder.Default
@Valid
private TaskRunner<?> taskRunner = Docker.builder()
Expand All @@ -55,6 +56,7 @@ abstract class AbstractCloudQueryCommand extends Task {
description = "Used when the selected task runner is container-based; defaults to ghcr.io/cloudquery/cloudquery:latest."
)
@Builder.Default
@PluginProperty(group = "execution")
private Property<String> containerImage = Property.ofValue(DEFAULT_IMAGE);

protected DockerOptions injectDefaults(DockerOptions original) {
Expand Down
5 changes: 5 additions & 0 deletions src/main/java/io/kestra/plugin/cloudquery/CloudQueryCLI.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.SuperBuilder;
import io.kestra.core.models.annotations.PluginProperty;

@SuperBuilder
@ToString
Expand Down Expand Up @@ -81,12 +82,16 @@ public class CloudQueryCLI extends AbstractCloudQueryCommand implements Runnable
description = "Shell commands executed sequentially; include the cloudquery binary (aliased to /app/cloudquery) and any arguments."
)
@NotNull
@PluginProperty(group = "main")
protected Property<List<String>> commands;

@PluginProperty(group = "source")
private NamespaceFiles namespaceFiles;

@PluginProperty(group = "source")
private Object inputFiles;

@PluginProperty(group = "destination")
private Property<List<String>> outputFiles;

@Override
Expand Down
7 changes: 6 additions & 1 deletion src/main/java/io/kestra/plugin/cloudquery/Sync.java
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ public class Sync extends AbstractCloudQueryCommand implements RunnableTask<Scri
description = "Inline configs or file/URI paths rendered by Kestra and written to temporary YAML files passed to `cloudquery sync`.",
anyOf = { String.class, List.class, Map.class }
)
@PluginProperty
@PluginProperty(group = "main")
@NotNull
private List<Object> configs;

Expand All @@ -121,19 +121,24 @@ public class Sync extends AbstractCloudQueryCommand implements RunnableTask<Scri
description = "When true (default false), adds CloudQuery backend_options and saves the SQLite state file to the namespace KV store for reuse."
)
@Builder.Default
@PluginProperty(group = "advanced")
private Property<Boolean> incremental = Property.ofValue(false);

@PluginProperty(group = "source")
private NamespaceFiles namespaceFiles;

@PluginProperty(group = "source")
private Object inputFiles;

@PluginProperty(group = "destination")
private Property<List<String>> outputFiles;

@Schema(
title = "Enable CloudQuery console logs",
description = "Adds the --log-console flag; enabled by default."
)
@Builder.Default
@PluginProperty(group = "advanced")
private Property<Boolean> logConsole = Property.ofValue(true);

private String computeKVEntryName(RunContext runContext, String stateName, String taskRunValue) {
Expand Down
Loading