Former2 is a website that allows you to generate IaC (Infrastructure as Code) templates (such as CloudFormation, CDK, Terraform, etc) from existing AWS resources and is mentioned on AWS Open Source Blog (Accelerate infrastructure as code development with open source Former2 and How DNAnexus used the open source Former2 project to create infrastructure as code templates for their disaster recovery pipeline).
Some users have security concerns around entering their AWS credentials on an external website and prefer a private web instance. However, Former2 requires browser helper extension that only works with websites that has domain names 127.0.0.1, localhost, former2.com and www.former2.com.
This CloudFormation template provisions a EC2 instance hosting former2 web codes, so that users can remote in from their browsers to generate IaC templates and download them.
Download the CloudFormation template and use it in your AWS CloudFormation console. The EC2 instance to be provisioned must be in a network with internet connectivity; you can select default VPC and one of the default subnets.
Once provisioned, go to Outputs section.
Use the SSMSessionManager
link value to change ec2-user password and RemoteWebConsole
link value to login to graphical desktop in your browser. Within the session, open a browser to http://localhost to use Former2
Refer to Accelerate infrastructure as code development with open source Former2 blog post for Former2 usage instructions.
CloudFormation template downloads Former2 web codes from Ian Mckay's GitHub repo which are released under MIT license.
Former2 is under active development. To download latest codes, login to EC2 instance and run /home/ec2-user/update-former2
script.
Remote web access is provided by NICE DCV server, and supports file transfer. Usage indicates acceptance of NICE DCV EULA.
Native clients can be downloaded from https://download.nice-dcv.com/
The CloudFormation template is designed to provision EC2 instance in public subnet. To provision EC2 in private subnet with internet connectivity, set displayPublicIP
option to No
See CONTRIBUTING for more information.
This library is licensed under the MIT-0 License. See the LICENSE file.