Skip to content

Commit 813a5d8

Browse files
author
Ryan Johnson
committed
docs: update README.md
Updates the `README.md` for accuracy, readability, and maintainability: - Update the vSphere versions to refer to the VMware Product Lifecycle Matrix. - Add comment to disable `markdownlint` check for an H1 on the first line. - Moves all markdown links to the bottom of the file and use markdown references. - Condenses unordered lists markdown. - Removes links to notable projects that are not longer active. - Updatds links to the Terraform Provider for vSphere and Packer Plugin for vSphere. Signed-off-by: Ryan Johnson <[email protected]>
1 parent 8f5c496 commit 813a5d8

File tree

1 file changed

+87
-79
lines changed

1 file changed

+87
-79
lines changed

README.md

Lines changed: 87 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,33 @@
1-
[![Build](https://github.com/vmware/govmomi/actions/workflows/govmomi-build.yaml/badge.svg)](https://github.com/vmware/govmomi/actions/workflows/govmomi-build.yaml)
2-
[![Tests](https://github.com/vmware/govmomi/actions/workflows/govmomi-go-tests.yaml/badge.svg)](https://github.com/vmware/govmomi/actions/workflows/govmomi-go-tests.yaml)
3-
[![Go Report Card](https://goreportcard.com/badge/github.com/vmware/govmomi)](https://goreportcard.com/report/github.com/vmware/govmomi)
4-
[![Latest Release](https://img.shields.io/github/release/vmware/govmomi.svg?logo=github&style=flat-square)](https://github.com/vmware/govmomi/releases/latest)
5-
[![Go Reference](https://pkg.go.dev/badge/github.com/vmware/govmomi.svg)](https://pkg.go.dev/github.com/vmware/govmomi)
6-
[![go.mod Go version](https://img.shields.io/github/go-mod/go-version/vmware/govmomi)](https://github.com/vmware/govmomi)
1+
<!-- markdownlint-disable first-line-h1 no-inline-html -->
2+
3+
[![Build](https://github.com/vmware/govmomi/actions/workflows/govmomi-build.yaml/badge.svg)][ci-build]
4+
[![Tests](https://github.com/vmware/govmomi/actions/workflows/govmomi-go-tests.yaml/badge.svg)][ci-tests]
5+
[![Go Report Card](https://goreportcard.com/badge/github.com/vmware/govmomi)][go-report-card]
6+
[![Latest Release](https://img.shields.io/github/release/vmware/govmomi.svg?logo=github&style=flat-square)][latest-release]
7+
[![Go Reference](https://pkg.go.dev/badge/github.com/vmware/govmomi.svg)][go-reference]
8+
[![go.mod Go version](https://img.shields.io/github/go-mod/go-version/vmware/govmomi)][go-version]
79

810
# govmomi
911

10-
A Go library for interacting with VMware vSphere APIs (ESXi and/or vCenter).
12+
A Go library for interacting with VMware vSphere APIs (ESXi and/or vCenter Server).
1113

1214
In addition to the vSphere API client, this repository includes:
1315

14-
* [govc](./govc) - vSphere CLI
15-
16-
* [vcsim](./vcsim) - vSphere API mock framework
17-
18-
* [toolbox](./toolbox) - VM guest tools framework
16+
* [govc][govc] - vSphere CLI
17+
* [vcsim][vcsim] - vSphere API mock framework
18+
* [toolbox][toolbox] - VM guest tools framework
1919

2020
## Compatibility
2121

22-
This library is built for and tested against ESXi and vCenter 6.5, 6.7 and 7.0.
22+
This library supports vCenter Server and ESXi versions following the [VMware Product Lifecycle Matrix][reference-lifecycle].
2323

24-
It may work with versions 5.1, 5.5 and 6.0, but neither are officially supported.
24+
Product versions that are end of support may work, but are not officially supported.
2525

2626
## Documentation
2727

28-
The APIs exposed by this library very closely follow the API described in the [VMware vSphere API Reference Documentation][apiref].
29-
Refer to this document to become familiar with the upstream API.
30-
31-
The code in the `govmomi` package is a wrapper for the code that is generated from the vSphere API description.
32-
It primarily provides convenience functions for working with the vSphere API.
33-
See [godoc.org][godoc] for documentation.
28+
The APIs exposed by this library closely follow the API described in the [VMware vSphere API Reference Documentation][reference-api]. Refer to the documentation to become familiar with the upstream API.
3429

35-
[apiref]:https://code.vmware.com/apis/968/vsphere
36-
[godoc]:http://godoc.org/github.com/vmware/govmomi
30+
The code in the `govmomi` package is a wrapper for the code that is generated from the vSphere API description. It primarily provides convenience functions for working with the vSphere API. See [godoc.org][reference-godoc] for documentation.
3731

3832
## Installation
3933

@@ -45,79 +39,93 @@ go get -u github.com/vmware/govmomi
4539

4640
### Binaries and Docker Images for `govc` and `vcsim`
4741

48-
Installation instructions, released binaries and Docker images are documented in
49-
the respective README files of [`govc`](govc/README.md) and
50-
[`vcsim`](vcsim/README.md).
42+
Installation instructions, released binaries, and Docker images are documented in the respective README files of [`govc`][govc] and [`vcsim`][vcsim].
5143

5244
## Discussion
5345

54-
Contributors and users are encouraged to collaborate using GitHub issues and/or
55-
[Slack](https://vmwarecode.slack.com/messages/govmomi).
56-
Access to Slack requires a [VMware {code} membership](https://code.vmware.com/join/).
57-
58-
## Status
59-
60-
Changes to the API are subject to [semantic versioning](http://semver.org).
61-
62-
Refer to the [CHANGELOG](CHANGELOG.md) for version to version changes.
63-
64-
## Projects using govmomi
65-
* [Elastic Agent VMware vSphere integration](https://github.com/elastic/integrations/tree/main/packages/vsphere)
66-
67-
* [collectd-vsphere](https://github.com/travis-ci/collectd-vsphere)
68-
69-
* [Docker Machine](https://github.com/docker/machine/tree/master/drivers/vmwarevsphere)
70-
71-
* [Docker InfraKit](https://github.com/docker/infrakit/tree/master/pkg/provider/vsphere)
72-
73-
* [Docker LinuxKit](https://github.com/linuxkit/linuxkit/tree/master/src/cmd/linuxkit)
46+
The project encourages the community to collaborate using GitHub [issues][govmomi-github-issues], GitHub [discussions][govmomi-github-discussions], and [Slack][slack-channel].
7447

75-
* [Gru](https://github.com/dnaeon/gru)
48+
> **Note**
49+
> Access to Slack requires a free [VMware {code}][slack-join] developer program membership.
7650
77-
* [Juju](https://github.com/juju/juju)
78-
79-
* [Kubernetes vSphere Cloud Provider](https://github.com/kubernetes/cloud-provider-vsphere)
80-
81-
* [Kubernetes Cluster API](https://github.com/kubernetes-sigs/cluster-api-provider-vsphere)
82-
83-
* [Kubernetes kops](https://github.com/kubernetes/kops/tree/master/upup/pkg/fi/cloudup/vsphere)
84-
85-
* [Libretto](https://github.com/apcera/libretto/tree/master/virtualmachine/vsphere)
86-
87-
* [Open Storage](https://github.com/libopenstorage/openstorage/tree/master/pkg/storageops/vsphere)
88-
89-
* [OPS](https://github.com/nanovms/ops)
90-
91-
* [Packer](https://github.com/jetbrains-infra/packer-builder-vsphere)
92-
93-
* [Rancher](https://github.com/rancher/rancher/blob/master/pkg/api/norman/customization/vsphere/listers.go)
94-
95-
* [Terraform](https://github.com/terraform-providers/terraform-provider-vsphere)
96-
97-
* [Travis CI](https://github.com/travis-ci/jupiter-brain)
98-
99-
* [Telegraf](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/vsphere)
51+
## Status
10052

101-
* [VMware Event Broker Appliance](https://github.com/vmware-samples/vcenter-event-broker-appliance/tree/development/vmware-event-router)
53+
Changes to the API are subject to [semantic versioning][reference-semver].
10254

103-
* [VMware VIC Engine](https://github.com/vmware/vic)
104-
105-
* [vSphere 7.0](https://docs.vmware.com/en/VMware-vSphere/7.0/rn/vsphere-esxi-vcenter-server-7-vsphere-with-kubernetes-release-notes.html)
55+
Refer to the [CHANGELOG][govmomi-changelog] for version to version changes.
10656

107-
## Related projects
57+
## Notable Projects Using govmomi
10858

109-
* [rbvmomi](https://github.com/vmware/rbvmomi)
59+
* [collectd-vsphere][project-travisci-collectd-vsphere]
60+
* [Docker LinuxKit][project-docker-linuxKit]
61+
* [Elastic Agent VMware vSphere integration][project-elastic-agent]
62+
* [Gru][project-gru]
63+
* [Juju][project-juju]
64+
* [Jupiter Brain][project-travisci-jupiter-brain]
65+
* [Kubernetes vSphere Cloud Provider][project-k8s-cloud-provider]
66+
* [Kubernetes Cluster API][project-k8s-cluster-api]
67+
* [OPS][project-nanovms-ops]
68+
* [Packer Plugin for VMware vSphere][project-hashicorp-packer-plugin-vsphere]
69+
* [Rancher][project-rancher]
70+
* [Terraform Provider for VMware vSphere][project-hashicorp-terraform-provider-vsphere]
71+
* [Telegraf][project-influxdata-telegraf]
72+
* [VMware Event Broker Appliance][project-vmware-veba]
73+
* [VMware vSphere Integrated Containers Engine][project-vmware-vic]
74+
* [VMware vSphere 7.0][project-vmware-vsphere]
11075

111-
* [pyvmomi](https://github.com/vmware/pyvmomi)
76+
## Related Projects
11277

113-
* [go-vmware-nsxt](https://github.com/vmware/go-vmware-nsxt)
78+
* [go-vmware-nsxt][reference-go-vmware-nsxt]
79+
* [pyvmomi][reference-pyvmomi]
80+
* [rbvmomi][reference-rbvmomi]
11481

11582
## License
11683

117-
govmomi is available under the [Apache 2 license](LICENSE.txt).
84+
govmomi is available under the [Apache 2 License][govmomi-license].
11885

11986
## Name
12087

121-
Pronounced "go-v-mom-ie"
88+
Pronounced: _go·​v·​mom·​ie_
12289

12390
Follows pyvmomi and rbvmomi: language prefix + the vSphere acronym "VM Object Management Infrastructure".
91+
92+
[//]: Links
93+
94+
[ci-build]: https://github.com/vmware/govmomi/actions/workflows/govmomi-build.yaml
95+
[ci-tests]: https://github.com/vmware/govmomi/actions/workflows/govmomi-go-tests.yaml
96+
[latest-release]: https://github.com/vmware/govmomi/releases/latest
97+
[govc]: govc/README.md
98+
[govmomi-github-issues]: https://github.com/vmware/govmomi/issues
99+
[govmomi-github-discussions]: https://github.com/vmware/govmomi/discussions
100+
[govmomi-changelog]: CHANGELOG.md
101+
[govmomi-license]: LICENSE.txt
102+
[go-reference]: https://pkg.go.dev/github.com/vmware/govmomi
103+
[go-report-card]: https://goreportcard.com/report/github.com/vmware/govmomi
104+
[go-version]: https://github.com/vmware/govmomi
105+
[project-docker-linuxKit]: https://github.com/linuxkit/linuxkit/tree/master/src/cmd/linuxkit
106+
[project-elastic-agent]: https://github.com/elastic/integrations/tree/main/packages/vsphere
107+
[project-gru]: https://github.com/dnaeon/gru
108+
[project-hashicorp-packer-plugin-vsphere]: https://github.com/hashicorp/packer-plugin-vsphere
109+
[project-hashicorp-terraform-provider-vsphere]: https://github.com/hashicorp/terraform-provider-vsphere
110+
[project-influxdata-telegraf]: https://github.com/influxdata/telegraf/tree/master/plugins/inputs/vsphere
111+
[project-juju]: https://github.com/juju/juju
112+
[project-k8s-cloud-provider]: https://github.com/kubernetes/cloud-provider-vsphere
113+
[project-k8s-cluster-api]: https://github.com/kubernetes-sigs/cluster-api-provider-vsphere
114+
[project-nanovms-ops]: https://github.com/nanovms/ops
115+
[project-rancher]: https://github.com/rancher/rancher/blob/master/pkg/api/norman/customization/vsphere/listers.go
116+
[project-travisci-collectd-vsphere]: https://github.com/travis-ci/collectd-vsphere
117+
[project-travisci-jupiter-brain]: https://github.com/travis-ci/jupiter-brain
118+
[project-vmware-veba]: https://github.com/vmware-samples/vcenter-event-broker-appliance/tree/development/vmware-event-router
119+
[project-vmware-vic]: https://github.com/vmware/vic
120+
[project-vmware-vsphere]: https://docs.vmware.com/en/VMware-vSphere/7.0/rn/vsphere-esxi-vcenter-server-7-vsphere-with-kubernetes-release-notes.html
121+
[reference-api]: https://developer.vmware.com/apis/968/vsphere
122+
[reference-godoc]: http://godoc.org/github.com/vmware/govmomi
123+
[reference-go-vmware-nsxt]: https://github.com/vmware/go-vmware-nsxt
124+
[reference-lifecycle]: https://lifecycle.vmware.com
125+
[reference-pyvmomi]: https://github.com/vmware/pyvmomi
126+
[reference-rbvmomi]: https://github.com/vmware/rbvmomi
127+
[reference-semver]: http://semver.org
128+
[slack-join]: https://developer.vmware.com/join/
129+
[slack-channel]: https://vmwarecode.slack.com/messages/govmomi
130+
[toolbox]: toolbox/README.md
131+
[vcsim]: vcsim/README.md

0 commit comments

Comments
 (0)