Configure Perforce repository
| Chapter 3. Configure repositories |

## Configure Perforce repository

You should have Perforce client installed on the build machine. Contact http://www.perforce.com for licensing information. Here is the list of properties for this repository:

Perforce port

  The Perforce port in the format of <port>, or <servername>:<port>, where <servername> and <port> will be replaced by the actual Perforce server name and the port number.

User name

  User name to access the above Perforce server. This user should have the rights to create and edit client specifications and to checkout and label code.

Password

  Password for the above user. Can be blank, if your Perforce server does not use password based security.

Line end

  Set line ending character(s) for client text files. The following values are possible:

  local: use mode native to the client
  unix: UNIX style
  mac: Macintosh style
  win: Windows style
  share: writes UNIX style but reads UNIX, Mac or Windows style

  This property is optional. If not specified, the value will default to "local".

Path to p4 executable

  Specify path to your p4 executable file, for example: /usr/local/bin/p4. It should be specified here, if it does not exist in the system path.

Quiet period

  Number of seconds current repository should be quiet (without checkins) before QuickBuild decides to check out the code from this repository for a build. This is used to avoid checking out code in the middle of some other checkins. This property is optional. When set as 0, quiet period will not be used before checking out code to build.

Login mapping

  Choose login mapping for this repository. Login mapping is used to map repository login to QuickBuild user. It can be configured at "login mappings" tab of the configuration.

Modules

  Here are list of properties you should configure in order to define a module.

  Depot path

    Specify the Perforce depot side path, such as //depot/testperforce/...

  Label

    Specify the label for the above depot path. When empty, the latest version (head) of the above depot path will be retrieved.

  Client side path

    Specify the client side path, such as /testperforce/...

    | Note
    You should not put client name in this path. Before check out, QuickBuild will automatically generate a proper client name before this path, to form a client path like //<generated client name>/testperforce/...

    | Note
    To exclude files or directories, create a separate module for each exclusion and precede the Depot path property with a minus (-) sign, for example:
        Depot path:  -//depot/module1/...
        Client path: /module1/...

  At lease one module should be configured for Perforce repository. QuickBuild will construct client specification from module information configured here, and check out codes from Perforce repository accordingly. The user specified in Perforce connection information at the project level should have enough access rights to create and edit Perforce client specification.

Configure File system repository |  | Configure Subversion repository