Ami Launch Permission
Adds a launch permission to an Amazon Machine Image (AMI).
Example Usage
AWS Account ID
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.ec2.AmiLaunchPermission("example", {
imageId: "ami-12345678",
accountId: "123456789012",
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.ec2.AmiLaunchPermission("example",
image_id="ami-12345678",
account_id="123456789012")
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Ec2.AmiLaunchPermission("example", new()
{
ImageId = "ami-12345678",
AccountId = "123456789012",
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.NewAmiLaunchPermission(ctx, "example", &ec2.AmiLaunchPermissionArgs{
ImageId: pulumi.String("ami-12345678"),
AccountId: pulumi.String("123456789012"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.AmiLaunchPermission;
import com.pulumi.aws.ec2.AmiLaunchPermissionArgs;
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) {
var example = new AmiLaunchPermission("example", AmiLaunchPermissionArgs.builder()
.imageId("ami-12345678")
.accountId("123456789012")
.build());
}
}
Content copied to clipboard
resources:
example:
type: aws:ec2:AmiLaunchPermission
properties:
imageId: ami-12345678
accountId: '123456789012'
Content copied to clipboard
Public Access
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.ec2.AmiLaunchPermission("example", {
imageId: "ami-12345678",
group: "all",
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.ec2.AmiLaunchPermission("example",
image_id="ami-12345678",
group="all")
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Ec2.AmiLaunchPermission("example", new()
{
ImageId = "ami-12345678",
Group = "all",
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.NewAmiLaunchPermission(ctx, "example", &ec2.AmiLaunchPermissionArgs{
ImageId: pulumi.String("ami-12345678"),
Group: pulumi.String("all"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.AmiLaunchPermission;
import com.pulumi.aws.ec2.AmiLaunchPermissionArgs;
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) {
var example = new AmiLaunchPermission("example", AmiLaunchPermissionArgs.builder()
.imageId("ami-12345678")
.group("all")
.build());
}
}
Content copied to clipboard
resources:
example:
type: aws:ec2:AmiLaunchPermission
properties:
imageId: ami-12345678
group: all
Content copied to clipboard
Organization Access
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const current = aws.organizations.getOrganization({});
const example = new aws.ec2.AmiLaunchPermission("example", {
imageId: "ami-12345678",
organizationArn: current.then(current => current.arn),
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
current = aws.organizations.get_organization()
example = aws.ec2.AmiLaunchPermission("example",
image_id="ami-12345678",
organization_arn=current.arn)
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var current = Aws.Organizations.GetOrganization.Invoke();
var example = new Aws.Ec2.AmiLaunchPermission("example", new()
{
ImageId = "ami-12345678",
OrganizationArn = current.Apply(getOrganizationResult => getOrganizationResult.Arn),
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
current, err := organizations.LookupOrganization(ctx, map[string]interface{}{}, nil)
if err != nil {
return err
}
_, err = ec2.NewAmiLaunchPermission(ctx, "example", &ec2.AmiLaunchPermissionArgs{
ImageId: pulumi.String("ami-12345678"),
OrganizationArn: pulumi.String(current.Arn),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.organizations.OrganizationsFunctions;
import com.pulumi.aws.ec2.AmiLaunchPermission;
import com.pulumi.aws.ec2.AmiLaunchPermissionArgs;
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 current = OrganizationsFunctions.getOrganization(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);
var example = new AmiLaunchPermission("example", AmiLaunchPermissionArgs.builder()
.imageId("ami-12345678")
.organizationArn(current.arn())
.build());
}
}
Content copied to clipboard
resources:
example:
type: aws:ec2:AmiLaunchPermission
properties:
imageId: ami-12345678
organizationArn: ${current.arn}
variables:
current:
fn::invoke:
function: aws:organizations:getOrganization
arguments: {}
Content copied to clipboard
Import
Using pulumi import
, import AMI Launch Permissions using [ACCOUNT-ID|GROUP-NAME|ORGANIZATION-ARN|ORGANIZATIONAL-UNIT-ARN]/IMAGE-ID
. For example:
$ pulumi import aws:ec2/amiLaunchPermission:AmiLaunchPermission example 123456789012/ami-12345678
Content copied to clipboard