An experiment to add Azure and Google Cloud resource support to CloudFormation.
❗ CAUTION: This project is currently in alpha stages. Some components may not work as expected and fields may not be validated. Currently, all fields within the example stacks are required.
Click the above link to deploy the stack which is required to deploy the Transform and Custom Resource handler. You will be asked to input your Azure app credentials and Google JSON server credentials.
If you prefer, you can also manually upsert the custom_resource.yaml stack from source and compile your own copy of the Lambda source. Please note that if you do this, the Python requirements must be vendored from within an Amazon Linux machine.
Once the handler stack is created, you may use the below resources by adding the MultiCloud
transform to your stack. This will transform your input template to convert the Azure/Google Cloud resources into Custom Resources that will handle the lifecycle within that cloud provider.
The following resources are supported (click the link to see examples):
Functionality | AWS Resource | Azure Resource | Google Cloud Resource |
---|---|---|---|
Logical Group | - | Azure::Resource::ResourceGroup | - |
Virtual Network | AWS::EC2::VPC | Azure::Network::VirtualNetwork | GoogleCloud::Compute::Network |
Subnet | AWS::EC2::Subnet | Azure::Network::Subnet | GoogleCloud::Compute::Subnetwork |
Network Interface | AWS::EC2::NetworkInterface | Azure::Network::NetworkInterface | - |
Virtual Machine | AWS::EC2::Instance | Azure::Compute::VirtualMachine | GoogleCloud::Compute::Instance |
Queue | AWS::SQS:Queue | Azure::Storage::Queue | GoogleCloud::PubSub::Topic |
Object Bucket | AWS::S3::Bucket | Azure::Storage::StorageAccount | GoogleCloud::Storage::Bucket |