Skip to content

Commit e36160e

Browse files
committed
fix(core): change version property to pluginVersion
1 parent fa07cbd commit e36160e

File tree

10 files changed

+28
-18
lines changed

10 files changed

+28
-18
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package io.kestra.core.models;
2+
3+
import io.swagger.v3.oas.annotations.media.Schema;
4+
import jakarta.validation.constraints.Pattern;
5+
6+
/**
7+
* Interface that can be implemented by classes supporting plugin versioning.
8+
*
9+
* @see io.kestra.core.docs.Plugin
10+
*/
11+
public interface PluginVersioning {
12+
13+
@Pattern(regexp="\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)|([a-zA-Z0-9]+)")
14+
@Schema(title = "The version of the plugin to use.")
15+
String getPluginVersion();
16+
}

core/src/main/java/io/kestra/core/models/hierarchies/SubflowGraphTask.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,8 @@ public String getType() {
9292
}
9393

9494
@Override
95-
public String getVersion() {
96-
return ((TaskInterface) subflowTask).getVersion();
95+
public String getPluginVersion() {
96+
return ((TaskInterface) subflowTask).getPluginVersion();
9797
}
9898
}
9999
}

core/src/main/java/io/kestra/core/models/tasks/Task.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ abstract public class Task implements TaskInterface {
3131

3232
protected String type;
3333

34-
protected String version;
34+
protected String pluginVersion;
3535

3636
private String description;
3737

core/src/main/java/io/kestra/core/models/tasks/TaskForExecution.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class TaskForExecution implements TaskInterface {
1616

1717
protected String type;
1818

19-
protected String version;
19+
protected String pluginVersion;
2020

2121
protected List<TaskForExecution> tasks;
2222

core/src/main/java/io/kestra/core/models/tasks/TaskInterface.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22

33
import com.fasterxml.jackson.annotation.JsonInclude;
44
import io.kestra.core.models.Plugin;
5+
import io.kestra.core.models.PluginVersioning;
56
import io.swagger.v3.oas.annotations.media.Schema;
67
import jakarta.validation.constraints.NotBlank;
78
import jakarta.validation.constraints.NotNull;
89
import jakarta.validation.constraints.Pattern;
910

1011
@JsonInclude(JsonInclude.Include.NON_DEFAULT)
11-
public interface TaskInterface extends Plugin {
12+
public interface TaskInterface extends Plugin, PluginVersioning {
1213
@NotNull
1314
@NotBlank
1415
@Pattern(regexp="^[a-zA-Z0-9][a-zA-Z0-9_-]*")
@@ -19,8 +20,4 @@ public interface TaskInterface extends Plugin {
1920
@Pattern(regexp="\\p{javaJavaIdentifierStart}\\p{javaJavaIdentifierPart}*(\\.\\p{javaJavaIdentifierStart}\\p{javaJavaIdentifierPart}*)*")
2021
@Schema(title = "The class name of this task.")
2122
String getType();
22-
23-
@Pattern(regexp="\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)?|([a-zA-Z0-9]+)")
24-
@Schema(title = "The class version of this task.")
25-
String getVersion();
2623
}

core/src/main/java/io/kestra/core/models/triggers/AbstractTrigger.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ abstract public class AbstractTrigger implements TriggerInterface {
3434

3535
protected String type;
3636

37-
protected String version;
37+
protected String pluginVersion;
3838

3939
private String description;
4040

core/src/main/java/io/kestra/core/models/triggers/AbstractTriggerForExecution.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class AbstractTriggerForExecution implements TriggerInterface {
1313

1414
protected String type;
1515

16-
protected String version;
16+
protected String pluginVersion;
1717

1818
public static AbstractTriggerForExecution of(AbstractTrigger abstractTrigger) {
1919
return AbstractTriggerForExecution.builder()
Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
package io.kestra.core.models.triggers;
22

33
import io.kestra.core.models.Plugin;
4+
import io.kestra.core.models.PluginVersioning;
45
import io.swagger.v3.oas.annotations.media.Schema;
56
import jakarta.validation.constraints.NotBlank;
67
import jakarta.validation.constraints.NotNull;
78
import jakarta.validation.constraints.Pattern;
89

910

10-
public interface TriggerInterface extends Plugin {
11+
public interface TriggerInterface extends Plugin, PluginVersioning {
1112
@NotNull
1213
@NotBlank
1314
@Pattern(regexp="^[a-zA-Z0-9][a-zA-Z0-9_-]*")
@@ -20,8 +21,4 @@ public interface TriggerInterface extends Plugin {
2021
@Schema(title = "The class name for this current trigger.")
2122
String getType();
2223

23-
@Pattern(regexp="\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)|([a-zA-Z0-9]+)")
24-
@Schema(title = "The class version for this trigger.")
25-
String getVersion();
26-
2724
}

core/src/main/java/io/kestra/core/plugins/serdes/PluginDeserializer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public final class PluginDeserializer<T extends Plugin> extends JsonDeserializer
3333
private static final Logger log = LoggerFactory.getLogger(PluginDeserializer.class);
3434

3535
private static final String TYPE = "type";
36-
private static final String VERSION = "version";
36+
private static final String VERSION = "pluginVersion";
3737

3838
private volatile PluginRegistry pluginRegistry;
3939

core/src/test/java/io/kestra/core/serializers/YamlParserTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ void invalidProperty() {
198198
() -> this.parse("flows/invalids/invalid-property.yaml")
199199
);
200200

201-
assertThat(exception.getMessage(), is("Unrecognized field \"invalid\" (class io.kestra.plugin.core.debug.Return), not marked as ignorable (14 known properties: \"logLevel\", \"timeout\", \"retry\", \"allowWarning\", \"format\", \"version\", \"type\", \"id\", \"description\", \"workerGroup\", \"runIf\", \"logToFile\", \"disabled\", \"allowFailure\"])"));
201+
assertThat(exception.getMessage(), is("Unrecognized field \"invalid\" (class io.kestra.plugin.core.debug.Return), not marked as ignorable (14 known properties: \"logLevel\", \"timeout\", \"retry\", \"allowWarning\", \"format\", \"pluginVersion\", \"type\", \"id\", \"description\", \"workerGroup\", \"runIf\", \"logToFile\", \"disabled\", \"allowFailure\"])"));
202202
assertThat(exception.getConstraintViolations().size(), is(1));
203203
assertThat(exception.getConstraintViolations().iterator().next().getPropertyPath().toString(), is("io.kestra.core.models.flows.Flow[\"tasks\"]->java.util.ArrayList[0]->io.kestra.plugin.core.debug.Return[\"invalid\"]"));
204204
}

0 commit comments

Comments
 (0)