GitLab API

GitlabTool

Actions1000

Overview

This node operation allows importing a remote project into GitLab by sending a POST request to the GitLab API endpoint `/api/v4/projects/remote-import`. It is useful for automating the import of projects from external sources into a GitLab instance, supporting various project configuration options during import.

Use Case Examples

  1. Automatically import a project from a remote URL into a specific namespace in GitLab.
  2. Overwrite an existing project with the same name during import.
  3. Customize project settings such as visibility, CI/CD configurations, and access levels during the import process.

Properties

Name Meaning
Skip Authentication If set to true, the node skips using authentication for the API request.
baseUrl The base URL of the GitLab instance to which the import request is sent.
Method The HTTP method used for the request, default is POST for this operation.
Parameter Schema Defines the parameters accepted in the form data for the import request, including required fields like `url` and `path`, and optional fields for project configuration such as `name`, `namespace`, `overwrite`, and many override parameters to customize project settings during import.

Output

JSON

  • id - The unique identifier of the imported project.
  • name - The name of the imported project.
  • path - The path of the imported project.
  • namespace - The namespace into which the project is imported.
  • import_status - The status of the import process.
  • web_url - The web URL of the imported project.

Dependencies

  • GitLab API authentication token or API key credential

Troubleshooting

  • Ensure the provided URL for the remote project is accessible and correct to avoid import failures.
  • Verify that the namespace specified exists and the authenticated user has permission to import projects into it.
  • Check that the authentication credentials are valid and have sufficient permissions to perform project imports.
  • If overwriting an existing project, confirm that the overwrite flag is set to true to avoid conflicts.

Links

Discussion