Skip to content

Commit

Permalink
Add proxmox provider to the README
Browse files Browse the repository at this point in the history
  • Loading branch information
giodamelio committed Feb 28, 2021
1 parent dcda062 commit 2e6d6ba
Showing 1 changed file with 32 additions and 29 deletions.
61 changes: 32 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# Go Discover Nodes for Cloud Providers [![Build Status](https://travis-ci.org/hashicorp/go-discover.svg?branch=master)](https://travis-ci.org/hashicorp/go-discover) [![GoDoc](https://godoc.org/github.com/hashicorp/go-discover?status.svg)](https://godoc.org/github.com/hashicorp/go-discover)


`go-discover` is a Go (golang) library and command line tool to discover
ip addresses of nodes in cloud environments based on meta information
like tags provided by the environment.

The configuration for the providers is provided as a list of `key=val key=val
...` tuples. If either the key or the value contains a space (` `), a backslash
The configuration for the providers is provided as a list of `key=val key=val ...` tuples. If either the key or the value contains a space (` `), a backslash
(`\`) or double quotes (`"`) then it needs to be quoted with double quotes.
Within a quoted string you can use the backslash to escape double quotes or the
backslash itself, e.g. `key=val "some key"="some value"`
Expand All @@ -21,26 +19,27 @@ sub packages. Additional providers can be added through the
[Register](https://godoc.org/github.com/hashicorp/go-discover#Register)
function.

* Aliyun (Alibaba) Cloud [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/aliyun/aliyun_discover.go#L15-L28)
* Amazon AWS [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/aws/aws_discover.go#L19-L33)
* DigitalOcean [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/digitalocean/digitalocean_discover.go#L16-L24)
* Google Cloud [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/gce/gce_discover.go#L17-L37)
* Linode [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/linode/linode_discover.go#L30-L41)
* mDNS [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/mdns/mdns_provider.go#L19-L31)
* Microsoft Azure [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/azure/azure_discover.go#L16-L37)
* Openstack [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/os/os_discover.go#L23-L38)
* Scaleway [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/scaleway/scaleway_discover.go#L14-L22)
* SoftLayer [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/softlayer/softlayer_discover.go#L16-L25)
* TencentCloud [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/tencentcloud/tencentcloud_discover.go#L23-L37)
* Triton [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/triton/triton_discover.go#L17-L27)
* vSphere [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/vsphere/vsphere_discover.go#L148-L155)
* Packet [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/packet/packet_discover.go#L25-L35)
- Aliyun (Alibaba) Cloud [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/aliyun/aliyun_discover.go#L15-L28)
- Amazon AWS [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/aws/aws_discover.go#L19-L33)
- DigitalOcean [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/digitalocean/digitalocean_discover.go#L16-L24)
- Google Cloud [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/gce/gce_discover.go#L17-L37)
- Linode [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/linode/linode_discover.go#L30-L41)
- mDNS [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/mdns/mdns_provider.go#L19-L31)
- Microsoft Azure [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/azure/azure_discover.go#L16-L37)
- Openstack [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/os/os_discover.go#L23-L38)
- Scaleway [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/scaleway/scaleway_discover.go#L14-L22)
- SoftLayer [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/softlayer/softlayer_discover.go#L16-L25)
- TencentCloud [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/tencentcloud/tencentcloud_discover.go#L23-L37)
- Triton [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/triton/triton_discover.go#L17-L27)
- vSphere [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/vsphere/vsphere_discover.go#L148-L155)
- Packet [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/packet/packet_discover.go#L25-L35)
- Proxmox [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/proxmox/proxmox_discover.go#L14-L23)

The following providers are implemented in the go-discover/provider subdirectory
but aren't automatically registered. If you want to support these providers,
register them manually:

* Kubernetes [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/k8s/k8s_discover.go#L32-L51)
- Kubernetes [Config options](https://github.com/hashicorp/go-discover/blob/master/provider/k8s/k8s_discover.go#L32-L51)

HashiCorp maintains acceptance tests that regularly allocate and run tests with
real resources to verify the behavior of several of these providers. Those
Expand Down Expand Up @@ -91,6 +90,9 @@ provider=vsphere category_name=consul-role tag_name=consul-server host=... user=
# Packet
provider=packet auth_token=token project=uuid url=... address_type=...
# Proxmox
provider=proxmox api_host=... api_token_id=... api_token_secret=... api_skip_tls_verify=[skip|verify] pool_name=...
# Kubernetes
provider=k8s label_selector="app = consul-server"
```
Expand Down Expand Up @@ -166,7 +168,7 @@ sub-package.

## Testing

**Note: Due to the `go.sum` checksum errors referenced in [#68](https://github.com/hashicorp/go-discover/issues/68),
**Note: Due to the `go.sum` checksum errors referenced in [#68](https://github.com/hashicorp/go-discover/issues/68),
you will need Go 1.11.4+ to build/test go-discover.**

Configuration tests can be run with Go:
Expand Down Expand Up @@ -232,19 +234,19 @@ tests for some of the providers.

1. Go to https://console.cloud.google.com/
1. IAM & Admin / Settings:
* Create Project, e.g. `discover`
* Write down the `Project ID`, e.g. `discover-xxx`
- Create Project, e.g. `discover`
- Write down the `Project ID`, e.g. `discover-xxx`
1. Billing: Ensure that the project is linked to a billing account
1. API Manager / Dashboard: Enable the following APIs
* Google Compute Engine API
- Google Compute Engine API
1. IAM & Admin / Service Accounts: Create Service Account
* Service account name: `admin`
* Roles:
* `Project/Service Account Actor`
* `Compute Engine/Compute Instance Admin (v1)`
* `Compute Engine/Compute Security Admin`
* Furnish a new private key: `yes`
* Key type: `JSON`
- Service account name: `admin`
- Roles:
- `Project/Service Account Actor`
- `Compute Engine/Compute Instance Admin (v1)`
- `Compute Engine/Compute Security Admin`
- Furnish a new private key: `yes`
- Key type: `JSON`
1. The credentials file `discover-xxx.json` will have been downloaded
automatically to your machine
1. Source the contents of the credentials file into the `GOOGLE_CREDENTIALS`
Expand Down Expand Up @@ -302,4 +304,5 @@ export ARM_SUBSCRIPTION_ID=subscription_id
# 6. Test the credentials
$ az vm list-sizes --location 'West Europe'
```

</details>

0 comments on commit 2e6d6ba

Please sign in to comment.