Skip to content

Releases: aliyun/alibabacloud-ros-tool-transformer

v0.16.0

17 Mar 05:33
Compare
Choose a tag to compare

Features

  • ✨ Support Transform ROS template to Terraform. By @xiao201208 in #23
  • ✨ Add --extra-files args to specify additional files to retain when converting Terraform to ROS templates using compatibility
    mode, * means retain all files. By default, only files ending with .tf, .tftpl, .tfvars, .metadata,
    .mappings, .conditions, .rules will be retained during conversion. Use this parameter to retain more files. By @xiao201208 in #22

v0.14.0

17 Oct 02:40
Compare
Choose a tag to compare

Features

  • ✨ Add following rules for terraform resources(91):

    • alicloud_adb_db_cluster_lake_version
    • alicloud_alb_ascript
    • alicloud_alb_load_balancer_security_group_attachment
    • alicloud_alikafka_sasl_user
    • alicloud_api_gateway_instance
    • alicloud_api_gateway_vpc_access
    • alicloud_arms_addon_release
    • alicloud_arms_env_feature
    • alicloud_arms_environment
    • alicloud_bastionhost_host
    • alicloud_bastionhost_instance
    • alicloud_cen_instance_grant
    • alicloud_cen_vbr_health_check
    • alicloud_cloud_firewall_nat_firewall_control_policy
    • alicloud_cloud_sso_access_assignment
    • alicloud_cloud_sso_access_configuration
    • alicloud_cloud_sso_access_configuration_provisioning
    • alicloud_cloud_sso_directory
    • alicloud_cloud_sso_group
    • alicloud_cloud_sso_scim_server_credential
    • alicloud_cloud_sso_user
    • alicloud_cloud_sso_user_attachment
    • alicloud_cloud_storage_gateway_storage_bundle
    • alicloud_cms_sls_group
    • alicloud_config_aggregate_compliance_pack
    • alicloud_config_aggregator
    • alicloud_data_works_project
    • alicloud_ddosbgp_instance
    • alicloud_ddoscoo_instance
    • alicloud_ddoscoo_port
    • alicloud_ddoscoo_scheduler_rule
    • alicloud_dms_enterprise_user
    • alicloud_dts_instance
    • alicloud_ecd_network_package
    • alicloud_ecp_key_pair
    • alicloud_ecs_capacity_reservation
    • alicloud_ecs_elasticity_assurance
    • alicloud_ecs_image_component
    • alicloud_ecs_image_pipeline
    • alicloud_ecs_snapshot_group
    • alicloud_ens_disk
    • alicloud_ens_disk_instance_attachment
    • alicloud_ens_image
    • alicloud_ens_instance_security_group_attachment
    • alicloud_ens_key_pair
    • alicloud_ens_network
    • alicloud_ens_security_group
    • alicloud_ens_snapshot
    • alicloud_ens_vswitch
    • alicloud_ess_eci_scaling_configuration
    • alicloud_ess_lifecyclehook
    • alicloud_ess_server_group_attachment
    • alicloud_express_connect_virtual_border_router
    • alicloud_fcv2_function
    • alicloud_fcv3_function
    • alicloud_fcv3_trigger
    • alicloud_ga_acl
    • alicloud_ga_basic_accelerate_ip
    • alicloud_ga_basic_accelerator
    • alicloud_ga_basic_endpoint
    • alicloud_ga_basic_endpoint_group
    • alicloud_ga_basic_ip_set
    • alicloud_ga_domain
    • alicloud_ga_forwarding_rule
    • alicloud_hologram_instance
    • alicloud_image_share_permission
    • alicloud_kms_instance
    • alicloud_kms_network_rule
    • alicloud_kms_policy
    • alicloud_kvstore_audit_log_config
    • alicloud_log_oss_export
    • alicloud_maxcompute_project
    • alicloud_mse_engine_namespace
    • alicloud_nlb_load_balancer_security_group_attachment
    • alicloud_nlb_security_policy
    • alicloud_oos_state_configuration
    • alicloud_ram_login_profile
    • alicloud_rds_parameter_group
    • alicloud_rocketmq_consumer_group
    • alicloud_rocketmq_instance
    • alicloud_rocketmq_topic
    • alicloud_ros_template_scratch
    • alicloud_sae_config_map
    • alicloud_sae_ingress
    • alicloud_slb_tls_cipher_policy
    • alicloud_sls_alert
    • alicloud_threat_detection_instance
    • alicloud_vpc_nat_ip_cidr
    • alicloud_vpc_vswitch_cidr_reservation
    • alicloud_vpn_gateway_vpn_attachment
    • alicloud_wafv3_instance
  • ✨ Update following rules for cloudformation resources(135):

    • alicloud_adb_db_cluster
    • alicloud_alb_listener
    • alicloud_alb_load_balancer
    • alicloud_alb_rule
    • alicloud_alikafka_instance
    • alicloud_amqp_instance
    • alicloud_amqp_queue
    • alicloud_api_gateway_group
    • alicloud_api_gateway_plugin
    • alicloud_arms_alert_contact_group
    • alicloud_auto_provisioning_group
    • alicloud_cdn_domain_config
    • alicloud_cen_transit_router_peer_attachment
    • alicloud_cen_transit_router_vbr_attachment
    • alicloud_cen_transit_router_vpc_attachment
    • alicloud_click_house_db_cluster
    • alicloud_cloud_firewall_control_policy
    • alicloud_cloud_firewall_vpc_firewall_control_policy
    • alicloud_cms_dynamic_tag_group
    • alicloud_cms_event_rule
    • alicloud_cms_group_metric_rule
    • alicloud_cms_metric_rule_template
    • alicloud_common_bandwidth_package
    • alicloud_common_bandwidth_package_attachment
    • alicloud_config_compliance_pack
    • alicloud_cs_edge_kubernetes
    • alicloud_cs_kubernetes
    • alicloud_cs_kubernetes_addon
    • alicloud_cs_kubernetes_node_pool
    • alicloud_cs_managed_kubernetes
    • alicloud_cs_serverless_kubernetes
    • alicloud_db_connection
    • alicloud_db_instance
    • alicloud_db_readonly_instance
    • alicloud_dcdn_domain
    • alicloud_dfs_access_group
    • alicloud_dfs_access_rule
    • alicloud_dfs_file_system
    • alicloud_dfs_mount_point
    • alicloud_drds_polardbx_instance
    • alicloud_dts_synchronization_job
    • alicloud_ebs_disk_replica_pair
    • alicloud_ecd_simple_office_site
    • alicloud_eci_container_group
    • alicloud_ecs_auto_snapshot_policy
    • alicloud_ecs_dedicated_host
    • alicloud_ecs_deployment_set
    • alicloud_ecs_disk
    • alicloud_ecs_instance_set
    • alicloud_ecs_invocation
    • alicloud_ecs_launch_template
    • alicloud_ecs_network_interface
    • alicloud_ecs_network_interface_attachment
    • alicloud_ecs_snapshot
    • alicloud_eip_address
    • alicloud_eip_association
    • alicloud_eip_segment_address
    • alicloud_elasticsearch_instance
    • alicloud_emr_cluster
    • alicloud_emrv2_cluster
    • alicloud_ens_instance
    • alicloud_ess_alarm
    • alicloud_ess_scaling_configuration
    • alicloud_ess_scaling_group
    • alicloud_ess_scaling_rule
    • alicloud_ess_scheduled_task
    • alicloud_event_bridge_rule
    • alicloud_fc_service
    • alicloud_ga_accelerator
    • alicloud_ga_bandwidth_package
    • alicloud_ga_endpoint_group
    • alicloud_ga_listener
    • alicloud_gpdb_account
    • alicloud_gpdb_instance
    • alicloud_image
    • alicloud_instance
    • alicloud_kms_key
    • alicloud_kms_secret
    • alicloud_kvstore_connection
    • alicloud_kvstore_instance
    • alicloud_lindorm_instance
    • alicloud_log_etl
    • alicloud_log_project
    • alicloud_log_store
    • alicloud_logtail_config
    • alicloud_message_service_queue
    • alicloud_mongodb_instance
    • alicloud_mongodb_sharding_instance
    • alicloud_mse_cluster
    • alicloud_nas_access_group
    • alicloud_nas_access_rule
    • alicloud_network_acl
    • alicloud_nlb_listener
    • alicloud_nlb_load_balancer
    • alicloud_nlb_server_group
    • alicloud_oos_execution
    • alicloud_oos_patch_baseline
    • alicloud_oos_template
    • alicloud_oss_bucket
    • alicloud_ots_instance
    • alicloud_ots_search_index
    • alicloud_ots_table
    • alicloud_polardb_cluster
    • alicloud_polardb_database
    • alicloud_polardb_endpoint
    • alicloud_polardb_global_database_network
    • alicloud_privatelink_vpc_endpoint
    • alicloud_privatelink_vpc_endpoint_service
    • alicloud_pvtz_zone
    • alicloud_ram_saml_provider
    • alicloud_redis_tair_instance
    • alicloud_resource_manager_resource_group
    • alicloud_resource_manager_resource_share
    • alicloud_ros_stack
    • alicloud_ros_stack_group
    • alicloud_route_entry
    • alicloud_route_table_attachment
    • alicloud_sae_application
    • alicloud_slb_listener
    • alicloud_slb_server_group
    • alicloud_threat_detection_anti_brute_force_rule
    • alicloud_tsdb_instance
    • alicloud_vpc
    • alicloud_vpc_bgp_peer
    • alicloud_vpc_dhcp_options_set
    • alicloud_vpc_dhcp_options_set_attachment
    • alicloud_vpc_ipv4_gateway
    • alicloud_vpc_nat_ip
    • alicloud_vpc_peer_connection
    • alicloud_vpc_traffic_mirror_filter
    • alicloud_vpc_traffic_mirror_session
    • alicloud_vpn_connection
    • alicloud_vpn_customer_gateway
    • alicloud_vpn_gateway
    • alicloud_vswitch

