pulumi-gitlab
A Pulumi package for creating and managing GitLab resources.
What it is and what it does
pulumi-gitlab is a Pulumi resource provider that bridges Pulumi's infrastructure-as-code framework with GitLab's API, allowing you to define and manage GitLab resources programmatically. Instead of clicking through the GitLab UI or writing shell scripts, you write Python (or other Pulumi-supported languages) to declare GitLab projects, groups, users, CI/CD pipelines, and other resources as part of your infrastructure definition.
The package wraps GitLab's REST API and exposes it through Pulumi's strongly-typed resource model. It requires the Pulumi CLI and a GitLab personal access token for authentication, and supports both GitLab.com and self-hosted GitLab instances (CE and Enterprise) via optional baseUrl and certificate configuration. It's maintained actively and has low installation friction—just a pip install and four lightweight runtime dependencies.
Use it for:
- Automate GitLab project and group creation as part of a multi-cloud infrastructure deployment.
- Manage GitLab CI/CD pipeline configuration and runner registration alongside application infrastructure.
- Provision GitLab users and access controls in bulk for new teams or organizations.
- Version-control your GitLab configuration (projects, webhooks, variables) in the same repository as your infrastructure code.
- Destroy and recreate GitLab resources programmatically during testing or ephemeral environment teardown.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Pulumi provider for GitLab that lets you define and manage GitLab resources (projects, users, groups, CI/CD pipelines, etc.) as code using Pulumi's infrastructure-as-code framework.
Yes, if you use Pulumi for infrastructure-as-code and need to manage GitLab resources alongside your cloud infrastructure. The package is actively maintained, has no known vulnerabilities, low install friction, and permissive licensing. Install only if you're already committed to Pulumi; it's not a standalone GitLab client.
Install
pulumi-gitlab on PyPI
pip
pip install pulumi-gitlabuv
uv add pulumi-gitlabpoetry
poetry add pulumi-gitlabInstalling pulumi-gitlab
Before you install
Low friction installation with a pure Python wheel. Depends on pulumi, parver, semver, and typing-extensions—all standard, lightweight libraries. Repository is active with a recent commit on 2026-08-14 and no archived status, suggesting ongoing maintenance.
License in practice
Licensed under Apache-2.0 (permissive), so you can use, modify, and distribute this package freely in commercial and private projects without copyleft obligations.
Quickstart
pip install pulumi_gitlab
import pulumi
import pulumi_gitlab as gitlab
project = gitlab.Project('my-project', name_prefix='test')
Requires Pulumi CLI to be installed first and a GitLab personal access token (via GITLAB_TOKEN environment variable or configuration).
Verify before relying
- Exact count of GitLab resource types supported by this provider version.
- Whether self-hosted GitLab instances are fully supported or have known limitations.
- Performance characteristics when managing large numbers of GitLab resources.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — parver, pulumi, semver, typing-extensions |
| Maintenance | actively maintained — 22 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 122,544/month — #11,946 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pulumi_gitlab-10.1.1-py3-none-any.whl
Keywords: pulumi, gitlab
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
pulumi-dockerPulumi provider for managing Docker resources…
permissive · top 5,000 on PyPI
pulumi-pagerdutyA Pulumi resource provider that lets you…
permissive · top 15,000 on PyPI
pulumi-snowflakeA Pulumi resource provider that lets you…
permissive · top 15,000 on PyPI
pulumi-tlsPulumi resource provider for creating and…
permissive · top 5,000 on PyPI
python-gitlabPython wrapper for GitLab's REST and GraphQL…
copyleft · top 5,000 on PyPI
pulumi-githubPulumi provider for GitHub that lets you define…
permissive · top 15,000 on PyPI
pulumi-gcpPulumi resource provider for Google Cloud…
permissive · top 5,000 on PyPI
pulumi-azureadPulumi provider for Azure Active Directory that…
permissive · top 15,000 on PyPI
pulumi-cloudflarePulumi provider for Cloudflare that lets you…
permissive · top 15,000 on PyPI
pulumi-awsPulumi AWS provider for Python that lets you…
permissive · top 5,000 on PyPI