· 6 years ago · Jun 28, 2019, 04:02 PM
1provider "aws" {
2 access_key = "${var.access_key}"
3 secret_key = "${var.secret_key}"
4 region = "${var.region}"
5}
6
7resource "aws_instance" "personal" {
8 ami = "${lookup(var.amis, var.region)}"
9 instance_type = "t2.micro"
10}
11
12resource "aws_eip" "ip" {
13 instance = "${aws_instance.personal.id}"
14}
15
16resource "aws_key_pair" "personal" {
17 key_name = "mschuchard-us-east"
18 public_key = "${var.public_key}"
19}
20
21aws_key_pair.personal: Creating...
22 fingerprint: "" => "<computed>"
23 key_name: "" => "mschuchard-us-east"
24 public_key: "" => "ssh-rsa pubkey hash mschuchard-us-east"
25aws_instance.personal: Creating...
26 ami: "" => "ami-c481fad3"
27 availability_zone: "" => "<computed>"
28 ebs_block_device.#: "" => "<computed>"
29 ephemeral_block_device.#: "" => "<computed>"
30 instance_state: "" => "<computed>"
31 instance_type: "" => "t2.micro"
32 key_name: "" => "<computed>"
33 network_interface_id: "" => "<computed>"
34 placement_group: "" => "<computed>"
35 private_dns: "" => "<computed>"
36 private_ip: "" => "<computed>"
37 public_dns: "" => "<computed>"
38 public_ip: "" => "<computed>"
39 root_block_device.#: "" => "<computed>"
40 security_groups.#: "" => "<computed>"
41 source_dest_check: "" => "true"
42 subnet_id: "" => "<computed>"
43 tenancy: "" => "<computed>"
44 vpc_security_group_ids.#: "" => "<computed>"
45aws_instance.personal: Creation complete
46aws_eip.ip: Creating...
47 allocation_id: "" => "<computed>"
48 association_id: "" => "<computed>"
49 domain: "" => "<computed>"
50 instance: "" => "i-0ab94b58b0089697d"
51 network_interface: "" => "<computed>"
52 private_ip: "" => "<computed>"
53 public_ip: "" => "<computed>"
54 vpc: "" => "<computed>"
55aws_eip.ip: Creation complete
56Error applying plan:
57
581 error(s) occurred:
59
60* aws_key_pair.personal: Error import KeyPair: InvalidKeyPair.Duplicate: The keypair 'mschuchard-us-east' already exists.
61status code: 400, request id: 51950b9a-55e8-4901-bf35-4d2be234abbf
62
63terraform import aws_key_pair.personal mschuchard-us-east
64
65resource "aws_key_pair" "test" {
66 key_name = "${uuid()}"
67 public_key = "${tls_private_key.t.public_key_openssh}"
68}
69provider "tls" {}
70resource "tls_private_key" "t" {
71 algorithm = "RSA"
72}
73provider "local" {}
74resource "local_file" "key" {
75 content = "${tls_private_key.t.private_key_pem}"
76 filename = "id_rsa"
77 provisioner "local-exec" {
78 command = "chmod 600 id_rsa"
79 }
80}