Skip to content

Support for building Windows AMIs #182

@jschwartzentruber

Description

@jschwartzentruber

For some projects, we will need to maintain Windows AMIs in the same way as we maintain Docker images.

community-tc-config already has support for applying a bootstrap script to an existing AMI and taking a snapshot. We could implement this in orion instead as another service type.

This is different from existing services:

  • artifacts live in EC2, not TC.
  • "build" tasks would work with an external EC2 instance.

The following needs to be implemented:

  • Create an EC2 instance, apply a bootstrap script, and take a snapshot. The resulting AMI id(s) should be in an artifact of the task. It may be possible to reuse laniakea for this.
  • Copy the resulting instance to other regions.
  • Share the instance(s) with another AWS account. (eg. community-tc)
  • Update TC pools that use the AMI to use the new one. (trigger fuzzing-tc-config)
  • Delete old AMIs.

The external EC2 instance could be lost if task exception or failure occurs, so we would need a periodic hook to check for and remove orphans.

In the future this may need to support GCE or Azure VMs, but for now we only run Windows instances in EC2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions