From 2caafcc34470cdc3043096ee09700708a8c06482 Mon Sep 17 00:00:00 2001 From: Ari Brown Date: Tue, 10 Oct 2023 14:37:17 -0400 Subject: [PATCH] added public/private instances and ebs block size --- minerva/machine.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/minerva/machine.py b/minerva/machine.py index bd1dad1..c858024 100644 --- a/minerva/machine.py +++ b/minerva/machine.py @@ -12,7 +12,9 @@ class Machine: variables = {}, username = None, key_pair = None, - name = "Minerva Instance"): + name = "Minerva Instance", + public = True, + disk_size = 8): self.pier = pier self.ami = ami @@ -25,6 +27,8 @@ class Machine: self.info = None self.ssh = None self.terminated = False + self.public = public + self.disk_size = disk_size def create(self): if self.info: @@ -39,10 +43,12 @@ class Machine: MaxCount = 1, TagSpecifications = [{'ResourceType': 'instance', 'Tags': [{'Key': 'Name', 'Value': self.name}]}], - NetworkInterfaces = [{'AssociatePublicIpAddress': True, + NetworkInterfaces = [{'AssociatePublicIpAddress': self.public, 'SubnetId': self.pier.subnet_id, 'Groups': self.pier.groups, 'DeviceIndex': 0}], + BlockDeviceMappings = [{'Ebs': {'VolumeSize': self.disk_size, + 'DeleteOnTermination': True}}], IamInstanceProfile = iam )