#!/usr/bin/env python import json import sys try: tf_plan_json = json.loads(sys.stdin.read()) items_to_delete = [] items_to_import = [] resources = tf_plan_json['resource_changes'] for resource in resources: if 'change' in resource: if 'actions' in resource['change']: if 'delete' in resource['change']['actions']: res = '.'.join(resource['address'].split('.')[:2]) cmd = 'terraform state rm {}'.format(res) if cmd not in items_to_delete: items_to_delete.append(cmd) items_to_import.append('terraform import {} {}'.format( resource['address'], resource['change']['before']['id'] )) for item in items_to_delete: print(item) for item in items_to_import: print(item) except json.JSONDecodeError as e: print('Please provide a valid JSON') raise e