Code Monkey home page Code Monkey logo

mantis-maven-plugin's Introduction

mantis-maven-plugin

Build Status

General information

A Maven plugin for Mantis integration.
Based on the Mantis SOAP API (Web Service).
Live test of the web service on the MantisBT site : Test it (WSDL).

Goals

  1. mantis:add-project-version - Create a project's version.
    See method : mc_project_version_add
  2. mantis:display-project-versions - Displays the versions of a project.
    See method : mc_project_get_versions
  3. mantis:display-version - Displays the version of Mantis server.
    See method : mc_version

Help

  1. Maven Plugin Development :

  2. Maven & GitHub :

  3. Eclipse & GitHub :

mantis-maven-plugin's People

Contributors

ca-stefan-cordes avatar ghusta avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

mantis-maven-plugin's Issues

Avoid providing Mantis server's authentication settings directly in the pom.xml but prefer settings.xml

Instead of providing username and password data directly to the pom.xml in the plugin configuration, we can configure the server section of settings.xml.
See http://maven.apache.org/settings.html#Servers

The repositories for download and deployment are defined by the repositories and distributionManagement elements of the POM. However, certain settings such as username and password should not be distributed along with the pom.xml. This type of information should exist on the build server in the settings.xml.

Add a goal mantis:display-project-versions

Display the versions of a project with a Maven goal : mantis:display-project-versions.

See the Mantis SOAP API methods :

  • mc_project_get_versions
  • mc_project_get_released_versions
  • mc_project_get_unreleased_versions

Add scm section to pom.xml

Add scm section to pom.xml

See Maven Tips and Tricks: Using GitHub - Step 9 :

Step 9. Open up the pom.xml file of the git-demo project and add the following scm element right before the closing project element. Make sure to substitute your account name for the instances of “tobrien” in the XML snippet shown below:

 <scm>
    <connection>scm:git:[email protected]:tobrien/git-demo.git</connection>
    <url>scm:git:[email protected]:tobrien/git-demo.git</url>
    <developerConnection>scm:git:[email protected]:tobrien/git-demo.git</developerConnection>
  </scm>

Define a plugin prefix

See Introduction to Plugin Prefix Resolution

Extract :

Specifying a Plugin's Prefix

In order to give users a convenient prefix with which to reference your plugin a prefix must be associated with your plugin when it is built. By default, Maven will make a guess at the plugin-prefix to be used, by removing any instances of "maven" or "plugin" surrounded by dashes in the plugin's artifact ID. The conventional artifact ID formats to use are:

  • maven-${prefix}-plugin - for plugins from the Apache Maven project
  • ${prefix}-maven-plugin - for plugins from other sources

If your plugin's artifactId fits this pattern, Maven will automatically map your plugin to the correct prefix in the metadata stored within your plugin's groupId path on the repository. However, if you want to customize the prefix used to reference your plugin, you can specify the prefix directly through a configuration parameter on the maven-plugin-plugin in your plugin's POM:

    <project>
      ...
      <build>
        ...
        <plugins>
          ...
          <plugin>
            <artifactId>maven-plugin-plugin</artifactId>
            <version>2.3</version>
            <configuration>
              ...
              <goalPrefix>somePrefix</goalPrefix>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </project>

Manage Issue Management in project if defined, and if system = Mantis

If Issue Management is defined in pom.xml, it should be taken into account.
If issueManagement is defined and system = Mantis and url is defined, it is possible to use the url in the goal.
The MavenProject must also be used.

Extract :

This defines the defect tracking system (Bugzilla, TestTrack, ClearQuest, etc) used. Although there is nothing stopping a plugin from using this information for something, its primarily used for generating project documentation.

<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                  http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <issueManagement>
    <system>Bugzilla</system>
    <url>http://127.0.0.1/bugzilla/</url>
  </issueManagement>
  ...
</project>

See also :
Example with Redmine : AbstractRedmineMojo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.