Enterprise Actions Permissions Args
This resource allows you to create and manage GitHub Actions permissions within your GitHub enterprise. You must have admin access to an enterprise to use this resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example_org = github.getOrganization({
name: "my-org",
});
const test = new github.EnterpriseActionsPermissions("test", {
enterpriseSlug: "my-enterprise",
allowedActions: "selected",
enabledOrganizations: "selected",
allowedActionsConfig: {
githubOwnedAllowed: true,
patternsAlloweds: [
"actions/cache@*",
"actions/checkout@*",
],
verifiedAllowed: true,
},
enabledOrganizationsConfig: {
organizationIds: [example_org.then(example_org => example_org.id)],
},
});
import pulumi
import pulumi_github as github
example_org = github.get_organization(name="my-org")
test = github.EnterpriseActionsPermissions("test",
enterprise_slug="my-enterprise",
allowed_actions="selected",
enabled_organizations="selected",
allowed_actions_config={
"github_owned_allowed": True,
"patterns_alloweds": [
"actions/cache@*",
"actions/checkout@*",
],
"verified_allowed": True,
},
enabled_organizations_config={
"organization_ids": [example_org.id],
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Github = Pulumi.Github;
return await Deployment.RunAsync(() =>
{
var example_org = Github.GetOrganization.Invoke(new()
{
Name = "my-org",
});
var test = new Github.EnterpriseActionsPermissions("test", new()
{
EnterpriseSlug = "my-enterprise",
AllowedActions = "selected",
EnabledOrganizations = "selected",
AllowedActionsConfig = new Github.Inputs.EnterpriseActionsPermissionsAllowedActionsConfigArgs
{
GithubOwnedAllowed = true,
PatternsAlloweds = new[]
{
"actions/cache@*",
"actions/checkout@*",
},
VerifiedAllowed = true,
},
EnabledOrganizationsConfig = new Github.Inputs.EnterpriseActionsPermissionsEnabledOrganizationsConfigArgs
{
OrganizationIds = new[]
{
example_org.Apply(example_org => example_org.Apply(getOrganizationResult => getOrganizationResult.Id)),
},
},
});
});
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 {
example_org, err := github.GetOrganization(ctx, &github.GetOrganizationArgs{
Name: "my-org",
}, nil)
if err != nil {
return err
}
_, err = github.NewEnterpriseActionsPermissions(ctx, "test", &github.EnterpriseActionsPermissionsArgs{
EnterpriseSlug: pulumi.String("my-enterprise"),
AllowedActions: pulumi.String("selected"),
EnabledOrganizations: pulumi.String("selected"),
AllowedActionsConfig: &github.EnterpriseActionsPermissionsAllowedActionsConfigArgs{
GithubOwnedAllowed: pulumi.Bool(true),
PatternsAlloweds: pulumi.StringArray{
pulumi.String("actions/cache@*"),
pulumi.String("actions/checkout@*"),
},
VerifiedAllowed: pulumi.Bool(true),
},
EnabledOrganizationsConfig: &github.EnterpriseActionsPermissionsEnabledOrganizationsConfigArgs{
OrganizationIds: pulumi.IntArray{
pulumi.String(example_org.Id),
},
},
})
if err != nil {
return err
}
return nil
})
}
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.GetOrganizationArgs;
import com.pulumi.github.EnterpriseActionsPermissions;
import com.pulumi.github.EnterpriseActionsPermissionsArgs;
import com.pulumi.github.inputs.EnterpriseActionsPermissionsAllowedActionsConfigArgs;
import com.pulumi.github.inputs.EnterpriseActionsPermissionsEnabledOrganizationsConfigArgs;
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 example-org = GithubFunctions.getOrganization(GetOrganizationArgs.builder()
.name("my-org")
.build());
var test = new EnterpriseActionsPermissions("test", EnterpriseActionsPermissionsArgs.builder()
.enterpriseSlug("my-enterprise")
.allowedActions("selected")
.enabledOrganizations("selected")
.allowedActionsConfig(EnterpriseActionsPermissionsAllowedActionsConfigArgs.builder()
.githubOwnedAllowed(true)
.patternsAlloweds(
"actions/cache@*",
"actions/checkout@*")
.verifiedAllowed(true)
.build())
.enabledOrganizationsConfig(EnterpriseActionsPermissionsEnabledOrganizationsConfigArgs.builder()
.organizationIds(example_org.id())
.build())
.build());
}
}
resources:
test:
type: github:EnterpriseActionsPermissions
properties:
enterpriseSlug: my-enterprise
allowedActions: selected
enabledOrganizations: selected
allowedActionsConfig:
githubOwnedAllowed: true
patternsAlloweds:
- actions/cache@*
- actions/checkout@*
verifiedAllowed: true
enabledOrganizationsConfig:
organizationIds:
- ${["example-org"].id}
variables:
example-org:
fn::invoke:
function: github:getOrganization
arguments:
name: my-org
Import
This resource can be imported using the name of the GitHub enterprise:
$ pulumi import github:index/enterpriseActionsPermissions:EnterpriseActionsPermissions test github_enterprise_name
Constructors
Properties
The permissions policy that controls the actions that are allowed to run. Can be one of: all
, local_only
, or selected
.
Sets the actions that are allowed in an enterprise. Only available when allowed_actions
= selected
. See Allowed Actions Config below for details.
The policy that controls the organizations in the enterprise that are allowed to run GitHub Actions. Can be one of: all
, none
, or selected
.
Sets the list of selected organizations that are enabled for GitHub Actions in an enterprise. Only available when enabled_organizations
= selected
. See Enabled Organizations Config below for details.
The slug of the enterprise.