v0.13.1

16 Aug 09:32
Compare
Choose a tag to compare

Fixes

  • 🐛 Fixed format error: TypeError: 'NoneType' object is not iterable

v0.13.0

16 Aug 07:32
Compare
Choose a tag to compare

Features

  • ✨ Adapt to TF 1.6.
  • ✨ Support Python3.12.

v0.12.0

13 Mar 08:53
136dc20
Compare
Choose a tag to compare

Features

  • ✨ Provides the ability to generate Terraform files from ROS-Wrapped Terraform template. For more details.
  • ✨ Add the --force parameter to the transform command, which allows you to overwrite existing files during file generation.

v0.11.0

19 Jan 06:34
Compare
Choose a tag to compare

Features

  • ✨ Support merging many resources into the main resource. For example, CF's EC2::VPNGateway and EC2::VPCGatewayAttachment will be merged into ROS's VPC::VpnGateway.
  • ✨ Improve the security group rule mapping for CF.
  • ✨ Indent the output logs appropriately.

Doc

  • Update supported types for CloudFormation and Terraform.

Internal

  • ✅ New MergeHandler added to transforming rules, used to handle cases where multiple properties are transformed into the same property.

v0.10.0

04 Dec 09:42
Compare
Choose a tag to compare

Features

  • ✨ Regarding YAML parsing, it supports abbreviated forms. For example, !Ref ResourceName can be parsed as {"Ref": "ResourceName"}.
  • ✨ Support for transforming AWS-specific parameter types.

