GitLab Extended icon

GitLab Extended

Extended GitLab node

Overview

The node "GitLab Extended" provides extended integration with GitLab, allowing users to manage various GitLab resources such as branches, pipelines, tags, releases, groups, projects, issues, merge requests, files, and raw API calls. Specifically, the Pipeline - Retry operation enables retrying a previously executed pipeline in a GitLab project.

This operation is useful when a pipeline run has failed or needs to be re-executed without creating a new pipeline from scratch. For example, if a CI/CD pipeline fails due to a transient error, you can use this node to retry that pipeline automatically as part of your workflow automation.

Practical scenarios include:

  • Automatically retrying failed pipelines after fixing an issue.
  • Triggering retries on pipelines for specific branches or tags.
  • Integrating pipeline retry logic into larger DevOps workflows.

Properties

Name Meaning
Authentication Choose between using saved credentials ("Credential") or providing custom connection details ("Custom").
GitLab Server Base URL of your GitLab instance (e.g., https://gitlab.com). Used only if "Custom" authentication is selected.
Access Token Personal access token with API permissions for GitLab. Used only if "Custom" authentication is selected.
Project Owner Namespace or owner of the project. Ignored if "Project ID" is set. Used only if "Custom" authentication is selected.
Project Name Project slug or name. Ignored if "Project ID" is set. Used only if "Custom" authentication is selected.
Project ID Numeric project ID. Takes precedence over owner and name if provided. Used only if "Custom" authentication is selected.
Pipeline ID Numeric ID of the pipeline to retry. Must be a positive integer. Required.

Output

The node outputs JSON data representing the response from the GitLab API after retrying the specified pipeline. This typically includes details about the retried pipeline such as its ID, status, ref, user who triggered it, and timestamps.

The output is structured as an array of JSON objects, each corresponding to one input item processed. Each object contains the full API response for the retried pipeline.

No binary data output is produced by this operation.

Dependencies

  • Requires access to a GitLab instance, either the public GitLab server (https://gitlab.com) or a self-hosted GitLab server.
  • Requires an API access token with sufficient permissions to retry pipelines in the target project.
  • The node supports two authentication modes: using stored credentials or custom parameters (server URL, access token, project identification).
  • No additional external dependencies beyond standard HTTP API access to GitLab.

Troubleshooting

  • Invalid Pipeline ID: If the pipeline ID is missing, zero, or negative, the node will throw an error. Ensure the pipeline ID is a positive number.
  • Authentication Errors: Using incorrect or expired access tokens will cause authorization failures. Verify the token's validity and permissions.
  • Project Identification Issues: When using custom authentication, ensure that either the numeric project ID is provided or both project owner and project name are correctly set. Otherwise, the API request may fail.
  • API Rate Limits: Frequent retries or multiple pipeline operations might hit GitLab API rate limits. Consider adding delays or handling rate limit errors gracefully.
  • Network Connectivity: Ensure the node can reach the GitLab server URL specified, especially for self-hosted instances behind firewalls.

Common error messages:

  • "Unknown resource: pipeline" — indicates the resource parameter was not set correctly.
  • "tagName must not be empty" — unrelated to pipeline retry but shows validation pattern used; similar validation applies to required fields like pipelineId.
  • HTTP 401 Unauthorized — check access token and permissions.
  • HTTP 404 Not Found — verify project and pipeline IDs exist.

Links and References


This summary focuses on the Pipeline resource with the Retry operation as requested, based on static analysis of the provided source code and property definitions.

Discussion