import * as pulumi from "@pulumi/pulumi"; /** * This resource allows you to create and manage settings for a GitHub Organization. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as github from "@pulumi/github"; * * const test = new github.OrganizationSettings("test", { * billingEmail: "test@example.com", * company: "Test Company", * blog: "https://example.com", * email: "test@example.com", * twitterUsername: "Test", * location: "Test Location", * name: "Test Name", * description: "Test Description", * hasOrganizationProjects: true, * hasRepositoryProjects: true, * defaultRepositoryPermission: "read", * membersCanCreateRepositories: true, * membersCanCreatePublicRepositories: true, * membersCanCreatePrivateRepositories: true, * membersCanCreateInternalRepositories: true, * membersCanCreatePages: true, * membersCanCreatePublicPages: true, * membersCanCreatePrivatePages: true, * membersCanForkPrivateRepositories: true, * webCommitSignoffRequired: true, * advancedSecurityEnabledForNewRepositories: false, * dependabotAlertsEnabledForNewRepositories: false, * dependabotSecurityUpdatesEnabledForNewRepositories: false, * dependencyGraphEnabledForNewRepositories: false, * secretScanningEnabledForNewRepositories: false, * secretScanningPushProtectionEnabledForNewRepositories: false, * }); * ``` * * ## Import * * Organization settings can be imported using the `id` of the organization. * The `id` of the organization can be found using the [get an organization](https://docs.github.com/en/rest/orgs/orgs#get-an-organization) API. * * ```sh * $ pulumi import github:index/organizationSettings:OrganizationSettings test 123456789 * ``` */ export declare class OrganizationSettings extends pulumi.CustomResource { /** * Get an existing OrganizationSettings resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: OrganizationSettingsState, opts?: pulumi.CustomResourceOptions): OrganizationSettings; /** * Returns true if the given object is an instance of OrganizationSettings. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is OrganizationSettings; /** * Whether or not advanced security is enabled for new repositories. Defaults to `false`. */ readonly advancedSecurityEnabledForNewRepositories: pulumi.Output; /** * The billing email address for the organization. */ readonly billingEmail: pulumi.Output; /** * The blog URL for the organization. */ readonly blog: pulumi.Output; /** * The company name for the organization. */ readonly company: pulumi.Output; /** * The default permission for organization members to create new repositories. Can be one of `read`, `write`, `admin`, or `none`. Defaults to `read`. */ readonly defaultRepositoryPermission: pulumi.Output; /** * Whether or not dependabot alerts are enabled for new repositories. Defaults to `false`. */ readonly dependabotAlertsEnabledForNewRepositories: pulumi.Output; /** * Whether or not dependabot security updates are enabled for new repositories. Defaults to `false`. */ readonly dependabotSecurityUpdatesEnabledForNewRepositories: pulumi.Output; /** * Whether or not dependency graph is enabled for new repositories. Defaults to `false`. */ readonly dependencyGraphEnabledForNewRepositories: pulumi.Output; /** * The description for the organization. */ readonly description: pulumi.Output; /** * The email address for the organization. */ readonly email: pulumi.Output; /** * Whether or not organization projects are enabled for the organization. */ readonly hasOrganizationProjects: pulumi.Output; /** * Whether or not repository projects are enabled for the organization. */ readonly hasRepositoryProjects: pulumi.Output; /** * The location for the organization. */ readonly location: pulumi.Output; /** * Whether or not organization members can create new internal repositories. For Enterprise Organizations only. */ readonly membersCanCreateInternalRepositories: pulumi.Output; /** * Whether or not organization members can create new pages. Defaults to `true`. */ readonly membersCanCreatePages: pulumi.Output; /** * Whether or not organization members can create new private pages. Defaults to `true`. */ readonly membersCanCreatePrivatePages: pulumi.Output; /** * Whether or not organization members can create new private repositories. Defaults to `true`. */ readonly membersCanCreatePrivateRepositories: pulumi.Output; /** * Whether or not organization members can create new public pages. Defaults to `true`. */ readonly membersCanCreatePublicPages: pulumi.Output; /** * Whether or not organization members can create new public repositories. Defaults to `true`. */ readonly membersCanCreatePublicRepositories: pulumi.Output; /** * Whether or not organization members can create new repositories. Defaults to `true`. */ readonly membersCanCreateRepositories: pulumi.Output; /** * Whether or not organization members can fork private repositories. Defaults to `false`. */ readonly membersCanForkPrivateRepositories: pulumi.Output; /** * The name for the organization. */ readonly name: pulumi.Output; /** * Whether or not secret scanning is enabled for new repositories. Defaults to `false`. */ readonly secretScanningEnabledForNewRepositories: pulumi.Output; /** * Whether or not secret scanning push protection is enabled for new repositories. Defaults to `false`. */ readonly secretScanningPushProtectionEnabledForNewRepositories: pulumi.Output; /** * The Twitter username for the organization. */ readonly twitterUsername: pulumi.Output; /** * Whether or not commit signatures are required for commits to the organization. Defaults to `false`. */ readonly webCommitSignoffRequired: pulumi.Output; /** * Create a OrganizationSettings resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: OrganizationSettingsArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering OrganizationSettings resources. */ export interface OrganizationSettingsState { /** * Whether or not advanced security is enabled for new repositories. Defaults to `false`. */ advancedSecurityEnabledForNewRepositories?: pulumi.Input; /** * The billing email address for the organization. */ billingEmail?: pulumi.Input; /** * The blog URL for the organization. */ blog?: pulumi.Input; /** * The company name for the organization. */ company?: pulumi.Input; /** * The default permission for organization members to create new repositories. Can be one of `read`, `write`, `admin`, or `none`. Defaults to `read`. */ defaultRepositoryPermission?: pulumi.Input; /** * Whether or not dependabot alerts are enabled for new repositories. Defaults to `false`. */ dependabotAlertsEnabledForNewRepositories?: pulumi.Input; /** * Whether or not dependabot security updates are enabled for new repositories. Defaults to `false`. */ dependabotSecurityUpdatesEnabledForNewRepositories?: pulumi.Input; /** * Whether or not dependency graph is enabled for new repositories. Defaults to `false`. */ dependencyGraphEnabledForNewRepositories?: pulumi.Input; /** * The description for the organization. */ description?: pulumi.Input; /** * The email address for the organization. */ email?: pulumi.Input; /** * Whether or not organization projects are enabled for the organization. */ hasOrganizationProjects?: pulumi.Input; /** * Whether or not repository projects are enabled for the organization. */ hasRepositoryProjects?: pulumi.Input; /** * The location for the organization. */ location?: pulumi.Input; /** * Whether or not organization members can create new internal repositories. For Enterprise Organizations only. */ membersCanCreateInternalRepositories?: pulumi.Input; /** * Whether or not organization members can create new pages. Defaults to `true`. */ membersCanCreatePages?: pulumi.Input; /** * Whether or not organization members can create new private pages. Defaults to `true`. */ membersCanCreatePrivatePages?: pulumi.Input; /** * Whether or not organization members can create new private repositories. Defaults to `true`. */ membersCanCreatePrivateRepositories?: pulumi.Input; /** * Whether or not organization members can create new public pages. Defaults to `true`. */ membersCanCreatePublicPages?: pulumi.Input; /** * Whether or not organization members can create new public repositories. Defaults to `true`. */ membersCanCreatePublicRepositories?: pulumi.Input; /** * Whether or not organization members can create new repositories. Defaults to `true`. */ membersCanCreateRepositories?: pulumi.Input; /** * Whether or not organization members can fork private repositories. Defaults to `false`. */ membersCanForkPrivateRepositories?: pulumi.Input; /** * The name for the organization. */ name?: pulumi.Input; /** * Whether or not secret scanning is enabled for new repositories. Defaults to `false`. */ secretScanningEnabledForNewRepositories?: pulumi.Input; /** * Whether or not secret scanning push protection is enabled for new repositories. Defaults to `false`. */ secretScanningPushProtectionEnabledForNewRepositories?: pulumi.Input; /** * The Twitter username for the organization. */ twitterUsername?: pulumi.Input; /** * Whether or not commit signatures are required for commits to the organization. Defaults to `false`. */ webCommitSignoffRequired?: pulumi.Input; } /** * The set of arguments for constructing a OrganizationSettings resource. */ export interface OrganizationSettingsArgs { /** * Whether or not advanced security is enabled for new repositories. Defaults to `false`. */ advancedSecurityEnabledForNewRepositories?: pulumi.Input; /** * The billing email address for the organization. */ billingEmail: pulumi.Input; /** * The blog URL for the organization. */ blog?: pulumi.Input; /** * The company name for the organization. */ company?: pulumi.Input; /** * The default permission for organization members to create new repositories. Can be one of `read`, `write`, `admin`, or `none`. Defaults to `read`. */ defaultRepositoryPermission?: pulumi.Input; /** * Whether or not dependabot alerts are enabled for new repositories. Defaults to `false`. */ dependabotAlertsEnabledForNewRepositories?: pulumi.Input; /** * Whether or not dependabot security updates are enabled for new repositories. Defaults to `false`. */ dependabotSecurityUpdatesEnabledForNewRepositories?: pulumi.Input; /** * Whether or not dependency graph is enabled for new repositories. Defaults to `false`. */ dependencyGraphEnabledForNewRepositories?: pulumi.Input; /** * The description for the organization. */ description?: pulumi.Input; /** * The email address for the organization. */ email?: pulumi.Input; /** * Whether or not organization projects are enabled for the organization. */ hasOrganizationProjects?: pulumi.Input; /** * Whether or not repository projects are enabled for the organization. */ hasRepositoryProjects?: pulumi.Input; /** * The location for the organization. */ location?: pulumi.Input; /** * Whether or not organization members can create new internal repositories. For Enterprise Organizations only. */ membersCanCreateInternalRepositories?: pulumi.Input; /** * Whether or not organization members can create new pages. Defaults to `true`. */ membersCanCreatePages?: pulumi.Input; /** * Whether or not organization members can create new private pages. Defaults to `true`. */ membersCanCreatePrivatePages?: pulumi.Input; /** * Whether or not organization members can create new private repositories. Defaults to `true`. */ membersCanCreatePrivateRepositories?: pulumi.Input; /** * Whether or not organization members can create new public pages. Defaults to `true`. */ membersCanCreatePublicPages?: pulumi.Input; /** * Whether or not organization members can create new public repositories. Defaults to `true`. */ membersCanCreatePublicRepositories?: pulumi.Input; /** * Whether or not organization members can create new repositories. Defaults to `true`. */ membersCanCreateRepositories?: pulumi.Input; /** * Whether or not organization members can fork private repositories. Defaults to `false`. */ membersCanForkPrivateRepositories?: pulumi.Input; /** * The name for the organization. */ name?: pulumi.Input; /** * Whether or not secret scanning is enabled for new repositories. Defaults to `false`. */ secretScanningEnabledForNewRepositories?: pulumi.Input; /** * Whether or not secret scanning push protection is enabled for new repositories. Defaults to `false`. */ secretScanningPushProtectionEnabledForNewRepositories?: pulumi.Input; /** * The Twitter username for the organization. */ twitterUsername?: pulumi.Input; /** * Whether or not commit signatures are required for commits to the organization. Defaults to `false`. */ webCommitSignoffRequired?: pulumi.Input; }