Exist Maestro Frequently Asked Questions

How do I change Maestro's port number?

To change Maestro's port from Maestro's user interface:

  1. From a browser, navigate to: http://localhost:8080/index.action and login as administrator. This will bring up the Maestro Project Server home page.
  2. From there click the Global Settings link on the left side of the page, under Configure.
  3. Under the Ports section on the screen you'll find the HTTP field. You can set the HTTP port here. HTTP Port: To change the port number from the default of 8080, enter a valid and unused port number here. Valid port numbers go up to 65535.
  4. Use the Servers section on the screen, click the Use specified URL button and enter in the new URL, for example, http://localhost:8090. You must also update the BASE URL or many pages will no longer be available.
  5. Click Save and Restart database button. You may have to scroll right in your browser to see the Save and Restart button.

    Note:You will be prompted to restart Maestro. Because of the migration to Jetty in Maestro 2.2.0, Maestro needs to be manually restarted in order for the change made in the port to be reflected. You need to stop Maestro from the command-line and start it again. Maestro should now be accessible using the new port.

To manually change the port number for Maestro:

  1. Run Maestro once so the necessary files are unpacked from the jar files.
  2. Stop the Maestro Project Server if it is running.
  3. Change the value of <Arg> in [maestro_home]/projectserver/conf/jetty.xml file:
        <Call id="projectServerPort" class="java.lang.System" name="setProperty">
          <Arg>jetty.port</Arg>
          <Arg>8080</Arg>
        </Call>
  4. Edit the [maestro_home]/projectserver/conf/maestro.xml file: <baseUrl>http://localhost:8080</baseUrl>

    Change 8080 to an available port number. Valid port numbers go up to 65535. Be sure to select a port number that is not in use on your system.

  5. Save and close the jetty.xml and maestro.xml files.
  6. Start Maestro.

In Continuum, how do I specify a different userID and password for SVN access?

To specify the SCM credentials using Maestro's user interface:

The way to tell Continuum to only use the userid and password for the original POM retrieval is to check Use SCM Credential Cache, if available checkbox on the Add Maven 2.0+ Project screen. After checking that, Continuum will use cached credentials for SVN commands.

This feature is available because the user who added the project may not be the same user that Maestro is running under. If SVN passwords change frequently and you don't use the cached credentials feature then each project must be edited to change the password. Meanwhile, if Continuum executes a scheduled build using the old password, the SVN update will fail, and the user's SVN account may be locked depending on organizational policies.

By default, Continuum uses the userID and password from the original POM retrieval, for SVN access. To specify a different SVN userID and password, edit the project and delete the userID. Continuum will then rely on the cached SVN credentials.

Why does the admin account automatically have the Global Repository Manager role in Build Management (Continuum), but not in Archiva?

The Artifact Repository Manager (based on Archiva) and Build Management (based on Continuum) are separate projects at Apache and consequently have slightly different designs. Therefore, the effective roles granted to the admin account in Continuum are different than in Archiva. In Archiva, the admin account has to be explicitly granted the Global Repository Manager role.

What do you mean by artifact repository? Can you explain this in reference to Ant?

Maven is different from Ant in the fact we keep all of our artifacts in a location similar to a library. This library is accessible to all users and is outside of the source control. When a user needs an artifact they can simply check it out from the library. When a user creates an artifact they can check it in. To help keep maintain the repositories Maestro has an Artifact Repository Manager.

The Artifact Repository Manager (also called Archiva) is a tool that helps organizations manage their Maven- or Maestro-based repositories. The Artifact Repository Manager enables Maestro users to setup, configure, administer, and manage multiple, shared/corporate artifact repositories through a single, unified, Web-based UI. It provides tools to search and browse for repository content, including, but not limited to artifacts (jars, wars, ears, etc.) and POMs.

There are multiple managed repositories that are stored as part of the repository manager. The repository manager gives you a single view over all of those resources. Repositories to which you proxy or sync are pulled down into a specific managed repository, so things are no longer split by their original source location.

There are three levels of repository for a user:

  1. Local repository on the developer machine. This is not related to or managed by Maestro at all. An example is [user_home]/.m2/repository.
  2. Managed (or corporate/team/shared) repositories. These are referenced as the "remote repositories" by the developer projects. These managed repositories are on the same file system/disk as the repository manager.

    An example is the repository of the project server that is installed when you install the Maestro Project Server distribution that is located in: [maestro_home]/projectserver/data/repository.

  3. The truly remote repositories such as ibiblio, repo.mergere.com, etc. The Artifact Repository manager will connect to these to obtain artifacts requested by the Developer Client.

Maestro's Artifact Repository Manager uses indexes to speed up searching in the managed repositories.

How do you configure the roll mode of Maestro log file?

To configure the roll mode of Maestro log file (maestro.log), [maestro_home]/projectserver/conf/wrapper.conf should be modified with the configurations similar to the following.

Roll modes DATE and SIZE cannot be used together. The wrapper.logfile.maxsize configuration is ignored if the wrapper.logfile.rollmode does not have the SIZE value. SIZE_OR_WRAPPER, or SIZE_OR_JVM can also be used in place of SIZE.

Roll by Size

  wrapper.logfile=%PLEXUS_BASE%/logs/maestro.log
  wrapper.logfile.maxsize=1000mb
  wrapper.logfile.rollmode=SIZE

The suffix k (kb) or m (mb) are used for the maxsize value.

Roll Daily

  wrapper.logfile=%PLEXUS_BASE%/logs/maestro.YYYYMMDD.log
  wrapper.logfile.rollmode=DATE

The filename should contain YYYYMMDD in it. This is the format for the timestamp of the log file which will be replaced with the appropriate date.