Workspace (client): Workspace or Clientspec (oldskewl) of the project. If the workspace specified does not exist, Hudson will create it. Parameter substitutions can be used, such as ${JOB_NAME} and any other parameters defined for the job.

Important Note: Hudson will likely change the root and host of this workspace to fit Hudson's installation. That means Hudson also automatically creates a workspace for each slave on every project. The hash code of the slave name is appended to the end of the given workspace name to ensure that all workspaces are unique and don't collide across machines.

Important Note: Each job needs to use it's own unique workspace. Perforce keeps track of what files are synced into each workspace, so reusing a workspace could result in files not being properly synced down before a build runs. Additionally, if a workspace is used in multiple jobs, the possibility exists that hudson may change the workspace spec while another job that uses it is syncing or polling. This will result in odd behavior that's difficult to debug. Only reuse a client workspace if you absolutely know what you are doing!

Important Note: When Hudson creates a workspace, the workspace will contain only one view. This view maps the Depot Path to the root of the Hudson job's workspace directory. If Hudson uses an existing workspace that has only one view, it automatically changes the view in a similar way. This behavior can be disabled by the option, "Let Hudson Manage Workspace View. This will allow you to retrieve more than one depot into the workspace of a given job by providing your own list of views.

Important Note: If the client doesn't exist, it is created, but the perforce plugin will not delete the client if it's no longer being used. Likewise, the plugin will not delete the workspace if the client name is changed. In this instance, you may need to wipe the workspace after changing the client name.