Doc

  • Update the resource links generated in the document and add several CloudFormation resource transform mapping lists.

Internal

  • ✅ Completely reconstructed the implementation of converting AWS CloudFormation to ROS templates. Fixed the error-prone implementation that relied on string replacement.
  • ✅ Format CloudFormation rules.

v0.9.0

22 Nov 08:58
Compare
Choose a tag to compare

Features

  • ✨ Add following rules for cloudformation resources(41):
    • AWS::ACMPCA::Certificate
    • AWS::ApiGateway::Deployment
    • AWS::ApiGatewayV2::Api
    • AWS::ApiGatewayV2::Deployment
    • AWS::AutoScaling::LaunchConfiguration
    • AWS::AutoScaling::ScalingPolicy
    • AWS::CloudFormation::CustomResource
    • AWS::CloudFormation::Stack
    • AWS::CloudFormation::WaitConditionHandle
    • AWS::CloudTrail::Trail
    • AWS::Config::DeliveryChannel
    • AWS::DynamoDB::Table
    • AWS::EC2::KeyPair
    • AWS::EC2::LaunchTemplate
    • AWS::EC2::NatGateway
    • AWS::EC2::NetworkAcl
    • AWS::EC2::NetworkInterfacePermission
    • AWS::EC2::PrefixList
    • AWS::EC2::SecurityGroupEgress
    • AWS::EC2::SecurityGroupIngress
    • AWS::ECR::Repository
    • AWS::EFS::FileSystem
    • AWS::EFS::MountTarget
    • AWS::ElasticLoadBalancingV2::Listener
    • AWS::ElasticLoadBalancingV2::ListenerCertificate
    • AWS::ElasticLoadBalancingV2::ListenerRule
    • AWS::ElasticLoadBalancingV2::LoadBalancer
    • AWS::EMR::Cluster
    • AWS::Events::Rule
    • AWS::GlobalAccelerator::Accelerator
    • AWS::GlobalAccelerator::EndpointGroup
    • AWS::GlobalAccelerator::Listener
    • AWS::IAM::ManagedPolicy
    • AWS::IAM::SAMLProvider
    • AWS::KMS::Alias
    • AWS::KMS::Key
    • AWS::Lambda::Alias
    • AWS::Lambda::Function
    • AWS::Lambda::Version
    • AWS::Organizations::Account
    • AWS::S3::Bucket
  • ✨ Update following rules for cloudformation resources(36):
    • AWS::AutoScaling::AutoScalingGroup
    • AWS::AutoScaling::LifecycleHook
    • AWS::CloudFormation::WaitCondition
    • AWS::EC2::EIP
    • AWS::EC2::EIPAssociation
    • AWS::EC2::Instance
    • AWS::EC2::InternetGateway
    • AWS::EC2::NetworkInterface
    • AWS::EC2::NetworkInterfaceAttachment
    • AWS::EC2::Route
    • AWS::EC2::RouteTable
    • AWS::EC2::SecurityGroup
    • AWS::EC2::Subnet
    • AWS::EC2::SubnetRouteTableAssociation
    • AWS::EC2::Volume
    • AWS::EC2::VolumeAttachment
    • AWS::EC2::VPC
    • AWS::EC2::VPNGateway
    • AWS::ElasticLoadBalancing::LoadBalancer
    • AWS::IAM::AccessKey
    • AWS::IAM::Group
    • AWS::IAM::Policy
    • AWS::IAM::Role
    • AWS::IAM::User
    • AWS::IAM::UserToGroupAddition
    • AWS::RDS::DBInstance

