Viewing docs for GitLab v7.0.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
Viewing docs for GitLab v7.0.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
The gitlab.ProjectVariable data source allows to retrieve details about a project-level CI/CD variable.
Upstream API: GitLab REST API docs
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as gitlab from "@pulumi/gitlab";
const foo = gitlab.getProjectVariable({
project: "my/example/project",
key: "foo",
});
// Using an environment scope
const bar = gitlab.getProjectVariable({
project: "my/example/project",
key: "bar",
environmentScope: "staging/*",
});
import pulumi
import pulumi_gitlab as gitlab
foo = gitlab.get_project_variable(project="my/example/project",
key="foo")
# Using an environment scope
bar = gitlab.get_project_variable(project="my/example/project",
key="bar",
environment_scope="staging/*")
package main
import (
"github.com/pulumi/pulumi-gitlab/sdk/v7/go/gitlab"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := gitlab.LookupProjectVariable(ctx, &gitlab.LookupProjectVariableArgs{
Project: "my/example/project",
Key: "foo",
}, nil)
if err != nil {
return err
}
// Using an environment scope
_, err = gitlab.LookupProjectVariable(ctx, &gitlab.LookupProjectVariableArgs{
Project: "my/example/project",
Key: "bar",
EnvironmentScope: pulumi.StringRef("staging/*"),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using GitLab = Pulumi.GitLab;
return await Deployment.RunAsync(() =>
{
var foo = GitLab.GetProjectVariable.Invoke(new()
{
Project = "my/example/project",
Key = "foo",
});
// Using an environment scope
var bar = GitLab.GetProjectVariable.Invoke(new()
{
Project = "my/example/project",
Key = "bar",
EnvironmentScope = "staging/*",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gitlab.GitlabFunctions;
import com.pulumi.gitlab.inputs.GetProjectVariableArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var foo = GitlabFunctions.getProjectVariable(GetProjectVariableArgs.builder()
.project("my/example/project")
.key("foo")
.build());
// Using an environment scope
final var bar = GitlabFunctions.getProjectVariable(GetProjectVariableArgs.builder()
.project("my/example/project")
.key("bar")
.environmentScope("staging/*")
.build());
}
}
variables:
foo:
fn::invoke:
Function: gitlab:getProjectVariable
Arguments:
project: my/example/project
key: foo
# Using an environment scope
bar:
fn::invoke:
Function: gitlab:getProjectVariable
Arguments:
project: my/example/project
key: bar
environmentScope: staging/*
Using getProjectVariable
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getProjectVariable(args: GetProjectVariableArgs, opts?: InvokeOptions): Promise<GetProjectVariableResult>
function getProjectVariableOutput(args: GetProjectVariableOutputArgs, opts?: InvokeOptions): Output<GetProjectVariableResult>def get_project_variable(environment_scope: Optional[str] = None,
key: Optional[str] = None,
project: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetProjectVariableResult
def get_project_variable_output(environment_scope: Optional[pulumi.Input[str]] = None,
key: Optional[pulumi.Input[str]] = None,
project: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetProjectVariableResult]func LookupProjectVariable(ctx *Context, args *LookupProjectVariableArgs, opts ...InvokeOption) (*LookupProjectVariableResult, error)
func LookupProjectVariableOutput(ctx *Context, args *LookupProjectVariableOutputArgs, opts ...InvokeOption) LookupProjectVariableResultOutput> Note: This function is named LookupProjectVariable in the Go SDK.
public static class GetProjectVariable
{
public static Task<GetProjectVariableResult> InvokeAsync(GetProjectVariableArgs args, InvokeOptions? opts = null)
public static Output<GetProjectVariableResult> Invoke(GetProjectVariableInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetProjectVariableResult> getProjectVariable(GetProjectVariableArgs args, InvokeOptions options)
public static Output<GetProjectVariableResult> getProjectVariable(GetProjectVariableArgs args, InvokeOptions options)
fn::invoke:
function: gitlab:index/getProjectVariable:getProjectVariable
arguments:
# arguments dictionaryThe following arguments are supported:
- Key string
- The name of the variable.
- Project string
- The name or id of the project.
- Environment
Scope string - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans.
- Key string
- The name of the variable.
- Project string
- The name or id of the project.
- Environment
Scope string - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans.
- key String
- The name of the variable.
- project String
- The name or id of the project.
- environment
Scope String - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans.
- key string
- The name of the variable.
- project string
- The name or id of the project.
- environment
Scope string - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans.
- key str
- The name of the variable.
- project str
- The name or id of the project.
- environment_
scope str - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans.
- key String
- The name of the variable.
- project String
- The name or id of the project.
- environment
Scope String - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans.
getProjectVariable Result
The following output properties are available:
- Description string
- The description of the variable.
- Environment
Scope string - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans. - Id string
- The provider-assigned unique ID for this managed resource.
- Key string
- The name of the variable.
- Masked bool
- If set to
true, the value of the variable will be hidden in job logs. The value must meet the masking requirements. Defaults tofalse. - Project string
- The name or id of the project.
- Protected bool
- If set to
true, the variable will be passed only to pipelines running on protected branches and tags. Defaults tofalse. - Raw bool
- Whether the variable is treated as a raw string. Default: false. When true, variables in the value are not expanded.
- Value string
- The value of the variable.
- Variable
Type string - The type of a variable. Valid values are:
env_var,file. Default isenv_var.
- Description string
- The description of the variable.
- Environment
Scope string - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans. - Id string
- The provider-assigned unique ID for this managed resource.
- Key string
- The name of the variable.
- Masked bool
- If set to
true, the value of the variable will be hidden in job logs. The value must meet the masking requirements. Defaults tofalse. - Project string
- The name or id of the project.
- Protected bool
- If set to
true, the variable will be passed only to pipelines running on protected branches and tags. Defaults tofalse. - Raw bool
- Whether the variable is treated as a raw string. Default: false. When true, variables in the value are not expanded.
- Value string
- The value of the variable.
- Variable
Type string - The type of a variable. Valid values are:
env_var,file. Default isenv_var.
- description String
- The description of the variable.
- environment
Scope String - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans. - id String
- The provider-assigned unique ID for this managed resource.
- key String
- The name of the variable.
- masked Boolean
- If set to
true, the value of the variable will be hidden in job logs. The value must meet the masking requirements. Defaults tofalse. - project String
- The name or id of the project.
- protected_ Boolean
- If set to
true, the variable will be passed only to pipelines running on protected branches and tags. Defaults tofalse. - raw Boolean
- Whether the variable is treated as a raw string. Default: false. When true, variables in the value are not expanded.
- value String
- The value of the variable.
- variable
Type String - The type of a variable. Valid values are:
env_var,file. Default isenv_var.
- description string
- The description of the variable.
- environment
Scope string - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans. - id string
- The provider-assigned unique ID for this managed resource.
- key string
- The name of the variable.
- masked boolean
- If set to
true, the value of the variable will be hidden in job logs. The value must meet the masking requirements. Defaults tofalse. - project string
- The name or id of the project.
- protected boolean
- If set to
true, the variable will be passed only to pipelines running on protected branches and tags. Defaults tofalse. - raw boolean
- Whether the variable is treated as a raw string. Default: false. When true, variables in the value are not expanded.
- value string
- The value of the variable.
- variable
Type string - The type of a variable. Valid values are:
env_var,file. Default isenv_var.
- description str
- The description of the variable.
- environment_
scope str - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans. - id str
- The provider-assigned unique ID for this managed resource.
- key str
- The name of the variable.
- masked bool
- If set to
true, the value of the variable will be hidden in job logs. The value must meet the masking requirements. Defaults tofalse. - project str
- The name or id of the project.
- protected bool
- If set to
true, the variable will be passed only to pipelines running on protected branches and tags. Defaults tofalse. - raw bool
- Whether the variable is treated as a raw string. Default: false. When true, variables in the value are not expanded.
- value str
- The value of the variable.
- variable_
type str - The type of a variable. Valid values are:
env_var,file. Default isenv_var.
- description String
- The description of the variable.
- environment
Scope String - The environment scope of the variable. Defaults to all environment (
*). Note that in Community Editions of Gitlab, values other than*will cause inconsistent plans. - id String
- The provider-assigned unique ID for this managed resource.
- key String
- The name of the variable.
- masked Boolean
- If set to
true, the value of the variable will be hidden in job logs. The value must meet the masking requirements. Defaults tofalse. - project String
- The name or id of the project.
- protected Boolean
- If set to
true, the variable will be passed only to pipelines running on protected branches and tags. Defaults tofalse. - raw Boolean
- Whether the variable is treated as a raw string. Default: false. When true, variables in the value are not expanded.
- value String
- The value of the variable.
- variable
Type String - The type of a variable. Valid values are:
env_var,file. Default isenv_var.
Package Details
- Repository
- GitLab pulumi/pulumi-gitlab
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
gitlabTerraform Provider.
Viewing docs for GitLab v7.0.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
