@PLUGIN@ - /projects/ REST API

This page describes the REST endpoints that are added by the @PLUGIN@ plugin.

Please also take note of the general information on the REST API.

Importer Endpoints

Copy Project

PUT /projects/{project-name}/@PLUGIN@~copy

Copies a project.

Information about the copy target must be provided in the request body as a CopyProjectInput entity.

Caller must be a member of a group that is granted the ‘CopyProject’ capability (provided by this plugin) or the ‘Administrate Server’ capability.

Request

  PUT /projects/myProject/@PLUGIN@~copy HTTP/1.0
  Content-Type: application/json;charset=UTF-8

  {
    "name": "myProjectCopy"
  }

As result a ImportStatisticInfo entity is returned.

Response

  HTTP/1.1 200 OK
  Content-Disposition: attachment
  Content-Type: application/json; charset=UTF-8

  )]}'
  {
    "num\_changes\_created": 5
  }

Resume Copy Project

PUT /projects/{project-name}/@PLUGIN@~copy.resume

Resumes copying to a project from the original copy source.

Caller must be a member of a group that is granted the ‘CopyProject’ capability (provided by this plugin) or the ‘Administrate Server’ capability.

Options may be specified in the request body as a CopyResumeInput entity.

Request

  PUT /projects/myProjectCopy/@PLUGIN@~copy.resume HTTP/1.0

As result a ResumeImportStatisticInfo entity is returned.

Response

  HTTP/1.1 200 OK
  Content-Disposition: attachment
  Content-Type: application/json; charset=UTF-8

  )]}'
  {
    "num\_changes\_created": 1,
    "num\_changes\_updated": 2
  }

Resume Project Import

PUT /projects/{project-name}/@PLUGIN@~import.resume

Resumes importing to a project from the original copy source.

Information about the import resume must be provided in the request body as a ImportResumeInput entity.

Caller must be a member of a group that is granted the ‘ImportProject’ capability (provided by this plugin) or the ‘Administrate Server’ capability.

Request

  PUT /projects/myProjectCopy/@PLUGIN@~import.resume HTTP/1.0
  Content-Type: application/json;charset=UTF-8

  {
    "user": "myUser",
    "pass": "myPassword"
  }

As result a ResumeImportStatisticInfo entity is returned.

Response

  HTTP/1.1 200 OK
  Content-Disposition: attachment
  Content-Type: application/json; charset=UTF-8

  )]}'
  {
    "num\_changes\_created": 1,
    "num\_changes\_updated": 2
  }

Complete Project Import

POST /projects/{project-name}/@PLUGIN@~delete)

Mark a project import as completed.

Once a project import is completed it cannot be resumed any more.

Request

  POST /projects/myProject/@PLUGIN@~delete HTTP/1.0

Response

  HTTP/1.1 204 No Content

JSON Entities

CopyProjectInput

The CopyProjectInput entity contains information about a the copy target.

  • name: The target project name.

CopyResumeInput

The CopyResumeInput entity contains information about an copy resume.

  • force: Whether the resume should be done forcefully. On resume with force changes that have the same last modified timestamp in the source and target project are resumed, otherwise they will be skipped.

SEE ALSO

GERRIT

Part of Gerrit Code Review