1. Packages
  2. Gitlab Provider
  3. API Docs
  4. getProjectVariable
GitLab v8.5.0 published on Friday, Oct 18, 2024 by Pulumi

gitlab.getProjectVariable

Explore with Pulumi AI

gitlab logo
GitLab v8.5.0 published on Friday, Oct 18, 2024 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/v8/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)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: gitlab:index/getProjectVariable:getProjectVariable
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Key string
    The name of the variable.
    Project string
    The name or id of the project.
    EnvironmentScope 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.
    EnvironmentScope 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.
    environmentScope 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.
    environmentScope 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.
    environmentScope 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.
    EnvironmentScope 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 to false.
    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 to false.
    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.
    VariableType string
    The type of a variable. Valid values are: env_var, file. Default is env_var.
    Description string
    The description of the variable.
    EnvironmentScope 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 to false.
    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 to false.
    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.
    VariableType string
    The type of a variable. Valid values are: env_var, file. Default is env_var.
    description String
    The description of the variable.
    environmentScope 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 to false.
    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 to false.
    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.
    variableType String
    The type of a variable. Valid values are: env_var, file. Default is env_var.
    description string
    The description of the variable.
    environmentScope 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 to false.
    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 to false.
    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.
    variableType string
    The type of a variable. Valid values are: env_var, file. Default is env_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 to false.
    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 to false.
    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 is env_var.
    description String
    The description of the variable.
    environmentScope 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 to false.
    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 to false.
    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.
    variableType String
    The type of a variable. Valid values are: env_var, file. Default is env_var.

    Package Details

    Repository
    GitLab pulumi/pulumi-gitlab
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the gitlab Terraform Provider.
    gitlab logo
    GitLab v8.5.0 published on Friday, Oct 18, 2024 by Pulumi