{"id":13451715,"url":"https://github.com/vmware-archive/terraforming-vsphere","last_synced_at":"2025-03-23T19:32:23.689Z","repository":{"id":66820356,"uuid":"110184067","full_name":"vmware-archive/terraforming-vsphere","owner":"vmware-archive","description":"use terraform, deploy yourself a pcf","archived":true,"fork":false,"pushed_at":"2020-08-28T17:05:24.000Z","size":62,"stargazers_count":26,"open_issues_count":0,"forks_count":14,"subscribers_count":16,"default_branch":"master","last_synced_at":"2024-12-19T00:04:58.398Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vmware-archive.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-11-10T00:56:01.000Z","updated_at":"2024-08-27T14:57:36.000Z","dependencies_parsed_at":"2023-07-08T10:01:28.454Z","dependency_job_id":null,"html_url":"https://github.com/vmware-archive/terraforming-vsphere","commit_stats":null,"previous_names":["pivotal-cf/terraforming-vsphere"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fterraforming-vsphere","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fterraforming-vsphere/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fterraforming-vsphere/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fterraforming-vsphere/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vmware-archive","download_url":"https://codeload.github.com/vmware-archive/terraforming-vsphere/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245158066,"owners_count":20570115,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T07:01:00.174Z","updated_at":"2025-03-23T19:32:23.289Z","avatar_url":"https://github.com/vmware-archive.png","language":"HCL","funding_links":[],"categories":["HCL"],"sub_categories":[],"readme":"# DEPRECATION\n\nThis repo is going to be archived.\nThe terraform templates that _should_ be used for deploying an Ops Manager, PAS and/or PKS, can be found at https://github.com/pivotal/paving\nNo PRs or Issues will be responded to here.\n\n# Terraforming vSphere\n\nPlease note that the master branch is generally *unstable*.\nIf you are looking for something \"tested\", please consume one\nof our [releases](https://github.com/pivotal-cf/terraforming-vsphere/releases).\n\n## What Does This Do?\n\nYou will get a booted ops-manager VM plus some networking.\n\n## Looking to setup a different IAAS?\n\n- [aws](https://github.com/pivotal-cf/terraforming-aws)\n- [azure](https://github.com/pivotal-cf/terraforming-azure)\n- [gcp](https://github.com/pivotal-cf/terraforming-gcp)\n- [openstack](https://github.com/pivotal-cf/terraforming-openstack)\n\n### Prerequisites\n\nYour system needs `terraform`:\n\n```bash\nbrew update\nbrew install terraform\n```\n\nThe vCenter Role must have the following privileges:\n\n  1. Datastore\n  1. Folder (all)\n  1. Network\n  1. Resource\n  1. Virtual Machine\n  1. vCenter Inventory Service\n  1. License\n\nRefer to [vSphere Terraform Provider documentation](https://www.terraform.io/docs/providers/vsphere/index.html).\n\n## Are you using Platform Automation?\nSkip the creation of the Ops Manager VM to use Platform Automation. Be sure to include `om_vm = false` in your [vars](/README.md#var-details). If you create your Ops Manager using terraform, you will not be able to manage it with [Platform Automation](https://docs.pivotal.io/platform-automation).\n\nDeployment of the infrastructure is still required.\n\n### Var File\nCopy the stub content below into a file called `terraform.tfvars` and put it in the root of this project.\nThese vars will be used when you run `terraform  apply`.\nYou should fill in the stub values with the correct content.\n\n```hcl\nenv_name              = \"some-env\"\nvcenter_user          = \"some-user\"\nvcenter_password      = \"some-password\"\nvcenter_server        = \"some-server\"\nvcenter_dc            = \"some-datacenter\"\nvcenter_cluster       = \"some-cluster\"\nvcenter_rp            = \"some-cluster/some-resource-pool\"\nvcenter_ds            = \"some-datastore\"\nom_ipv4_address       = \"x.x.x.x\"\nom_netmask0           = \"255.x.x.x\"\nom_gateway            = \"x.x.x.x\"\nom_DNS                = \"x.x.x.x\"\nom_ntp_servers        = \"x.x.x.x\"\nom_admin_password     = \"some-password\"\nom_custom_hostname    = \"some-hostname\"\nvcenter_network       = \"some-network\"\nvcenter_vms           = \"some-parent-folder/some-vms-folder\"\nom_template           = \"some-ops-manager-template\"\n```\n\n### Var Details\n- env_name: **(required)** Environment name.\n- vsphere_user: **(required)** Username for vSphere API operations.\n- vsphere_password: **(required)** Password for vSphere API operations.\n- vsphere_server: **(required)** vCenter server name for vSphere API operations.\n- vcenter_dc: **(required)** Datacenter for launching vms.\n- vcenter_cluster: **(required)** Cluster for launching vms.\n- vcenter_ds: **(required)** Datastore for the virtual disks.\n- om_ipv4_address: **(optional)** OpsMgr static IPv4 address. Leave unset if DHCP is desired.\n- om_netmask0: **(optional)** OpsMgr netmask. Leave unset if DHCP is desired.\n- om_gateway: **(optional)** OpsMgr gateway. Leave unset if DHCP is desired.\n- om_DNS: **(optional)** OpsMgr DNS Servers, comma separated. Leave unset if DHCP is desired.\n- om_ntp_servers: **(required)** OpsMgr NTP Servers, comma separated.\n- om_admin_password: **(required)** OpsMgr VM password. The username is 'ubuntu'.\n- om_custom_hostname: **(optional)** OpsMgr Hostname. Default is 'pivotal-ops-manager'.\n- vcenter_network: **(required)** Label for the network interface.\n- vcenter_vms: **(required)** Folder for launching vms.\n\n- vcenter_rp: **(optional)** Resource Pool for launching vms.\n\n- om_template: **(optional)** Ops Manager vm template.\n- om_vmdk: **(optional)** If not specifying `vcenter_template`, specify path to a vmdk in the `vcenter_ds`.\n\n- allow_unverified_ssl: **(optional)** Defaults to false. Set to true if your vcenter uses self-signed certs.\n\n\n## Running\n\nNote: please make sure you have created the `terraform.tfvars` file above as mentioned.\n\n### Standing up environment\n\n```bash\nterraform init\nterraform plan -out=plan\nterraform apply\n```\n\n### Tearing down environment\n\n**Note:** This will only destroy resources deployed by Terraform. You will need to clean up anything deployed on top of that infrastructure yourself. On a vanilla vSphere deployment, running `om delete-installation` first will suffice. If you are using PAS with NSX-T, in order to clean up all NSX-T resources you will need to run `cf delete-org $orgname` for every org in your CF deployment.\n\n```bash\nterraform destroy\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmware-archive%2Fterraforming-vsphere","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvmware-archive%2Fterraforming-vsphere","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmware-archive%2Fterraforming-vsphere/lists"}