Add a Maven Archetype for creating new Trino plugins#12929
Add a Maven Archetype for creating new Trino plugins#12929nineinchnick wants to merge 2 commits intotrinodb:masterfrom
Conversation
|
@martint PTAL and note I added another plugin example that's not using the |
plugin/trino-example-plugin/src/main/java/com/example/ExampleConnector.java
Outdated
Show resolved
Hide resolved
27f9fc5 to
d854a76
Compare
d854a76 to
395ace5
Compare
395ace5 to
c2c0d5e
Compare
|
@martint PTAL. I added a fixup commit to show what it takes to update this to the latest version. Your idea with a regular project worked great, there was one deprecated arg removed and I was able to fix that easily. |
c2c0d5e to
630945b
Compare
|
I like this approach, since the plugin is a normal plugin module that gets built and tested as usual. Can you split the commits so that the example plugin is added first? That will make it easier to review and see the archtype bits. |
cb237f7 to
5eb4fd2
Compare
5eb4fd2 to
7d2ca50
Compare
plugin/trino-example-plugin/src/main/java/com/example/ExampleConnectorSplit.java
Outdated
Show resolved
Hide resolved
plugin/trino-example-plugin/src/test/java/com/example/ExampleQueryRunner.java
Outdated
Show resolved
Hide resolved
plugin/trino-example-plugin/src/test/java/com/example/ExampleQueryRunner.java
Outdated
Show resolved
Hide resolved
plugin/trino-example-plugin/src/main/java/com/example/ExampleTableHandle.java
Outdated
Show resolved
Hide resolved
plugin/trino-example-plugin/src/main/java/com/example/ExampleConfig.java
Outdated
Show resolved
Hide resolved
1a96b0a to
71d28d2
Compare
71d28d2 to
e7a401c
Compare
e7a401c to
c3ae55f
Compare
9bd4c2e to
4e089bc
Compare
7198d37 to
89e52c3
Compare
|
@martint I mentioned this PR when we last talked in Warsaw, PTAL. |
c43d3cb to
daa80d5
Compare
1af2e97 to
7f7ceab
Compare
|
I'm having huge issues with running this in offline mode. Looks like I give up. We either have to:
|
72c4c03 to
0fd0111
Compare
|
@electrum PTAL again, I just rebased it |
0fd0111 to
9c2efbd
Compare
|
Looks like there's no interest in this anymore. |
Description
Add a Maven Archetype to make it easier to create new Trino plugins. It creates a new plugin with a connector that has a single table with 3 columns, and it returns a single row with constant values. It includes integration tests that actually create a new project and run its (integration) tests.
The archetype is created during the build from an actual plugin. There's a new plugin that is not under the Trino project root, assuming new plugins created using this archetype would not be submitted to the Trino project.
A previous attempt is in #12605
Related issues, pull requests, and links
Documentation
( ) No documentation is needed.
(x) Sufficient documentation is included in this PR.
( ) Documentation PR is available with #prnumber.
( ) Documentation issue #issuenumber is filed, and can be handled later.
Release notes
(x) No release notes entries required.
( ) Release notes entries required with the following suggested text: