Viewing docs for GitHub v6.12.1
published on Thursday, Feb 12, 2026 by Pulumi
published on Thursday, Feb 12, 2026 by Pulumi
Viewing docs for GitHub v6.12.1
published on Thursday, Feb 12, 2026 by Pulumi
published on Thursday, Feb 12, 2026 by Pulumi
Use this data source to retrieve information about a single tree.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const _this = github.getRepository({
name: "example",
});
const thisGetBranch = Promise.all([_this, _this]).then(([_this, _this1]) => github.getBranch({
branch: _this.defaultBranch,
repository: _this1.name,
}));
const thisGetTree = Promise.all([_this, thisGetBranch]).then(([_this, thisGetBranch]) => github.getTree({
recursive: false,
repository: _this.name,
treeSha: thisGetBranch.sha,
}));
export const entries = thisGetTree.then(thisGetTree => thisGetTree.entries);
import pulumi
import pulumi_github as github
this = github.get_repository(name="example")
this_get_branch = github.get_branch(branch=this.default_branch,
repository=this.name)
this_get_tree = github.get_tree(recursive=False,
repository=this.name,
tree_sha=this_get_branch.sha)
pulumi.export("entries", this_get_tree.entries)
package main
import (
"github.com/pulumi/pulumi-github/sdk/v6/go/github"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
this, err := github.LookupRepository(ctx, &github.LookupRepositoryArgs{
Name: pulumi.StringRef("example"),
}, nil)
if err != nil {
return err
}
thisGetBranch, err := github.LookupBranch(ctx, &github.LookupBranchArgs{
Branch: this.DefaultBranch,
Repository: this.Name,
}, nil)
if err != nil {
return err
}
thisGetTree, err := github.GetTree(ctx, &github.GetTreeArgs{
Recursive: pulumi.BoolRef(false),
Repository: this.Name,
TreeSha: thisGetBranch.Sha,
}, nil)
if err != nil {
return err
}
ctx.Export("entries", thisGetTree.Entries)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Github = Pulumi.Github;
return await Deployment.RunAsync(() =>
{
var @this = Github.GetRepository.Invoke(new()
{
Name = "example",
});
var thisGetBranch = Github.GetBranch.Invoke(new()
{
Branch = @this.Apply(getRepositoryResult => getRepositoryResult.DefaultBranch),
Repository = @this.Apply(getRepositoryResult => getRepositoryResult.Name),
});
var thisGetTree = Github.GetTree.Invoke(new()
{
Recursive = false,
Repository = @this.Apply(getRepositoryResult => getRepositoryResult.Name),
TreeSha = thisGetBranch.Apply(getBranchResult => getBranchResult.Sha),
});
return new Dictionary<string, object?>
{
["entries"] = thisGetTree.Apply(getTreeResult => getTreeResult.Entries),
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.github.GithubFunctions;
import com.pulumi.github.inputs.GetRepositoryArgs;
import com.pulumi.github.inputs.GetBranchArgs;
import com.pulumi.github.inputs.GetTreeArgs;
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 this = GithubFunctions.getRepository(GetRepositoryArgs.builder()
.name("example")
.build());
final var thisGetBranch = GithubFunctions.getBranch(GetBranchArgs.builder()
.branch(this_.defaultBranch())
.repository(this_.name())
.build());
final var thisGetTree = GithubFunctions.getTree(GetTreeArgs.builder()
.recursive(false)
.repository(this_.name())
.treeSha(thisGetBranch.sha())
.build());
ctx.export("entries", thisGetTree.entries());
}
}
variables:
this:
fn::invoke:
function: github:getRepository
arguments:
name: example
thisGetBranch:
fn::invoke:
function: github:getBranch
arguments:
branch: ${this.defaultBranch}
repository: ${this.name}
thisGetTree:
fn::invoke:
function: github:getTree
arguments:
recursive: false
repository: ${this.name}
treeSha: ${thisGetBranch.sha}
outputs:
entries: ${thisGetTree.entries}
Using getTree
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 getTree(args: GetTreeArgs, opts?: InvokeOptions): Promise<GetTreeResult>
function getTreeOutput(args: GetTreeOutputArgs, opts?: InvokeOptions): Output<GetTreeResult>def get_tree(recursive: Optional[bool] = None,
repository: Optional[str] = None,
tree_sha: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetTreeResult
def get_tree_output(recursive: Optional[pulumi.Input[bool]] = None,
repository: Optional[pulumi.Input[str]] = None,
tree_sha: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetTreeResult]func GetTree(ctx *Context, args *GetTreeArgs, opts ...InvokeOption) (*GetTreeResult, error)
func GetTreeOutput(ctx *Context, args *GetTreeOutputArgs, opts ...InvokeOption) GetTreeResultOutput> Note: This function is named GetTree in the Go SDK.
public static class GetTree
{
public static Task<GetTreeResult> InvokeAsync(GetTreeArgs args, InvokeOptions? opts = null)
public static Output<GetTreeResult> Invoke(GetTreeInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetTreeResult> getTree(GetTreeArgs args, InvokeOptions options)
public static Output<GetTreeResult> getTree(GetTreeArgs args, InvokeOptions options)
fn::invoke:
function: github:index/getTree:getTree
arguments:
# arguments dictionaryThe following arguments are supported:
- Repository string
- The name of the repository.
- Tree
Sha string - The SHA1 value for the tree.
- Recursive bool
- Setting this parameter to
truereturns the objects or subtrees referenced by the tree specified intree_sha.
- Repository string
- The name of the repository.
- Tree
Sha string - The SHA1 value for the tree.
- Recursive bool
- Setting this parameter to
truereturns the objects or subtrees referenced by the tree specified intree_sha.
- repository String
- The name of the repository.
- tree
Sha String - The SHA1 value for the tree.
- recursive Boolean
- Setting this parameter to
truereturns the objects or subtrees referenced by the tree specified intree_sha.
- repository string
- The name of the repository.
- tree
Sha string - The SHA1 value for the tree.
- recursive boolean
- Setting this parameter to
truereturns the objects or subtrees referenced by the tree specified intree_sha.
- repository str
- The name of the repository.
- tree_
sha str - The SHA1 value for the tree.
- recursive bool
- Setting this parameter to
truereturns the objects or subtrees referenced by the tree specified intree_sha.
- repository String
- The name of the repository.
- tree
Sha String - The SHA1 value for the tree.
- recursive Boolean
- Setting this parameter to
truereturns the objects or subtrees referenced by the tree specified intree_sha.
getTree Result
The following output properties are available:
- Entries
List<Get
Tree Entry> - Objects (of
path,mode,type,size, andsha) specifying a tree structure. - Id string
- The provider-assigned unique ID for this managed resource.
- Repository string
- Tree
Sha string - Recursive bool
- Entries
[]Get
Tree Entry - Objects (of
path,mode,type,size, andsha) specifying a tree structure. - Id string
- The provider-assigned unique ID for this managed resource.
- Repository string
- Tree
Sha string - Recursive bool
- entries
List<Get
Tree Entry> - Objects (of
path,mode,type,size, andsha) specifying a tree structure. - id String
- The provider-assigned unique ID for this managed resource.
- repository String
- tree
Sha String - recursive Boolean
- entries
Get
Tree Entry[] - Objects (of
path,mode,type,size, andsha) specifying a tree structure. - id string
- The provider-assigned unique ID for this managed resource.
- repository string
- tree
Sha string - recursive boolean
- entries
Sequence[Get
Tree Entry] - Objects (of
path,mode,type,size, andsha) specifying a tree structure. - id str
- The provider-assigned unique ID for this managed resource.
- repository str
- tree_
sha str - recursive bool
- entries List<Property Map>
- Objects (of
path,mode,type,size, andsha) specifying a tree structure. - id String
- The provider-assigned unique ID for this managed resource.
- repository String
- tree
Sha String - recursive Boolean
Supporting Types
GetTreeEntry
Package Details
- Repository
- GitHub pulumi/pulumi-github
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
githubTerraform Provider.
Viewing docs for GitHub v6.12.1
published on Thursday, Feb 12, 2026 by Pulumi
published on Thursday, Feb 12, 2026 by Pulumi
