param#

The workflow and step level parameter system.

class packer_ami_workflow.param.BaseParam[source]#
classmethod from_json_file(path)[source]#

Load the parameter object from a json file.

class packer_ami_workflow.param.WorkflowParam(workflow_id: str, vpc_name: str, is_default_vpc: str, subnet_name: str, security_group_name: str, ec2_iam_role_name: str, root_base_ami_id: str, root_base_ami_name: str, profile_name: ~typing.Optional[str] = None, region_name: ~typing.Optional[str] = None, aws_access_key_id: ~typing.Optional[str] = None, aws_secret_access_key: ~typing.Optional[str] = None, aws_session_token: ~typing.Optional[str] = None, aws_tags: ~typing.Dict[str, str] = <factory>)[source]#

The workflow level parameter object. The parameters here are common values for all steps.

Parameters:
  • workflow_id

  • aws_profile – The AWS profile name to use.

  • aws_tags – The AWS tags to apply to the AMI.

  • vpc_name – The VPC name where the packer build will run.

  • is_default_vpc – are we using default VPC? use false or true (string, not boolean).

  • subnet_name – The Subnet name where the packer build will run.

  • security_group_name – The Security name where the packer build will use.

  • ec2_iam_role_name – The IAM role name that the packer build will use.

  • root_base_ami_name – The name of the root base AMI to use for building this AMI. this is only used in step 1.

  • root_base_ami_owner_account_id – The owner account id of the root base AMI.

class packer_ami_workflow.param.StepParam(step_id: str, previous_step_id: ~typing.Optional[str], metadata: ~typing.Dict[str, str] = <factory>)[source]#

The step level parameter object. The parameters here are specific to each step.

Parameters:
  • step_id – The step id.

  • source_ami_id – The source AMI id to use for building this AMI.

  • metadata – additional metadata for this step AMI.