├── .gitignore
├── README.md
└── marketplace.xsd
/.gitignore:
--------------------------------------------------------------------------------
1 | .project
2 | .idea/
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | marketplace-metadata
2 | ====================
3 |
4 | This project hosts the metadata related to plugins in Pentaho's Marketplace, both BA Server and Kettle (Pentaho Data Integration).
5 |
6 | You can learn more about Pentaho's BA Server Marketplace here:
7 | http://github.com/pentaho/marketplace
8 |
9 | You can learn more about the Kettle Marketplace here:
10 | https://pentaho-community.atlassian.net/wiki/display/EAI/Marketplace
11 |
12 | How to register your plugin
13 | ---------------------------
14 | * Step 1: Clone this repository
15 | * Step 2: Update the marketplace.xml file with your market-entry
16 | * Step 3: Submit a pull request to have your plugin reviewed for inclusion in both the marketplace plugins and [website](http://www.pentaho.com/marketplace/)!
17 |
18 | XML Plugin Format
19 | -----------------
20 | The Marketplace XML is shared between Pentaho's BA Server and Kettle, but at
21 | this time there are some feature differences. Each element below specifies whether it's available in the two marketplaces.
22 |
23 | ```xml
24 |
25 | MY_ID
26 | Platform
31 | My Plugin
32 |
38 |
39 | SubCategory
40 |
41 | MainCategory
42 |
43 |
44 |
45 | My Description
46 | http://me.com/mydoc.html
47 | Me
48 | http://me.com
49 | http://me.com/logo.png
50 | pluginA, pluginB, pluginC
51 |
52 |
myimage.png
53 | mysmallimg.png
54 | Install Notes
55 | http://forums.me.com
56 | http://jira.me.com
57 | Apache License 2.0
58 | For more details see:
59 | http://www.apache.org/licenses/LICENSE-2.0.html
60 | PROFESSIONALY_SUPPORTED
66 | Supported by Me.
67 | Me
68 | http://me.com/support
69 |
70 |
72 |
73 |
74 | Stable
75 | 1.0
76 | 1.0
77 | http://me.com/plugin.zip
78 | http://me.com/plugin.zip
79 | My Version Description
80 | Changes
81 | 12
82 |
83 |
85 |
86 | 3.8
87 | 4.8
88 |
89 | Community
90 | 3
91 |
92 |
93 |
94 |
95 | screenshot_1.png
96 | screenshot_2.png
97 |
98 |
99 | ```
100 |
101 | What is the review process for the plugin?
102 | ------------------------------------------
103 | At this time, the review process is informal, and can be done by any of the core
104 | committers of the marketplace-metadata project. The core committers will review
105 | the plugin submission, and if accepted, will accept the pull request.
106 |
107 |
108 | Version.xml: What is it and why should I use it?
109 | ------------------------------------------
110 |
111 | version.xml is a file used by marketplace to determine which version of your plugin your user has installed.
112 | This will allow the marketplace to tell the user when a new version is available and he can update your plugin.
113 | The version.xml file should be located in the plugin root folder (where plugin.xml is) and it must follow
114 | the following format:
115 |
116 |
117 |
118 | * <branch> - This should be the branch from where this build originated (stable or trunk, but you can use
119 | whatever you want - GA, RC, etc)
120 | * <versionNumber> - The plugin version. Can be a complex string
121 | * <buildId> - This is used to differentiate between two versions who share the same version number. For instance,
122 | snapshot builds that usually have the same version (TRUNK-SNAPSHOT) can still be distinguished if the buildId is
123 | different.
124 |
125 | ###Development Stage
126 |
127 | The development stage is a project maturity classification with a two-lane approach.
128 |
129 | * __Customer Lane__: Always overseen by PM and Engineering, projects in the Customer Lane can either start as customer-sponsored initiatives or as projects developed in the Community Lane that create value for Pentaho subscription customers. Pentaho will provide official support based on current support policies to projects on the Customer Lane.
130 | 1. Development Phase: Start up phase of an internal project. Usually a Labs experiment.
131 | 2. Snapshot Release: Unstable and unsupported branch, not recommended for production use.
132 | 3. Limited Release: Assistence given by Services Development with no contractual support for production environments.
133 | 4. Production Release: Production release with PM assigned, fully supported as part of the Pentaho release cycle.
134 | * __Community Lane__: The Community Lane will be used for projects created by Pentaho Consulting or Engineering Services, in which case they will be managed so they do not conflict with the long-term architecture and functionality planned in the Pentaho product roadmap.
135 | 1. Development Phase: Start up phase of an internal project. Usually a Labs experiment.
136 | 2. Snapshot Release: Unstable and unsupported branch, not recommended for production use.
137 | 3. Stable Release: Adoption is ramping up and product could be used in production environments.
138 | 4. Mature Release: Indicates a successfully adopted project in a mature state.
139 |
140 | How do I develop a plugin?
141 | --------------------------
142 | Link to BA Server Plugin Documentation:
143 | https://pentaho-community.atlassian.net/wiki/display/ServerDoc2x/Developing+Plugins
144 |
145 | Link to the Pentaho InfoCenter SDK "Extending Pentaho Data Integration"
146 | http://infocenter.pentaho.com/help/topic/pdi_embed_extend_guide/concept_extending_PDI.html
147 |
148 | How do I test a marketplace entry ?
149 | -----------------------------------
150 | Create a file marketplaces.xml in your .kettle folder
151 | The content of this file will be :
152 |
153 |
154 |
155 | Pentaho Data Integration Marketplace
156 | {local path to your marketplace.xml file}
157 |
158 |
159 |
160 |
161 |
162 | Example :
163 |
164 |
165 |
166 | Pentaho Data Integration Marketplace
167 | /home/matt/git/pentaho/marketplace-metadata/marketplace.xml
168 |
169 |
170 |
171 |
--------------------------------------------------------------------------------
/marketplace.xsd:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | This schema defines the format for the Pentaho Marketplace Metadata.
7 | Pentaho Marketplace Metadata is maintained here:
8 |
9 | https://github.com/pentaho/marketplace-metadata/raw/master/marketplace.xml
10 |
11 | Community contributors can add their contribution to the marktet place by forking
12 |
13 | https://github.com/pentaho/marketplace-metadata
14 |
15 | They can then modify marketplace.xml to add or update market_entry
16 | elements that correspond to their contribution.
17 |
18 | The contribution can then be submitted to the marketplace by sending a pull request to
19 | pentaho's marketplace repository. Once the pull request is merged, pentaho users can
20 | review, obtain, install, upgrade and uninstall the contribution via the marketplace ui.
21 |
22 | The market place does not only allow users to easily obtain third party contributions;
23 | third parties can also use the marketplace to offer support for their contribution.
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 | The market element is the root element of marketplace.xml. It is simply
32 | a container for all market_place elements.
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 | Each market_entry element represents a piece of functionality offered by a third party.
43 | In many cases, a market entry is a single plugin.
44 | However, it can also consist of a collection of plugins.
45 | Currently, the marketplace provides items for the biserver and
46 | pentaho data integration.
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 | A string that uniquely identifies each marketplace entry. (mandatory)
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 | A human-readable name to identify this marketplace entry. (mandatory)
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 | A string that identifies what type of marketplace entry this is. (mandatory)
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 | At the moment a maximum of 2 levels of nesting are used for categorization.
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 | A uri for an image that illustrates this marketplace entry. (optional)
90 | This image may appear in the marketplace ui.
91 |
92 |
93 |
94 |
95 |
96 |
97 | A uri for an small image that illustrates marketplace entry plugin. (optional)
98 | This image may appear in the marketplace ui.
99 |
100 |
101 |
102 |
103 |
104 |
105 | A uri for documentation that describes this. (optional)
106 | The marketplace ui may use this to produce a hyperlink to provide access to the documentation.
107 |
108 |
109 |
110 |
111 |
112 |
113 | A description of this plugin. (optional)
114 | The marketplace ui uses this text to let the user know what this marketplace entry is about..
115 |
116 |
117 |
118 |
119 |
120 |
121 | A string that identifies the author of this marketplace entry. (optional)
122 | This could be the name of a person, or a company name.
123 |
124 |
125 |
126 |
127 |
128 |
129 | A uri that links to a document with more information about this author. (optional)
130 | This could be a blog home page, a user profile on some social medium like github,
131 | twitter or facebook, or a company homepage.
132 | The marketplace ui may produce a link to this page.
133 |
134 |
135 |
136 |
137 |
138 |
139 | A uri that links to a logo to describe this author. (optional)
140 | For example, if the author is a company, this would link to an image of the company logo.
141 | The marketplace ui may display this logo together with the market place entry.
142 |
143 |
144 |
145 |
146 |
147 |
148 | If applicable, any extra info required to install this plugin . (optional)
149 |
150 |
151 |
152 |
153 |
154 |
155 | A comma separated list of plugin ids which are required to use this plugin . (optional)
156 | For example, the community dashboard editor (CDE) depends on both
157 | the community dashboard framework (CDF) and community data access (CDA).
158 | Therefore CDE lists "CDF, CDA" as dependencies.
159 |
160 |
161 |
162 |
163 |
164 |
165 | A string that identifies the license that applies to this marketplace entry. (optional)
166 | The marketplace may use this to produce a hyperlink to the license.
167 |
168 | If you're contribution is distributed under a known open source license, then
169 | please consider using the list of OSI approved licenses for the exact spelling
170 | of the license name or abbreviation:
171 |
172 | http://opensource.org/licenses/alphabetical
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 | Typically not used. If you decide to use it please consider using the "license" element
181 | for the abbreviation and the license_name field for the full name.
182 | A list of OSI approved licenses is here:
183 |
184 | http://opensource.org/licenses/alphabetical
185 |
186 |
187 |
188 |
189 |
190 |
191 | Full license text. You can use this if your license is a custom license. (optional)
192 |
193 |
194 |
195 |
196 |
197 |
198 | A code that indicates the level of support offered for this contribution. (optional)
199 | Here's a list of suggested codes
200 | * COMMUNITY_SUPPORTED
201 | * PROFESSIONALLY_SUPPORTED
202 |
203 |
204 |
205 |
206 |
207 |
208 | A short human-readable message to further clarify the support level, or more detailed support options if applicable.
209 |
210 |
211 |
212 |
213 |
214 |
215 | If applicable, the name of the organization providing the support.
216 |
217 |
218 |
219 |
220 |
221 |
222 | A uri that provides access to the support channel.
223 |
224 |
225 |
226 |
227 |
228 |
229 | A list of available versions.
230 |
231 |
232 |
233 |
234 |
235 |
236 | Use this to advertise the url of a particular forum or community support site for this marketplace entry.
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 | A list of screenshots to further illustrate this marketplace entry.
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 | Id and type must be unique throughout the marketplace.
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 | Name and type should be unique throughout the marketplace.
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 | This market entry is a bi platform plugin, such as a content generator plugin.
290 |
291 |
292 |
293 |
294 |
295 |
296 | This market entry is a database connection plugin for pentaho data integration.
297 |
298 |
299 |
300 |
301 |
302 |
303 | This market entry is a transformation step plugin for pentaho data integration.
304 |
305 |
306 |
307 |
308 |
309 |
310 | The market entry is a job entry plugin for pentaho data integration.
311 |
312 |
313 |
314 |
315 |
316 |
317 | Mixed type. If the market entry could comprise a number of plugins.
318 |
319 |
320 |
321 |
322 |
323 |
324 | This market entry is a row partitioner plugin for pentaho data integration.
325 |
326 |
327 |
328 |
329 |
330 |
331 | This market entry is a big data shim - an abstraction of a typical hadoop distro - for use in the pentaho big data plugin.
332 |
333 |
334 |
335 |
336 |
337 |
338 | This market entry is a Spoon plugin, possibly a perspective or something that adds to the PDI UI.
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 | A descriptor of a particular version of a plugin.
355 |
356 |
357 |
358 |
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 |
367 |
368 |
369 |
370 |
371 |
372 |
373 |
374 |
375 |
376 | The stage of development the version of the market entry is at.
377 |
378 |
379 |
380 |
381 |
382 |
383 |
384 |
385 |
386 |
387 |
388 |
389 |
390 |
391 |
392 |
393 |
394 |
395 |
396 |
397 |
398 |
399 |
400 |
401 |
402 |
403 |
404 |
405 |
406 |
407 |
408 | The category the market entry is belongs to.
409 | A category can have a parent category.
410 |
411 |
412 |
413 |
414 |
415 |
416 |
417 |
418 |
419 |
420 |
421 |
422 | A version data must have at least one character.
423 | The allowed characters are letters, numbers, "_", "-", ".", and whitespaces.
424 | The first character cannot be a whitespace.
425 |
426 |
427 |
428 |
429 |
430 |
431 |
432 |
433 |
434 |
435 |
436 |
437 | A market entry id must have at least one character and start with a letter.
438 | The remaining character must either be a letter, number, "_", "-" or ".".
439 |
440 |
441 |
442 |
443 |
444 |
445 |
446 |
447 |
448 |
--------------------------------------------------------------------------------