{"_id":"@brave/cf2tf","_rev":"15-aac3ac41109e09dec6da18ccde0ff04a","name":"@brave/cf2tf","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@brave/cf2tf","version":"1.0.0","author":{"name":"devops@brave.com"},"license":"MPL-2.0","_id":"@brave/cf2tf@1.0.0","maintainers":[{"name":"bcrypt","email":"yan@mit.edu"},{"name":"brave-kevin","email":"klawler@brave.com"},{"name":"brave.com","email":"devops@brave.com"},{"name":"bravescott","email":"scott@brave.com"},{"name":"brianbondy","email":"netzen@gmail.com"},{"name":"evq","email":"ev@7pr.xyz"},{"name":"mrose17","email":"mrose17@gmail.com"},{"name":"nejczdovc","email":"nejc.zdovc@3zsistemi.si"}],"homepage":"https://github.com/brave/cf2tf","bugs":{"url":"https://github.com/brave/cf2tf/issues"},"bin":{"cf2tf":"./bin/cf2tf"},"dist":{"shasum":"8a901c3ffe8c35907de1d6965a4a3cf9b8de4e9d","tarball":"https://registry.npmjs.org/@brave/cf2tf/-/cf2tf-1.0.0.tgz","fileCount":5,"integrity":"sha512-OY9+XHF2F6iLelsi7Zf5AwCbT9bRv1GYd0gQtpNttsR9v67kGdTekS2fOTHD6JoqX2XSlryWOIHEI1+YZkqkeQ==","signatures":[{"sig":"MEUCIQDdQgTDyVQHULBlV9nQtzYzTqcn2YuVMURWr0EVKJHYuQIgV79wG2gomgWNL6Y/rLf3Wx48lTQuVrCcTVYSX5RaFTg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23853},"main":"cli.js","gitHead":"ae25a0403ddf6e0e1b4a003a6ed27195fbfbbb5a","scripts":{"lint":"standard","test":"standard"},"_npmUser":{"name":"brave.com","email":"devops@brave.com"},"repository":{"url":"git+https://github.com/brave/cf2tf.git","type":"git"},"_npmVersion":"5.6.0","description":"A Terraform importer for Cloudflare resources inspired by terraforming","directories":{},"_nodeVersion":"9.4.0","dependencies":{"yargs":"^8.0.2","cloudflare":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"standard":"^10.0.3"},"_npmOperationalInternal":{"tmp":"tmp/cf2tf_1.0.0_1518132535272_0.18023364993875757","host":"s3://npm-registry-packages"}}},"time":{"created":"2018-02-08T23:28:55.149Z","modified":"2026-06-18T20:53:47.964Z","1.0.0":"2018-02-08T23:28:55.337Z"},"bugs":{"url":"https://github.com/brave/cf2tf/issues"},"author":{"name":"devops@brave.com"},"license":"MPL-2.0","homepage":"https://github.com/brave/cf2tf","repository":{"url":"git+https://github.com/brave/cf2tf.git","type":"git"},"description":"A Terraform importer for Cloudflare resources inspired by terraforming","maintainers":[{"email":"yan@mit.edu","name":"bcrypt"},{"email":"bbondy@gmail.com","name":"brianbondy"},{"email":"devops@brave.com","name":"brave.com"},{"email":"darkdh@gmail.com","name":"darkdh"},{"email":"mrose17@gmail.com","name":"mrose17"},{"email":"miller.pete+npm@gmail.com","name":"petemill"},{"email":"sceli@brave.com","name":"claucece9"},{"email":"pes@peteresnyder.com","name":"pes10k"},{"email":"jjdsampson@gmail.com","name":"jonathansampson"},{"email":"alazarev@brave.com","name":"antonok"}],"readme":"# cf2tf: Cloudflare to Terraform\n\nA Terraform importer for Cloudflare resources inspired by [terraforming](https://github.com/dtan4/terraforming).\n\n## Installation\n```\ngit clone https://github.com/brave/cf2tf\nnpm install -g\n```\n## Prerequisites\nYou must export your Cloudflare credentials:\n```\nexport CLOUDFLARE_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\nexport CLOUDFLARE_EMAIL=xxx@xxx.xxx\n```\n\n## Usage\n```\n$ cf2tf --help\nCommands:\n  dns  import dns records\n\nOptions:\n  --help  Show help                                                    [boolean]\n  --tfstate  output tfstate                                     [default: false]\n```\n\n```\n$ cf2tf dns --help\ncf2tf dns\n\nOptions:\n  --help     Show help                                                 [boolean]\n  --tfstate  output tfstate                                     [default: false]\n  --zone     limit to a particular zone by name                    [default: \"\"]\n```\n\n### Example\nThe following example shows simulated output for a domain `mysite.com`\nwhich has a single record, an apex CNAME to `mysite.org`\n```\n$ cf2tf dns --zone mysite.com > main.tf\n$ cat main.tf\n{\n    \"resource\": {\n        \"cloudflare_record\": {\n            \"mysite_com_CNAME_mysite_org\": {\n                \"domain\": \"mysite.com\",\n                \"name\": \"mysite.com\",\n                \"value\": \"mysite.org\",\n                \"type\": \"CNAME\",\n                \"proxied\": false\n            }\n        }\n    }\n}\n$ cf2tf dns --zone mysite.com --tfstate > terraform.tfstate\n$ cat terraform.tfstate\n{\n    \"version\": 1,\n    \"serial\": 1,\n    \"modules\": [\n        {\n            \"path\": [\n                \"root\"\n            ],\n            \"outputs\": {},\n            \"resources\": {\n                \"cloudflare_record.mysite_com_CNAME_mysite_org\": {\n                    \"type\": \"cloudflare_record\",\n                    \"depends_on\": [],\n                    \"primary\": {\n                        \"id\": \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n                        \"attributes\": {\n                            \"domain\": \"mysite.com\",\n                            \"hostname\": \"mysite.com\",\n                            \"id\": \"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n                            \"name\": \"mysite.com\",\n                            \"priority\": \"0\",\n                            \"proxied\": \"false\",\n                            \"ttl\": \"1\",\n                            \"type\": \"CNAME\",\n                            \"value\": \"mysite.org\",\n                            \"zone_id\": \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\"\n                        },\n                        \"meta\": {\n                            \"schema_version\": \"1\"\n                        },\n                        \"tainted\": false\n                    },\n                    \"deposed\": [],\n                    \"provider\": \"\"\n                }\n            },\n            \"depends_on\": []\n        }\n    ]\n}\n```\n\n## Notes\n\nUnlike terraforming, cf2tf outputs in the [Terraform JSON configuration\nformat](https://www.terraform.io/docs/configuration/syntax.html). This can\neasily converted to hcl format via a tool like [json2hcl](https://github.com/kvz/json2hcl).\n","readmeFilename":"README.md"}