No description, website, or topics provided.
Clone or download
lvzh90 MULE-15900: Jenkins Migration Phase 1: Migrate Mule Extensions SDK Jo…
…bs (#43)

* MULE-15900: Jenkins Migration Phase 1: Migrate Mule Extensions SDK Jobs
Latest commit c09a724 Nov 16, 2018

Mule Extensions Archetype

An archetype is defined as an original pattern or model from which all other things of the same kind are made.

This particular Archetype defines the structure of a Mule Basic Extension trying to provide a system that provides a consistent means of generating Extension projects.

Generate Project

There is a maven plugin with steps and descriptions for the required fields in order to create a new Extension Project

By running the following command you will get prompt for values.

mvn mule-extensions-archetype:generate

Old School Archetype

You can also create a new Extension project by invoking the archetype directly with the following properties.

mvn archetype:generate -DarchetypeGroupId=org.mule.extensions

This is more tedious and we worked to make your life easier :), use the maven plugin.

Smart Connector Archetype

Similarly to the previous example, a smart connector can be done by using the following archetype

mvn archetype:generate                               \
  -DarchetypeGroupId=org.mule.extensions             \

If you want to disable the interactive mode, just use the following

mvn archetype:generate                                  \
  -DarchetypeGroupId=org.mule.extensions                \
  -DarchetypeArtifactId=mule-extensions-xml-archetype   \
  -DarchetypeVersion=1.2.0-SNAPSHOT                     \            \
  -DartifactId=example-smart-connector                  \            \
  -Dversion=1.0.0-SNAPSHOT                              \

The generated structure after the previous sample will be:

├── pom.xml
└── src
    ├── main
    │   └── resources
    │       └── org
    │           └── mule
    │               └── smart
    │                   └── connector
    │                       └── example
    │                           └── module-Hello.xml
    └── test
        └── munit
            └── assertion-munit-test.xml

Where module-Hello.xml will contain the XML of the Smart Connector and assertion-munit-test.xml will contain the assertions to validate the operations of the Smart Connector