Internal

  • ✅ rostool cli not supports generating rules files from AWS CloudFormation to ROS
  • ✅ add several handlers:
    • tags_list_to_dict
    • ec2_network_interface_ipv6_addresses
    • ec2_network_interface_private_addresses

v0.8.0

07 Nov 08:36
Compare
Choose a tag to compare

Features

When transforming Terraform templates:

  • ✨ Support transform of resources using count
  • ✨ Support transform of complex resource references in outputs
    • Traverse references, such as alicloud_vswitch.multi_vsws.*.id
    • Index references, such as alicloud_vswitch.multi_vsws.0.id

v0.7.0

25 Oct 10:18
Compare
Choose a tag to compare

Features

  • ✨ Support multi-level mapping and support the following resources:
    • alicloud_dts_migration_job
    • alicloud_dts_synchronization_job
    • alicloud_log_etl
    • alicloud_nlb_load_balancer
    • alicloud_ram_policy
    • alicloud_ros_stack
    • alicloud_ros_stack_group
    • alicloud_ros_stack_instance
    • alicloud_slb_listener
    • alicloud_slb_rule
    • alicloud_slb_server_group_server_attachment
    • alicloud_vpc_network_acl_attachment
    • alicloud_vswitch
    • alicloud_ecp_instance
    • alicloud_ga_ip_set
    • alicloud_hbr_ecs_backup_client
    • alicloud_ots_search_index
    • alicloud_log_machine_group
  • ✨ Resource IDs support multiple attribute combinations and support the following resources:
    • alicloud_adb_account
    • alicloud_alikafka_topic
    • alicloud_amqp_virtual_host
    • alicloud_cen_route_service
    • alicloud_cen_transit_router_route_table_association
    • alicloud_cen_transit_router_route_table_propagation
    • alicloud_cen_transit_router_vbr_attachment
    • alicloud_cloud_connect_network_grant
    • alicloud_cr_ee_repo
    • alicloud_cr_repo
    • alicloud_cs_kubernetes_addon
    • alicloud_datahub_topic
    • alicloud_db_connection
    • alicloud_db_database
    • alicloud_ecs_network_interface_attachment
    • alicloud_eipanycast_anycast_eip_address_attachment
    • alicloud_event_bridge_rule
    • alicloud_fnf_schedule
    • alicloud_ga_bandwidth_package_attachment
    • alicloud_kvstore_account
    • alicloud_log_alert
    • alicloud_log_store
    • alicloud_mns_topic_subscription
    • alicloud_ons_topic
    • alicloud_pvtz_user_vpc_authorization
    • alicloud_resource_manager_control_policy_attachment
    • alicloud_resource_manager_policy_attachment
    • alicloud_slb_attachment
    • alicloud_slb_domain_extension
    • alicloud_vpc_dhcp_options_set_attachment
    • alicloud_vpn_pbr_route_entry
    • alicloud_vpn_route_entry
    • alicloud_waf_domain

Internal

  • ✅ Add handler kv_list_to_map_wrapper which convert a list containing dictionaries with key-value pairs into a dictionary.
  • ✅ Terraform transform rule supports different levels of property mapping. And support multi-level mapping with output attributes.
  • ✅ The Properties.To field in Terraform transform rules is optional. Leaving it blank means that the current field will not be mapped, but its child fields will be mapped.
  • Attributes.To in Terraform transform rules supports list types. In combination with Handler, multiple attributes can be merged into one value.
  • ✅ Add replace_slash_to_colon to handler.