Skip to content

Commit

Permalink
Merge pull request #300 from nsidc/apply-readme-conventions
Browse files Browse the repository at this point in the history
  • Loading branch information
jwfuller authored Oct 12, 2022
2 parents 82067cf + ee008cc commit 0454438
Show file tree
Hide file tree
Showing 3 changed files with 127 additions and 3 deletions.
81 changes: 81 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.


## Our Standards

Examples of behavior that contributes to creating a positive environment
include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting


## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.


## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.


## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at nsidc@nsidc.org. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.


## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq
2 changes: 1 addition & 1 deletion LICENSE.txt → LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2013-2015 Regents of the University of Colorado
Copyright (c) 2013-2022 Regents of the University of Colorado

This software was developed by the National Snow and Ice Data Center with funding from multiple sources.

Expand Down
47 changes: 45 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,31 @@ be configured prior to using this provider.
This provider is built on top of the
[RbVmomi](https://github.com/vmware/rbvmomi) Ruby interface to the vSphere API.


## Level of Support

This repository is not actively supported by NSIDC but we welcome issue submissions and
pull requests in order to foster community contribution.

See the [LICENSE][license] for details on permissions and warranties. Please contact
nsidc@nsidc.org for more information.


## Requirements

* Vagrant 1.6.4+
* VMware with vSphere API
* Ruby 1.9+
* libxml2, libxml2-dev, libxslt, libxslt-dev


## Current Version
**version: 1.13.5**

vagrant-vsphere (**version: 1.13.5**) is available from
[RubyGems.org](https://rubygems.org/gems/vagrant-vsphere)


## Installation

Install using standard Vagrant plugin method:
Expand All @@ -38,6 +50,7 @@ Alternatively, you can clone this repository and build the source with `gem
build vSphere.gemspec`. After the gem is built, run the plugin install command
from the build directory.


### Potential Installation Problems

The requirements for [Nokogiri](http://nokogiri.org/) must be installed before
Expand All @@ -48,6 +61,7 @@ detailed instructions.
The plugin forces use of Nokogiri ~> 1.5 to prevent conflicts with older
versions of system libraries, specifically zlib.


## Usage

After installing the plugin, you must create a vSphere box. The example_box
Expand Down Expand Up @@ -82,20 +96,23 @@ end

And then run `vagrant up --provider=vsphere`.


### Custom Box

The bulk of this configuration can be included as part of a custom box. See the
[Vagrant documentation](http://docs.vagrantup.com/v2/boxes.html) and the Vagrant
[AWS provider](https://github.com/mitchellh/vagrant-aws/tree/master/example_box)
for more information and an example.


### Supported Commands

Currently the only implemented actions are `up`, `halt`, `reload`, `destroy`,
and `ssh`.

`up` supports provisioning of the new VM with the standard Vagrant provisioners.


## Configuration

This provider has the following settings, all are required unless noted:
Expand Down Expand Up @@ -154,12 +171,14 @@ This provider has the following settings, all are required unless noted:
during the sysprep process
([#199](https://github.com/nsidc/vagrant-vsphere/pull/199)). Defaults to `false`.


### Cloning from a VM rather than a template

To clone from an existing VM rather than a template, set `clone_from_vm` to
true. If this value is set, `compute_resource_name` and `resource_pool_name` are
not required.


### Template_Name

* The template name includes the actual template name and the directory path
Expand All @@ -174,6 +193,7 @@ vsphere.template_name = "vagrant-templates/ubuntu-lucid-template"

![Vagrant Vsphere Screenshot](https://raw.githubusercontent.com/nsidc/vagrant-vsphere/master/vsphere_screenshot.png)


### VM_Base_Path

* The new vagrant VM will be created in the same directory as the template it
Expand All @@ -189,6 +209,7 @@ vsphere.vm_base_path = "vagrant-machines"

![Vagrant Vsphere Screenshot](https://raw.githubusercontent.com/nsidc/vagrant-vsphere/master/vsphere_screenshot.png)


### Setting a static IP address

To set a static IP, add a private network to your vagrant file:
Expand All @@ -205,6 +226,7 @@ For each private network specified, there needs to be a corresponding network ad
the customization spec. An error will be thrown if there are more networks than
adapters.


### Auto name generation

The name for the new VM will be automagically generated from the Vagrant machine
Expand All @@ -214,6 +236,7 @@ executions.
This is useful if running Vagrant from multiple directories or if multiple
machines are defined in the Vagrantfile.


### Setting addressType for network adapter

This sets the addressType of the network adapter, for example 'Manual' to
Expand All @@ -227,6 +250,7 @@ documentation of vSphere.
vsphere.addressType = 'Manual'
```


### Setting the MAC address

To set a static MAC address, add a `vsphere.mac` to your `Vagrantfile`.
Expand All @@ -240,17 +264,20 @@ vsphere.mac = '00:50:56:XX:YY:ZZ'
Take care to avoid using invalid or duplicate VMware MAC addresses, as this can
easily break networking.


## Troubleshooting

### vCenter
ESXi is not supported. Make sure to connect to a vCenter server and not directly to an ESXi host. [ESXi vs vCenter](http://www.mustbegeek.com/difference-between-vsphere-esxi-and-vcenter/)


### Permissions
If you have permission issues:

1. give the connecting user read only access to everything, and full permission to a specific data center. Narrow the permissions down after a VM is created.
2. Be sure the path to the VM is correct. see the "Template_Name" screenshots above for more information.


## Example Usage

### FILE: Vagrantfile
Expand Down Expand Up @@ -283,41 +310,57 @@ Vagrant.configure("2") do |config|
end
```


### Vagrant Up

```bash
vagrant up --provider=vsphere
```


### Vagrant SSH

```bash
vagrant ssh
```


### Vagrant Destroy

```bash
vagrant destroy
```


## Version History

See
[`CHANGELOG.md`](https://github.com/nsidc/vagrant-vsphere/blob/master/CHANGELOG.md).


## Contributing

See
[`DEVELOPMENT.md`](https://github.com/nsidc/vagrant-vsphere/blob/master/DEVELOPMENT.md).


## License

The Vagrant vSphere Provider is licensed under the MIT license. See
[LICENSE.txt][license].
[LICENSE][license].



## Code of Conduct

See [Code of Conduct][code-of-conduct].

[license]: https://raw.github.com/nsidc/vagrant-vsphere/master/LICENSE.txt

## Credit

This software was developed by the National Snow and Ice Data Center with
funding from multiple sources.


[license]: LICENSE
[code-of-conduct]: CODE_OF_CONDUCT.md

0 comments on commit 0454438

Please sign in to comment.