diff --git a/website/components/tabs/README.md b/website/components/tabs/README.md new file mode 100644 index 000000000..bdf31a710 --- /dev/null +++ b/website/components/tabs/README.md @@ -0,0 +1,61 @@ +# Tabs Component + +> An MDX-compatible Tabs component + +This React component renders tabbed content. + +## Usage + +- Use the `` tag in your markdown file to begin a tabbed content section. +- Use the `` tag with a `heading` prop to separate your markdown + +### Important + +A line must be skipped between the `` and your markdown (for both above and below said markdown). [This is a limitation of MDX also pointed out by the Docusaurus folks 🔗 ](https://v2.docusaurus.io/docs/markdown-features/#multi-language-support-code-blocks) + +### Example + +```mdx + + + +### Content + + + + +### Content + + + +``` + +### Component Props + +`` can be provided any arbitrary `children` so long as the `heading` prop is present the React or HTML tag used to wrap markdown, that said, we provide the `` component to separate your tab content without rendering extra, unnecessary markup. + +This works: + +```mdx + + + +### Content + + +.... + +``` + +This _does not_ work: + +```mdx + + + +### Content + + +.... + +``` diff --git a/website/components/tabs/index.jsx b/website/components/tabs/index.jsx new file mode 100644 index 000000000..23862510d --- /dev/null +++ b/website/components/tabs/index.jsx @@ -0,0 +1,17 @@ +import ReactTabs from '@hashicorp/react-tabs' + +export default function Tabs({ children }) { + return ( + ({ + heading: Block.props.heading, + // eslint-disable-next-line react/display-name + tabChildren: () => Block, + }))} + /> + ) +} + +export function Tab({ children }) { + return <>{children} +} diff --git a/website/components/tabs/style.css b/website/components/tabs/style.css new file mode 100644 index 000000000..bedf96b4e --- /dev/null +++ b/website/components/tabs/style.css @@ -0,0 +1,8 @@ +/* This is a CSS overwrite on top of the existing component styles to accommodate the Learn layout */ +.g-tabs { + & .g-grid-container, + & > .g-grid-container { + padding-left: 0; + padding-right: 0; + } +} diff --git a/website/data/cloud-navigation.js b/website/data/cloud-navigation.js new file mode 100644 index 000000000..b5b561d59 --- /dev/null +++ b/website/data/cloud-navigation.js @@ -0,0 +1,9 @@ +// The root folder for this documentation category is `pages/docs` +// +// - A string refers to the name of a file +// - A "category" value refers to the name of a directory +// - All directories must have an "index.mdx" file to serve as +// the landing page for the category, or a "name" property to +// serve as the category title in the sidebar + +export default [] diff --git a/website/data/version.js b/website/data/version.js index 6ba2a045a..40c2506bc 100644 --- a/website/data/version.js +++ b/website/data/version.js @@ -1 +1,2 @@ export default '2.2.8' +export const VMWARE_UTILITY_VERSION = 'test' diff --git a/website/layouts/docs.jsx b/website/layouts/docs.jsx index ef6646275..0d32cba1c 100644 --- a/website/layouts/docs.jsx +++ b/website/layouts/docs.jsx @@ -4,8 +4,9 @@ import { frontMatter as data } from '../pages/docs/**/*.mdx' import { MDXProvider } from '@mdx-js/react' import Head from 'next/head' import Link from 'next/link' +import Tabs, { Tab } from '../components/tabs' -const DEFAULT_COMPONENTS = {} +const DEFAULT_COMPONENTS = { Tabs, Tab } function DocsLayoutWrapper(pageMeta) { function DocsLayout(props) { diff --git a/website/layouts/vagrant-cloud.jsx b/website/layouts/vagrant-cloud.jsx new file mode 100644 index 000000000..8fb95fb02 --- /dev/null +++ b/website/layouts/vagrant-cloud.jsx @@ -0,0 +1,43 @@ +import DocsPage from '@hashicorp/react-docs-page' +import order from '../data/cloud-navigation.js' +import { frontMatter as data } from '../pages/vagrant-cloud/**/*.mdx' +import { MDXProvider } from '@mdx-js/react' +import Head from 'next/head' +import Link from 'next/link' +import Button from '@hashicorp/react-button' +import Tabs, { Tab } from '../components/tabs' + +const DEFAULT_COMPONENTS = { Button, Tabs, Tab } + +function CloudLayoutWrapper(pageMeta) { + function CloudLayout(props) { + return ( + + + + ) + } + + CloudLayout.getInitialProps = ({ asPath }) => ({ path: asPath }) + + return CloudLayout +} + +export default CloudLayoutWrapper diff --git a/website/layouts/vmware.jsx b/website/layouts/vmware.jsx index a01268b4b..65b554cb5 100644 --- a/website/layouts/vmware.jsx +++ b/website/layouts/vmware.jsx @@ -4,8 +4,9 @@ import { frontMatter as data } from '../pages/vmware/**/*.mdx' import { MDXProvider } from '@mdx-js/react' import Head from 'next/head' import Link from 'next/link' +import Button from '@hashicorp/react-button' -const DEFAULT_COMPONENTS = {} +const DEFAULT_COMPONENTS = { Button } function VMWareLayoutWrapper(pageMeta) { function VMWareLayout(props) { diff --git a/website/package-lock.json b/website/package-lock.json index 475d679d5..4fd101b54 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -1300,6 +1300,23 @@ } } }, + "@hashicorp/react-tabs": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-tabs/-/react-tabs-0.4.0.tgz", + "integrity": "sha512-KSkd3akWC9843ybMEw1Ahga/yCfiG2BWLvjb1Hl1qVWrYIHPAYQ+W+mLvMRKJrGPlCMCTqpiNR5bK8iBvcDC/Q==", + "requires": { + "@hashicorp/react-global-styles": "^4.4.0", + "@hashicorp/react-inline-svg": "^1.0.0", + "@tippy.js/react": "^3.1.1" + }, + "dependencies": { + "@hashicorp/react-global-styles": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-global-styles/-/react-global-styles-4.4.0.tgz", + "integrity": "sha512-lv6XR2plm2m3+qO6VE+RYquTzOODIt3mQ/1fBT1bn7wsR0qxFiuryW4JfsF94oCGk++LkDkRt/8V742HiT+fHw==" + } + } + }, "@hashicorp/react-toggle": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@hashicorp/react-toggle/-/react-toggle-1.0.1.tgz", @@ -1524,6 +1541,15 @@ "defer-to-connect": "^1.0.1" } }, + "@tippy.js/react": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@tippy.js/react/-/react-3.1.1.tgz", + "integrity": "sha512-KF45vW/jKh/nBXk/2zzTFslv/T46zOMkIoDJ56ymZ+M00yHttk58J5wZ29oqGqDIUnobWSZD+cFpbR4u/UUvgw==", + "requires": { + "prop-types": "^15.6.2", + "tippy.js": "^5.1.1" + } + }, "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", @@ -10015,6 +10041,11 @@ "ts-pnp": "^1.1.2" } }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -15939,6 +15970,14 @@ "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=" }, + "tippy.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-5.2.1.tgz", + "integrity": "sha512-66UT6JRVn3dXNCORE+0UvUK3JZqV/VhLlU6HTDm3FmrweUUFUxUGvT8tUQ7ycMp+uhuLAwQw6dBabyC+iKf/MA==", + "requires": { + "popper.js": "^1.16.0" + } + }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", diff --git a/website/package.json b/website/package.json index dc78934bb..01fc58692 100644 --- a/website/package.json +++ b/website/package.json @@ -17,6 +17,7 @@ "@hashicorp/react-product-downloader": "^3.1.2", "@hashicorp/react-section-header": "^2.0.0", "@hashicorp/react-subnav": "^3.1.1", + "@hashicorp/react-tabs": "^0.4.0", "@hashicorp/react-vertical-text-block-list": "^2.0.1", "babel-plugin-import-glob-array": "^0.2.0", "imagemin-mozjpeg": "^8.0.0", diff --git a/website/pages/docs/boxes.html.md b/website/pages/docs/boxes.mdx similarity index 98% rename from website/pages/docs/boxes.html.md rename to website/pages/docs/boxes.mdx index d745618a4..5be9093df 100644 --- a/website/pages/docs/boxes.html.md +++ b/website/pages/docs/boxes.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Boxes' -sidebar_current: 'boxes' +layout: docs +page_title: Boxes +sidebar_current: boxes description: |- Boxes are the package format for Vagrant environments. A box can be used by anyone on any platform that Vagrant supports to bring up an identical diff --git a/website/pages/docs/boxes/base.html.md b/website/pages/docs/boxes/base.mdx similarity index 96% rename from website/pages/docs/boxes/base.html.md rename to website/pages/docs/boxes/base.mdx index 77ec3a2c5..dca0d3ee7 100644 --- a/website/pages/docs/boxes/base.html.md +++ b/website/pages/docs/boxes/base.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Creating a Base Box' -sidebar_current: 'boxes-base' +layout: docs +page_title: Creating a Base Box +sidebar_current: boxes-base description: |- There are a special category of boxes known as "base boxes." These boxes contain the bare minimum required for Vagrant to function, are generally @@ -25,12 +25,10 @@ which to build future development environments. The Vagrant project hopes in the future to be able to provide base boxes for many more operating systems. Until then, this page documents how you can create your own base box. -
- Advanced topic! Creating a base box can be a time consuming - and tedious process, and is not recommended for new Vagrant users. If you are - just getting started with Vagrant, we recommend trying to find existing - base boxes to use first. -
+~> **Advanced topic!** Creating a base box can be a time consuming +and tedious process, and is not recommended for new Vagrant users. If you are +just getting started with Vagrant, we recommend trying to find existing +base boxes to use first. ## What's in a Base Box? diff --git a/website/pages/docs/boxes/format.html.md b/website/pages/docs/boxes/format.mdx similarity index 91% rename from website/pages/docs/boxes/format.html.md rename to website/pages/docs/boxes/format.mdx index 2329de297..27a70be09 100644 --- a/website/pages/docs/boxes/format.html.md +++ b/website/pages/docs/boxes/format.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Box File Format' -sidebar_current: 'boxes-format' +layout: docs +page_title: Box File Format +sidebar_current: boxes-format description: |- The box file format for Vagrant has changed from only supporting VirtualBox to supporting a number different providers and box formats. @@ -84,12 +84,10 @@ The metadata is an optional component for a box (but highly recommended) that enables [versioning](/docs/boxes/versioning.html), updating, multiple providers from a single file, and more. -
- You do not need to manually make the metadata. If you - have an account with HashiCorp's Vagrant Cloud, you - can create boxes there, and HashiCorp's Vagrant Cloud automatically creates - the metadata for you. The format is still documented here. -
+-> **You do not need to manually make the metadata.** If you +have an account with [HashiCorp's Vagrant Cloud](/docs/vagrant-cloud), you +can create boxes there, and HashiCorp's Vagrant Cloud automatically creates +the metadata for you. The format is still documented here. It is a JSON document, structured in the following way: diff --git a/website/pages/docs/boxes/info.html.md b/website/pages/docs/boxes/info.mdx similarity index 93% rename from website/pages/docs/boxes/info.html.md rename to website/pages/docs/boxes/info.mdx index cbb3a3511..914fc1b43 100644 --- a/website/pages/docs/boxes/info.html.md +++ b/website/pages/docs/boxes/info.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Box Info Format' -sidebar_current: 'boxes-info' +layout: docs +page_title: Box Info Format +sidebar_current: boxes-info description: |- A box can provide additional information to the user by supplying an info.json file within the box. diff --git a/website/pages/docs/boxes/versioning.html.md b/website/pages/docs/boxes/versioning.mdx similarity index 98% rename from website/pages/docs/boxes/versioning.html.md rename to website/pages/docs/boxes/versioning.mdx index f8ba5eca6..d2a3cedd3 100644 --- a/website/pages/docs/boxes/versioning.html.md +++ b/website/pages/docs/boxes/versioning.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Box Versioning' -sidebar_current: 'boxes-versioning' +layout: docs +page_title: Box Versioning +sidebar_current: boxes-versioning description: |- Since Vagrant 1.5, boxes support versioning. This allows the people who make boxes to push updates to the box, and the people who use the box diff --git a/website/pages/docs/cli/aliases.html.md b/website/pages/docs/cli/aliases.mdx similarity index 96% rename from website/pages/docs/cli/aliases.html.md rename to website/pages/docs/cli/aliases.mdx index cd83c0f19..a09f07901 100644 --- a/website/pages/docs/cli/aliases.html.md +++ b/website/pages/docs/cli/aliases.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Aliases - Command-Line Interface' -sidebar_current: 'cli-aliases' +layout: docs +page_title: Aliases - Command-Line Interface +sidebar_current: cli-aliases description: |- Custom Vagrant commands can be defined using aliases, allowing for a simpler, easier, and more familiar command line interface. diff --git a/website/pages/docs/cli/box.html.md b/website/pages/docs/cli/box.mdx similarity index 93% rename from website/pages/docs/cli/box.html.md rename to website/pages/docs/cli/box.mdx index 0ca646beb..a37f44d36 100644 --- a/website/pages/docs/cli/box.html.md +++ b/website/pages/docs/cli/box.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant box - Command-Line Interface' -sidebar_current: 'cli-box' +layout: docs +page_title: vagrant box - Command-Line Interface +sidebar_current: cli-box description: |- The "vagrant box" command is used to manage "vagrant box add", "vagrant box remove", and other box-related commands such as "outdated", "list", and @@ -99,11 +99,9 @@ you are not using a catalog). a catalog, the name is included in the catalog entry and does not have to be specified. -
- Checksums for versioned boxes or boxes from HashiCorp's Vagrant Cloud: - For boxes from HashiCorp's Vagrant Cloud, the checksums are embedded in the metadata - of the box. The metadata itself is served over TLS and its format is validated. -
+~> **Checksums for versioned boxes or boxes from HashiCorp's Vagrant Cloud:** +For boxes from HashiCorp's Vagrant Cloud, the checksums are embedded in the metadata +of the box. The metadata itself is served over TLS and its format is validated. # Box List @@ -198,9 +196,9 @@ This command updates the box for the current Vagrant environment if there are updates available. The command can also update a specific box (outside of an active Vagrant environment), by specifying the `--box` flag. -Note that updating the box will not update an already-running Vagrant +-> Note that updating the box will not update an already-running Vagrant machine. To reflect the changes in the box, you will have to destroy and -bring back up the Vagrant machine. +bring back up the Vagrant machine. If you just want to check if there are updates available, use the `vagrant box outdated` command. diff --git a/website/pages/docs/cli/cloud.html.md b/website/pages/docs/cli/cloud.mdx similarity index 99% rename from website/pages/docs/cli/cloud.html.md rename to website/pages/docs/cli/cloud.mdx index 7c7fa5d3d..5deadb046 100644 --- a/website/pages/docs/cli/cloud.html.md +++ b/website/pages/docs/cli/cloud.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant cloud - Command-Line Interface' -sidebar_current: 'cli-cloud' +layout: docs +page_title: vagrant cloud - Command-Line Interface +sidebar_current: cli-cloud description: |- The "vagrant cloud" command can be used for taking actions against Vagrant Cloud like searching or uploading a Vagrant Box diff --git a/website/pages/docs/cli/connect.html.md b/website/pages/docs/cli/connect.mdx similarity index 91% rename from website/pages/docs/cli/connect.html.md rename to website/pages/docs/cli/connect.mdx index 95201a8db..2bc8fadd2 100644 --- a/website/pages/docs/cli/connect.html.md +++ b/website/pages/docs/cli/connect.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant connect - Command-Line Interface' -sidebar_current: 'cli-connect' +layout: docs +page_title: vagrant connect - Command-Line Interface +sidebar_current: cli-connect description: |- The "vagrant connect" command compliments the "vagrant share" command to allow a user to remotely connect to your Vagrant environment. diff --git a/website/pages/docs/cli/destroy.html.md b/website/pages/docs/cli/destroy.mdx similarity index 65% rename from website/pages/docs/cli/destroy.html.md rename to website/pages/docs/cli/destroy.mdx index 84657ac55..82c0be7a1 100644 --- a/website/pages/docs/cli/destroy.html.md +++ b/website/pages/docs/cli/destroy.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant destroy - Command-Line Interface' -sidebar_current: 'cli-destroy' +layout: docs +page_title: vagrant destroy - Command-Line Interface +sidebar_current: cli-destroy description: |- The "vagrant destroy" command is used to stop the running virtual machine and terminate use of all resources that were in use by that machine. @@ -29,14 +29,10 @@ directory containing the `shutdown` command. supports it. Please consult the provider documentation to see if this feature is supported. -
- The `destroy` command does not remove a box that may have been installed on - your computer during `vagrant up`. Thus, even if you run `vagrant destroy`, - the box installed in the system will still be present on the hard drive. To - return your computer to the state as it was before `vagrant up` command, you - need to use `vagrant box remove`. +-> The `destroy` command does not remove a box that may have been installed on +your computer during `vagrant up`. Thus, even if you run `vagrant destroy`, +the box installed in the system will still be present on the hard drive. To +return your computer to the state as it was before `vagrant up` command, you +need to use `vagrant box remove`. -For more information, read about the -`vagrant box remove` command. - -
+For more information, read about the [`vagrant box remove`](/docs/cli/box.html) command. diff --git a/website/pages/docs/cli/global-status.html.md b/website/pages/docs/cli/global-status.mdx similarity index 92% rename from website/pages/docs/cli/global-status.html.md rename to website/pages/docs/cli/global-status.mdx index 4ffbb5a79..fb57e9c1c 100644 --- a/website/pages/docs/cli/global-status.html.md +++ b/website/pages/docs/cli/global-status.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant global-status - Command-Line Interface' -sidebar_current: 'cli-globalstatus' +layout: docs +page_title: vagrant global-status - Command-Line Interface +sidebar_current: cli-globalstatus description: |- The "vagrant global-status" command is used to determine the state of all active Vagrant environments on the system for the currently logged in user. diff --git a/website/pages/docs/cli/halt.html.md b/website/pages/docs/cli/halt.mdx similarity index 91% rename from website/pages/docs/cli/halt.html.md rename to website/pages/docs/cli/halt.mdx index 3d5516c67..8f0fc2c62 100644 --- a/website/pages/docs/cli/halt.html.md +++ b/website/pages/docs/cli/halt.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant halt - Command-Line Interface' -sidebar_current: 'cli-halt' +layout: docs +page_title: vagrant halt - Command-Line Interface +sidebar_current: cli-halt description: |- The "vagrant halt" command is used to shut down the virtual machine that Vagrant is currently managing. diff --git a/website/pages/docs/cli/index.html.md b/website/pages/docs/cli/index.mdx similarity index 86% rename from website/pages/docs/cli/index.html.md rename to website/pages/docs/cli/index.mdx index 019e1d528..845d2e514 100644 --- a/website/pages/docs/cli/index.html.md +++ b/website/pages/docs/cli/index.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Command-Line Interface' -sidebar_current: 'cli' -description: |- - Almost all interaction with Vagrant is done via the command-line interface. +layout: docs +page_title: Command-Line Interface +sidebar_current: cli +description: Almost all interaction with Vagrant is done via the command-line interface. --- # Command-Line Interface diff --git a/website/pages/docs/cli/init.html.md b/website/pages/docs/cli/init.mdx similarity index 94% rename from website/pages/docs/cli/init.html.md rename to website/pages/docs/cli/init.mdx index 81901127b..1ae13e030 100644 --- a/website/pages/docs/cli/init.html.md +++ b/website/pages/docs/cli/init.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant init - Command-Line Interface' -sidebar_current: 'cli-init' +layout: docs +page_title: vagrant init - Command-Line Interface +sidebar_current: cli-init description: |- The "vagrant init" command is used to initialize the current directory to be a Vagrant environment by creating an initial Vagrantfile. diff --git a/website/pages/docs/cli/login.html.md b/website/pages/docs/cli/login.mdx similarity index 94% rename from website/pages/docs/cli/login.html.md rename to website/pages/docs/cli/login.mdx index bdb0ef46b..8a0b5d51c 100644 --- a/website/pages/docs/cli/login.html.md +++ b/website/pages/docs/cli/login.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant login - Command-Line Interface' -sidebar_current: 'cli-login' +layout: docs +page_title: vagrant login - Command-Line Interface +sidebar_current: cli-login description: |- The "vagrant login" command is used to authenticate Vagrant with HashiCorp's Vagrant Cloud service to use features like private boxes and "vagrant push". diff --git a/website/pages/docs/cli/machine-readable.html.md b/website/pages/docs/cli/machine-readable.mdx similarity index 66% rename from website/pages/docs/cli/machine-readable.html.md rename to website/pages/docs/cli/machine-readable.mdx index 02c9d085c..50da42f69 100644 --- a/website/pages/docs/cli/machine-readable.html.md +++ b/website/pages/docs/cli/machine-readable.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Machine Readable Output - Command-Line Interface' -sidebar_current: 'cli-machinereadable' +layout: docs +page_title: Machine Readable Output - Command-Line Interface +sidebar_current: cli-machinereadable description: |- Almost all commands in Vagrant accept a --machine-readable flag to enable machine-readable output mode. @@ -21,11 +21,9 @@ may change as we determine more use cases for it. But the backwards compatibility promise should make it safe to write client libraries to parse the output format. -
- Advanced topic! This is an advanced topic for use only if - you want to programmatically execute Vagrant. If you are just getting started - with Vagrant, you may safely skip this section. -
+~> **Advanced topic!** This is an advanced topic for use only if +you want to programmatically execute Vagrant. If you are just getting started +with Vagrant, you may safely skip this section. ## Work-In-Progress @@ -88,75 +86,71 @@ with the machine-readable output. -box-name - - Name of a box installed into Vagrant. - + box-name + Name of a box installed into Vagrant. -box-provider - - Provider for an installed box. - + box-provider + Provider for an installed box. -cli-command - - A subcommand of vagrant that is available. - + cli-command + + A subcommand of vagrant that is available. + -error-exit - - An error occurred that caused Vagrant to exit. This contains that - error. Contains two data elements: type of error, error message. - + error-exit + + An error occurred that caused Vagrant to exit. This contains that error. + Contains two data elements: type of error, error message. + -provider-name - - The provider name of the target machine. - targeted - + provider-name + + The provider name of the target machine. + targeted + -ssh-config - - The OpenSSH compatible SSH config for a machine. This is usually - the result of the "ssh-config" command. - targeted - + ssh-config + + The OpenSSH compatible SSH config for a machine. This is usually the result + of the "ssh-config" command. + targeted + -state - - The state ID of the target machine. - targeted - + state + + The state ID of the target machine. + targeted + -state-human-long - - Human-readable description of the state of the machine. This is the - long version, and may be a paragraph or longer. - targeted - + state-human-long + + Human-readable description of the state of the machine. This is the long + version, and may be a paragraph or longer. + targeted + -state-human-short - - Human-readable description of the state of the machine. This is the - short version, limited to at most a sentence. - targeted - + state-human-short + + Human-readable description of the state of the machine. This is the short + version, limited to at most a sentence. + targeted + diff --git a/website/pages/docs/cli/non-primary.html.md b/website/pages/docs/cli/non-primary.mdx similarity index 92% rename from website/pages/docs/cli/non-primary.html.md rename to website/pages/docs/cli/non-primary.mdx index 60a9c10f3..3939e0b22 100644 --- a/website/pages/docs/cli/non-primary.html.md +++ b/website/pages/docs/cli/non-primary.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'More Vagrant Commands - Command-Line Interface' -sidebar_current: 'cli-nonprimary' +layout: docs +page_title: More Vagrant Commands - Command-Line Interface +sidebar_current: cli-nonprimary description: |- In addition to the commands listed in the sidebar and shown in "vagrant -h", Vagrant comes with some more commands that are hidden from basic help output. diff --git a/website/pages/docs/cli/package.html.md b/website/pages/docs/cli/package.mdx similarity index 69% rename from website/pages/docs/cli/package.html.md rename to website/pages/docs/cli/package.mdx index 5f409c738..3b5c4992a 100644 --- a/website/pages/docs/cli/package.html.md +++ b/website/pages/docs/cli/package.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant package - Command-Line Interface' -sidebar_current: 'cli-package' +layout: docs +page_title: vagrant package - Command-Line Interface +sidebar_current: cli-package description: |- The "vagrant package" command is used to package a currently-running VirtualBox or Hyper-V vagrant environment into a reusable Vagrant box. @@ -34,11 +34,8 @@ and if the provider supports it. as part of the [Vagrantfile load order](/docs/vagrantfile/#load-order) when the resulting box is used. -
- A common misconception is that the --vagrantfile - option will package a Vagrantfile that is used when vagrant init - is used with this box. This is not the case. Instead, a Vagrantfile - is loaded and read as part of the Vagrant load process when the box is - used. For more information, read about the - Vagrantfile load order. -
+-> **A common misconception** is that the `--vagrantfile` +option will package a Vagrantfile that is used when `vagrant init` +is used with this box. This is not the case. Instead, a Vagrantfile +is loaded and read as part of the Vagrant load process when the box is +used. For more information, read about the [Vagrantfile load order](/docs/vagrantfile/#load-order). diff --git a/website/pages/docs/cli/plugin.html.md b/website/pages/docs/cli/plugin.mdx similarity index 98% rename from website/pages/docs/cli/plugin.html.md rename to website/pages/docs/cli/plugin.mdx index 33b94c8eb..7f115af4a 100644 --- a/website/pages/docs/cli/plugin.html.md +++ b/website/pages/docs/cli/plugin.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant plugin - Command-Line Interface' -sidebar_current: 'cli-plugin' +layout: docs +page_title: vagrant plugin - Command-Line Interface +sidebar_current: cli-plugin description: |- The "vagrant plugin" command is used to manage Vagrant plugins including installing, uninstalling, and license management. diff --git a/website/pages/docs/cli/port.html.md b/website/pages/docs/cli/port.mdx similarity index 91% rename from website/pages/docs/cli/port.html.md rename to website/pages/docs/cli/port.mdx index b38131b42..fe81fc660 100644 --- a/website/pages/docs/cli/port.html.md +++ b/website/pages/docs/cli/port.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant port - Command-Line Interface' -sidebar_current: 'cli-port' +layout: docs +page_title: vagrant port - Command-Line Interface +sidebar_current: cli-port description: |- The "vagrant port" command is used to display the full list of guest ports mapped to the host machine ports. diff --git a/website/pages/docs/cli/powershell.html.md b/website/pages/docs/cli/powershell.mdx similarity index 84% rename from website/pages/docs/cli/powershell.html.md rename to website/pages/docs/cli/powershell.mdx index 4135aee78..292e49a45 100644 --- a/website/pages/docs/cli/powershell.html.md +++ b/website/pages/docs/cli/powershell.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant powershell - Command-Line Interface' -sidebar_current: 'cli-powershell' +layout: docs +page_title: vagrant powershell - Command-Line Interface +sidebar_current: cli-powershell description: |- The "vagrant powershell" command is used to open a powershell prompt running inside the guest machine. diff --git a/website/pages/docs/cli/provision.html.md b/website/pages/docs/cli/provision.mdx similarity index 89% rename from website/pages/docs/cli/provision.html.md rename to website/pages/docs/cli/provision.mdx index 218c09f22..4460d8b98 100644 --- a/website/pages/docs/cli/provision.html.md +++ b/website/pages/docs/cli/provision.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant provision - Command-Line Interface' -sidebar_current: 'cli-provision' +layout: docs +page_title: vagrant provision - Command-Line Interface +sidebar_current: cli-provision description: |- The "vagrant provision" command is used to run any provisioners configured for the guest machine, such as Puppet, Chef, Ansible, Salt, or Shell. diff --git a/website/pages/docs/cli/rdp.html.md b/website/pages/docs/cli/rdp.mdx similarity index 93% rename from website/pages/docs/cli/rdp.html.md rename to website/pages/docs/cli/rdp.mdx index 22ef1881c..502bbc476 100644 --- a/website/pages/docs/cli/rdp.html.md +++ b/website/pages/docs/cli/rdp.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant rdp - Command-Line Interface' -sidebar_current: 'cli-rdp' +layout: docs +page_title: vagrant rdp - Command-Line Interface +sidebar_current: cli-rdp description: |- The "vagrant rdp" command is used to start an RDP client for a remote desktop session with the guest machine. diff --git a/website/pages/docs/cli/reload.html.md b/website/pages/docs/cli/reload.mdx similarity index 89% rename from website/pages/docs/cli/reload.html.md rename to website/pages/docs/cli/reload.mdx index 933081fa3..408d219c9 100644 --- a/website/pages/docs/cli/reload.html.md +++ b/website/pages/docs/cli/reload.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant reload - Command-Line Interface' -sidebar_current: 'cli-reload' +layout: docs +page_title: vagrant reload - Command-Line Interface +sidebar_current: cli-reload description: |- The "vagrant reload" command is the equivalent of running "vagrant halt" followed by "vagrant up". diff --git a/website/pages/docs/cli/resume.html.md b/website/pages/docs/cli/resume.mdx similarity index 89% rename from website/pages/docs/cli/resume.html.md rename to website/pages/docs/cli/resume.mdx index 8b24373b5..b3c5143fa 100644 --- a/website/pages/docs/cli/resume.html.md +++ b/website/pages/docs/cli/resume.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant resume - Command-Line Interface' -sidebar_current: 'cli-resume' +layout: docs +page_title: vagrant resume - Command-Line Interface +sidebar_current: cli-resume description: |- The "vagrant resume" command is used to bring a machine back into the "up" state, perhaps if it was previously suspended via "vagrant halt" or "vagrant diff --git a/website/pages/docs/cli/rsync-auto.html.md b/website/pages/docs/cli/rsync-auto.mdx similarity index 95% rename from website/pages/docs/cli/rsync-auto.html.md rename to website/pages/docs/cli/rsync-auto.mdx index 9461770a3..a4deb9835 100644 --- a/website/pages/docs/cli/rsync-auto.html.md +++ b/website/pages/docs/cli/rsync-auto.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant rsync-auto - Command-Line Interface' -sidebar_current: 'cli-rsyncauto' +layout: docs +page_title: vagrant rsync-auto - Command-Line Interface +sidebar_current: cli-rsyncauto description: |- The "vagrant rsync-auto" command watches all local directories of any rsync configured synced folders and automatically initiates an rsync transfer when diff --git a/website/pages/docs/cli/rsync.html.md b/website/pages/docs/cli/rsync.mdx similarity index 74% rename from website/pages/docs/cli/rsync.html.md rename to website/pages/docs/cli/rsync.mdx index f4b391005..3db21480d 100644 --- a/website/pages/docs/cli/rsync.html.md +++ b/website/pages/docs/cli/rsync.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'vagrant rsync - Command-Line Interface' -sidebar_current: 'cli-rsync' -description: |- - The "vagrant rsync" command forces a re-sync of any rsync synced folders. +layout: docs +page_title: vagrant rsync - Command-Line Interface +sidebar_current: cli-rsync +description: The "vagrant rsync" command forces a re-sync of any rsync synced folders. --- # Rsync diff --git a/website/pages/docs/cli/share.html.md b/website/pages/docs/cli/share.mdx similarity index 94% rename from website/pages/docs/cli/share.html.md rename to website/pages/docs/cli/share.mdx index 69522a62e..7c2d081b2 100644 --- a/website/pages/docs/cli/share.html.md +++ b/website/pages/docs/cli/share.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant share - Command-Line Interface' -sidebar_current: 'cli-share' +layout: docs +page_title: vagrant share - Command-Line Interface +sidebar_current: cli-share description: |- The "vagrant share" command initializes a new Vagrant share session, which allows you to share your virtual machine with the public Internet. diff --git a/website/pages/docs/cli/snapshot.html.md b/website/pages/docs/cli/snapshot.mdx similarity index 96% rename from website/pages/docs/cli/snapshot.html.md rename to website/pages/docs/cli/snapshot.mdx index 5731df004..50fc328a2 100644 --- a/website/pages/docs/cli/snapshot.html.md +++ b/website/pages/docs/cli/snapshot.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant snapshot - Command-Line Interface' -sidebar_current: 'cli-snapshot' +layout: docs +page_title: vagrant snapshot - Command-Line Interface +sidebar_current: cli-snapshot description: |- The "vagrant snapshot" command is used to manage snapshots of the guest machine. diff --git a/website/pages/docs/cli/ssh.html.md b/website/pages/docs/cli/ssh.mdx similarity index 98% rename from website/pages/docs/cli/ssh.html.md rename to website/pages/docs/cli/ssh.mdx index e99a3b942..9453bb56c 100644 --- a/website/pages/docs/cli/ssh.html.md +++ b/website/pages/docs/cli/ssh.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant ssh - Command-Line Interface' -sidebar_current: 'cli-ssh' +layout: docs +page_title: vagrant ssh - Command-Line Interface +sidebar_current: cli-ssh description: |- The "vagrant ssh" command is used to establish an SSH session into a running virtual machine to give you shell access. diff --git a/website/pages/docs/cli/ssh_config.html.md b/website/pages/docs/cli/ssh_config.mdx similarity index 80% rename from website/pages/docs/cli/ssh_config.html.md rename to website/pages/docs/cli/ssh_config.mdx index a5480ec83..7ab6078df 100644 --- a/website/pages/docs/cli/ssh_config.html.md +++ b/website/pages/docs/cli/ssh_config.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant ssh-config - Command-Line Interface' -sidebar_current: 'cli-ssh_config' +layout: docs +page_title: vagrant ssh-config - Command-Line Interface +sidebar_current: cli-ssh_config description: |- The "vagrant ssh-config" command is used to output a valid SSH configuration file capable of SSHing into the guest machine directly. diff --git a/website/pages/docs/cli/status.html.md b/website/pages/docs/cli/status.mdx similarity index 82% rename from website/pages/docs/cli/status.html.md rename to website/pages/docs/cli/status.mdx index 5c5e0dc7b..e954cc5dc 100644 --- a/website/pages/docs/cli/status.html.md +++ b/website/pages/docs/cli/status.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant status - Command-Line Interface' -sidebar_current: 'cli-status' +layout: docs +page_title: vagrant status - Command-Line Interface +sidebar_current: cli-status description: |- The "vagrant status" command is used to tell you the status of the virtual machines in the current Vagrant environment. diff --git a/website/pages/docs/cli/suspend.html.md b/website/pages/docs/cli/suspend.mdx similarity index 88% rename from website/pages/docs/cli/suspend.html.md rename to website/pages/docs/cli/suspend.mdx index 549634071..75d2da33e 100644 --- a/website/pages/docs/cli/suspend.html.md +++ b/website/pages/docs/cli/suspend.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant suspend - Command-Line Interface' -sidebar_current: 'cli-suspend' +layout: docs +page_title: vagrant suspend - Command-Line Interface +sidebar_current: cli-suspend description: |- The "vagrant suspend" command is used to suspend the guest machine Vagrant is currently managing. diff --git a/website/pages/docs/cli/up.html.md b/website/pages/docs/cli/up.mdx similarity index 94% rename from website/pages/docs/cli/up.html.md rename to website/pages/docs/cli/up.mdx index ae1aad986..546ceb5d2 100644 --- a/website/pages/docs/cli/up.html.md +++ b/website/pages/docs/cli/up.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant up - Command-Line Interface' -sidebar_current: 'cli-up' +layout: docs +page_title: vagrant up - Command-Line Interface +sidebar_current: cli-up description: |- The "vagrant up" command is used to create, configuration, and provision a guest machine according to your Vagrantfile. diff --git a/website/pages/docs/cli/upload.html.md b/website/pages/docs/cli/upload.mdx similarity index 89% rename from website/pages/docs/cli/upload.html.md rename to website/pages/docs/cli/upload.mdx index 2b3782a4e..3cb09a9d5 100644 --- a/website/pages/docs/cli/upload.html.md +++ b/website/pages/docs/cli/upload.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant upload - Command-Line Interface' -sidebar_current: 'cli-upload' +layout: docs +page_title: vagrant upload - Command-Line Interface +sidebar_current: cli-upload description: |- The "vagrant upload" command is used to upload files from the host to a guest machine. diff --git a/website/pages/docs/cli/validate.html.md b/website/pages/docs/cli/validate.mdx similarity index 58% rename from website/pages/docs/cli/validate.html.md rename to website/pages/docs/cli/validate.mdx index 524a63a09..47677227a 100644 --- a/website/pages/docs/cli/validate.html.md +++ b/website/pages/docs/cli/validate.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'vagrant validate - Command-Line Interface' -sidebar_current: 'cli-validate' -description: |- - The "vagrant validate" command is used to validate your Vagrantfile. +layout: docs +page_title: vagrant validate - Command-Line Interface +sidebar_current: cli-validate +description: The "vagrant validate" command is used to validate your Vagrantfile. --- # Validate diff --git a/website/pages/docs/cli/version.html.md b/website/pages/docs/cli/version.mdx similarity index 83% rename from website/pages/docs/cli/version.html.md rename to website/pages/docs/cli/version.mdx index b6346fc21..1995bca61 100644 --- a/website/pages/docs/cli/version.html.md +++ b/website/pages/docs/cli/version.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant version - Command-Line Interface' -sidebar_current: 'cli-version' +layout: docs +page_title: vagrant version - Command-Line Interface +sidebar_current: cli-version description: |- The "vagrant version" command is used to output the version of Vagrant currently installed on the system. diff --git a/website/pages/docs/cli/winrm.html.md b/website/pages/docs/cli/winrm.mdx similarity index 87% rename from website/pages/docs/cli/winrm.html.md rename to website/pages/docs/cli/winrm.mdx index 222585d33..d9a7acdaf 100644 --- a/website/pages/docs/cli/winrm.html.md +++ b/website/pages/docs/cli/winrm.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant winrm - Command-Line Interface' -sidebar_current: 'cli-winrm' +layout: docs +page_title: vagrant winrm - Command-Line Interface +sidebar_current: cli-winrm description: |- The "vagrant winrm" command is used execute commands on the remote machine via WinRM diff --git a/website/pages/docs/cli/winrm_config.html.md b/website/pages/docs/cli/winrm_config.mdx similarity index 80% rename from website/pages/docs/cli/winrm_config.html.md rename to website/pages/docs/cli/winrm_config.mdx index 0b2c0b99b..76e793bd2 100644 --- a/website/pages/docs/cli/winrm_config.html.md +++ b/website/pages/docs/cli/winrm_config.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'vagrant winrm-config - Command-Line Interface' -sidebar_current: 'cli-winrm_config' +layout: docs +page_title: vagrant winrm-config - Command-Line Interface +sidebar_current: cli-winrm_config description: |- The "vagrant winrm-config" command is used to output the WinRM configuration used to connect to the guest machine. diff --git a/website/pages/docs/disks/configuration.html.md b/website/pages/docs/disks/configuration.mdx similarity index 91% rename from website/pages/docs/disks/configuration.html.md rename to website/pages/docs/disks/configuration.mdx index 6b8da403c..3235af06e 100644 --- a/website/pages/docs/disks/configuration.html.md +++ b/website/pages/docs/disks/configuration.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Vagrant Disks Configuration' -sidebar_current: 'disks-configuration' -description: |- - Documentation of various configuration options for Vagrant Disks +layout: docs +page_title: Vagrant Disks Configuration +sidebar_current: disks-configuration +description: Documentation of various configuration options for Vagrant Disks --- # Configuration @@ -61,11 +60,9 @@ config.vm.disk :floppy, name: "cool_files" If you are a vagrant plugin author who maintains a provider for Vagrant, this short guide will hopefully give some information on how to use the internal disk config object. -
- Warning! This guide is still being written as we develop this - new feature for Vagrant. Is something missing, or could this be improved? Please - let us know on GitHub by opening an issue or open a pull request directly. -
+~> **Warning!** This guide is still being written as we develop this +new feature for Vagrant. Is something missing, or could this be improved? Please +let us know on GitHub by opening an issue or open a pull request directly. All providers must implement the capability `configure_disks`, and `cleanup_disks`. These methods are responsible for the following: diff --git a/website/pages/docs/disks/index.html.md b/website/pages/docs/disks/index.mdx similarity index 59% rename from website/pages/docs/disks/index.html.md rename to website/pages/docs/disks/index.mdx index 6c97549e8..b15b3e405 100644 --- a/website/pages/docs/disks/index.html.md +++ b/website/pages/docs/disks/index.mdx @@ -1,19 +1,16 @@ --- -layout: 'docs' -page_title: 'Vagrant Disks' -sidebar_current: 'disks' -description: |- - Introduction to Vagrant Disks +layout: docs +page_title: Vagrant Disks +sidebar_current: disks +description: Introduction to Vagrant Disks --- # Vagrant Disks -
- Warning! This feature is experimental and may break or - change in between releases. Use at your own risk. It currently is not officially - supported or functional. Please refer to the providier specific disk documentation - for more information on how to use and enable this feature. -
+~> **Warning!** This feature is experimental and may break or +change in between releases. Use at your own risk. It currently is not officially +supported or functional. Please refer to the providier specific disk documentation +for more information on how to use and enable this feature. Vagrant Disks is a feature that allows users to define what mediums should be attached to their guests, as well as allowing users to resize their primary disk. diff --git a/website/pages/docs/disks/usage.html.md b/website/pages/docs/disks/usage.mdx similarity index 88% rename from website/pages/docs/disks/usage.html.md rename to website/pages/docs/disks/usage.mdx index 6284e3658..64355f3ed 100644 --- a/website/pages/docs/disks/usage.html.md +++ b/website/pages/docs/disks/usage.mdx @@ -1,17 +1,15 @@ --- -layout: 'docs' -page_title: 'Vagrant Disk Usage' -sidebar_current: 'disks-usage' -description: |- - Various Vagrant Disk examples +layout: docs +page_title: Vagrant Disk Usage +sidebar_current: disks-usage +description: Various Vagrant Disk examples --- # Basic Usage -
- Warning! This feature is experimental and may break or - change in between releases. Use at your own risk. It currently is not officially - supported or functional. +~> **Warning!** This feature is experimental and may break or +change in between releases. Use at your own risk. It currently is not officially +supported or functional. This feature currently reqiures the experimental flag to be used. To explicitly enable this feature, you can set the experimental flag to: @@ -26,8 +24,6 @@ for more info. Without this flag enabled, any disks defined will not be configur Also note that the examples below use the VirtualBox provider, which is the current supported providier for this feature. -
- Below are some very simple examples of how to use Vagrant Disks with the VirtualBox provider. ## Basic Examples diff --git a/website/pages/docs/disks/virtualbox/common-issues.html.md b/website/pages/docs/disks/virtualbox/common-issues.mdx similarity index 93% rename from website/pages/docs/disks/virtualbox/common-issues.html.md rename to website/pages/docs/disks/virtualbox/common-issues.mdx index 8b5a273d3..d039f1b85 100644 --- a/website/pages/docs/disks/virtualbox/common-issues.html.md +++ b/website/pages/docs/disks/virtualbox/common-issues.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Common Issues - Disks VirtualBox Provider' -sidebar_current: 'disks-providers-virtualbox-issues' +layout: docs +page_title: Common Issues - Disks VirtualBox Provider +sidebar_current: disks-providers-virtualbox-issues description: |- This page lists some common issues people run into with Vagrant and VirtualBox as well as solutions for those issues. diff --git a/website/pages/docs/disks/virtualbox/index.html.md b/website/pages/docs/disks/virtualbox/index.mdx similarity index 80% rename from website/pages/docs/disks/virtualbox/index.html.md rename to website/pages/docs/disks/virtualbox/index.mdx index 562d4b3eb..c51faeef8 100644 --- a/website/pages/docs/disks/virtualbox/index.html.md +++ b/website/pages/docs/disks/virtualbox/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Disks for VirtualBox Provider' -sidebar_current: 'disks-providers-virtualbox' +layout: docs +page_title: Disks for VirtualBox Provider +sidebar_current: disks-providers-virtualbox description: |- Vagrant comes with support out of the box for VirtualBox, a free, cross-platform consumer virtualization product. @@ -9,10 +9,9 @@ description: |- # VirtualBox -
- Warning! This feature is experimental and may break or - change in between releases. Use at your own risk. It currently is not officially - supported or functional. +~> **Warning!** This feature is experimental and may break or +change in between releases. Use at your own risk. It currently is not officially +supported or functional. This feature currently reqiures the experimental flag to be used. To explicitly enable this feature, you can set the experimental flag to: @@ -24,8 +23,6 @@ Please note that `VAGRANT_EXPERIMENTAL` is an environment variable. For more information about this flag visit the [Experimental docs page](/docs/experimental/) for more info. Without this flag enabled, any disks defined will not be configured. -
- **Vagrant currently only supports VirtualBox version 5.x and newer for configuring and attaching disks.** diff --git a/website/pages/docs/disks/virtualbox/usage.html.md b/website/pages/docs/disks/virtualbox/usage.mdx similarity index 73% rename from website/pages/docs/disks/virtualbox/usage.html.md rename to website/pages/docs/disks/virtualbox/usage.mdx index b7428511c..8b12ec490 100644 --- a/website/pages/docs/disks/virtualbox/usage.html.md +++ b/website/pages/docs/disks/virtualbox/usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Usage - Disks VirtualBox Provider' -sidebar_current: 'disks-providers-virtualbox-usage' +layout: docs +page_title: Usage - Disks VirtualBox Provider +sidebar_current: disks-providers-virtualbox-usage description: |- The Vagrant VirtualBox provider is used just like any other provider. Please read the general basic usage page for providers. @@ -9,10 +9,9 @@ description: |- # Usage -
- Warning! This feature is experimental and may break or - change in between releases. Use at your own risk. It currently is not officially - supported or functional. +~> **Warning!** This feature is experimental and may break or +change in between releases. Use at your own risk. It currently is not officially +supported or functional. This feature currently reqiures the experimental flag to be used. To explicitly enable this feature, you can set the experimental flag to: @@ -24,8 +23,6 @@ Please note that `VAGRANT_EXPERIMENTAL` is an environment variable. For more information about this flag visit the [Experimental docs page](/docs/experimental/) for more info. Without this flag enabled, any disks defined will not be configured. -
- For examples of how to use the disk feature with VirtualBox, please refer to the [general disk usage guide](/docs/disks/usage.html) for more examples. diff --git a/website/pages/docs/docker/basics.html.md b/website/pages/docs/docker/basics.mdx similarity index 90% rename from website/pages/docs/docker/basics.html.md rename to website/pages/docs/docker/basics.mdx index f0c9d914f..0f863ca3f 100644 --- a/website/pages/docs/docker/basics.html.md +++ b/website/pages/docs/docker/basics.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Basic Usage - Docker Provider' -sidebar_current: 'providers-docker-basics' +layout: docs +page_title: Basic Usage - Docker Provider +sidebar_current: providers-docker-basics description: |- The Docker provider in Vagrant behaves just like any other provider. If you are familiar with Vagrant already, then using the Docker provider @@ -102,13 +102,11 @@ can be customized to point to _any_ Vagrantfile. This allows the host VM to more closely match production by running a VM running Ubuntu, RHEL, etc. It can run any operating system supported by Vagrant. -
- Synced folder note: Vagrant will attempt to use the - "best" synced folder implementation it can. For boot2docker, this is - often rsync. In this case, make sure you have rsync installed on your - host machine. Vagrant will give you a human-friendly error message if - it is not. -
+-> **Synced folder note:** Vagrant will attempt to use the +"best" synced folder implementation it can. For boot2docker, this is +often rsync. In this case, make sure you have rsync installed on your +host machine. Vagrant will give you a human-friendly error message if +it is not. An example of changing the host VM is shown below. Remember that this is optional, and Vagrant will spin up a default host VM if it is not diff --git a/website/pages/docs/docker/boxes.html.md b/website/pages/docs/docker/boxes.mdx similarity index 85% rename from website/pages/docs/docker/boxes.html.md rename to website/pages/docs/docker/boxes.mdx index c215210a2..e19417c65 100644 --- a/website/pages/docs/docker/boxes.html.md +++ b/website/pages/docs/docker/boxes.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Boxes - Docker Provider' -sidebar_current: 'providers-docker-boxes' +layout: docs +page_title: Boxes - Docker Provider +sidebar_current: providers-docker-boxes description: |- The Docker provider does not require a Vagrant box. The "config.vm.box" setting is completely optional. diff --git a/website/pages/docs/docker/commands.html.md b/website/pages/docs/docker/commands.mdx similarity index 96% rename from website/pages/docs/docker/commands.html.md rename to website/pages/docs/docker/commands.mdx index b0f328832..c583220a0 100644 --- a/website/pages/docs/docker/commands.html.md +++ b/website/pages/docs/docker/commands.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Commands - Docker Provider' -sidebar_current: 'providers-docker-commands' +layout: docs +page_title: Commands - Docker Provider +sidebar_current: providers-docker-commands description: |- The Docker provider exposes some additional Vagrant commands that are useful for interacting with Docker containers. This helps with your diff --git a/website/pages/docs/docker/configuration.html.md b/website/pages/docs/docker/configuration.mdx similarity index 97% rename from website/pages/docs/docker/configuration.html.md rename to website/pages/docs/docker/configuration.mdx index cc5e8651e..63d0d4331 100644 --- a/website/pages/docs/docker/configuration.html.md +++ b/website/pages/docs/docker/configuration.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Configuration- Docker Provider' -sidebar_current: 'providers-docker-configuration' +layout: docs +page_title: Configuration- Docker Provider +sidebar_current: providers-docker-configuration description: |- The Docker provider has some provider-specific configuration options you may set. A complete reference is shown on this page. diff --git a/website/pages/docs/docker/index.html.md b/website/pages/docs/docker/index.mdx similarity index 62% rename from website/pages/docs/docker/index.html.md rename to website/pages/docs/docker/index.mdx index 3369f7bfc..ab4924669 100644 --- a/website/pages/docs/docker/index.html.md +++ b/website/pages/docs/docker/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Docker Provider' -sidebar_current: 'providers-docker' +layout: docs +page_title: Docker Provider +sidebar_current: providers-docker description: |- Vagrant comes with support out of the box for using Docker as a provider. This allows for your development environments @@ -16,12 +16,10 @@ using Docker as a provider. This allows for your development environments to be backed by Docker containers rather than virtual machines. Additionally, it provides for a good workflow for developing Dockerfiles. -
- Warning: Docker knowledge assumed. We assume that - you know what Docker is and that you are comfortable with the basics - of Docker. If not, we recommend starting with another provider such - as VirtualBox. -
+~> **Warning: Docker knowledge assumed.** We assume that +you know what Docker is and that you are comfortable with the basics +of Docker. If not, we recommend starting with another provider such +as [VirtualBox](/docs/virtualbox). Use the navigation to the left to find a specific Docker topic to read more about. diff --git a/website/pages/docs/docker/networking.html.md b/website/pages/docs/docker/networking.mdx similarity index 99% rename from website/pages/docs/docker/networking.html.md rename to website/pages/docs/docker/networking.mdx index 47fea6d55..b8cdcb21a 100644 --- a/website/pages/docs/docker/networking.html.md +++ b/website/pages/docs/docker/networking.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Networking - Docker Provider' -sidebar_current: 'providers-docker-networking' +layout: docs +page_title: Networking - Docker Provider +sidebar_current: providers-docker-networking description: |- The Vagrant Docker provider supports using the private network using the `docker network` commands. diff --git a/website/pages/docs/experimental/index.html.md b/website/pages/docs/experimental/index.mdx similarity index 79% rename from website/pages/docs/experimental/index.html.md rename to website/pages/docs/experimental/index.mdx index 2c73f74b4..231b403e8 100644 --- a/website/pages/docs/experimental/index.html.md +++ b/website/pages/docs/experimental/index.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Vagrant Experimental Feature Flag' -sidebar_current: 'experimental' -description: |- - Introduction to Vagrants Experimental Feature Flag +layout: docs +page_title: Vagrant Experimental Feature Flag +sidebar_current: experimental +description: Introduction to Vagrants Experimental Feature Flag --- # Experimental Feature Flag @@ -35,11 +34,9 @@ export VAGRANT_EXPERIMENTAL="feature_one,feature_two" ## Valid experimental features -
- Advanced topic! This is an advanced topic for use only if - you want to use new Vagrant features. If you are just getting - started with Vagrant, you may safely skip this section. -
+~> **Advanced topic!** This is an advanced topic for use only if +you want to use new Vagrant features. If you are just getting +started with Vagrant, you may safely skip this section. This is a list of all the valid experimental features that Vagrant recognizes: diff --git a/website/pages/docs/hyperv/boxes.html.md b/website/pages/docs/hyperv/boxes.mdx similarity index 87% rename from website/pages/docs/hyperv/boxes.html.md rename to website/pages/docs/hyperv/boxes.mdx index 053e2af0b..8d59f1146 100644 --- a/website/pages/docs/hyperv/boxes.html.md +++ b/website/pages/docs/hyperv/boxes.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Creating a Base Box - Hyper-V Provider' -sidebar_current: 'providers-hyperv-boxes' +layout: docs +page_title: Creating a Base Box - Hyper-V Provider +sidebar_current: providers-hyperv-boxes description: |- As with every Vagrant provider, the Vagrant Hyper-V provider has a custom box format that affects how base boxes are made. @@ -22,13 +22,11 @@ on the box. Additionally, it is helpful to understand the [basics of the box file format](/docs/boxes/format.html). -
- Advanced topic! This is a reasonably advanced topic that - a beginning user of Vagrant does not need to understand. If you are - just getting started with Vagrant, skip this and use an available - box. If you are an experienced user of Vagrant and want to create - your own custom boxes, this is for you. -
+~> **Advanced topic!** This is a reasonably advanced topic that +a beginning user of Vagrant does not need to understand. If you are +just getting started with Vagrant, skip this and use an available +box. If you are an experienced user of Vagrant and want to create +your own custom boxes, this is for you. ## Additional Software diff --git a/website/pages/docs/hyperv/configuration.html.md b/website/pages/docs/hyperv/configuration.mdx similarity index 96% rename from website/pages/docs/hyperv/configuration.html.md rename to website/pages/docs/hyperv/configuration.mdx index 2683f12ec..08554690f 100644 --- a/website/pages/docs/hyperv/configuration.html.md +++ b/website/pages/docs/hyperv/configuration.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Configuration- Hyper-V Provider' -sidebar_current: 'providers-hyperv-configuration' +layout: docs +page_title: Configuration- Hyper-V Provider +sidebar_current: providers-hyperv-configuration description: |- The Vagrant Hyper-V provider has some provider-specific configuration options you may set. diff --git a/website/pages/docs/hyperv/index.html.md b/website/pages/docs/hyperv/index.mdx similarity index 64% rename from website/pages/docs/hyperv/index.html.md rename to website/pages/docs/hyperv/index.mdx index b8d22f962..f4f7c9aaa 100644 --- a/website/pages/docs/hyperv/index.html.md +++ b/website/pages/docs/hyperv/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Hyper-V Provider' -sidebar_current: 'providers-hyperv' +layout: docs +page_title: Hyper-V Provider +sidebar_current: providers-hyperv description: |- Vagrant comes with support out of the box for Hyper-V, a native hypervisor written by Microsoft. Hyper-V is available by default for almost all @@ -24,14 +24,14 @@ To enable Hyper-V, go to "Programs and Features", click on "Turn Windows features on or off" and check the box next to "Hyper-V". Or install via PowerShell with: -Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All +```powershell +Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All +``` See official documentation [here](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v). -
- Warning: Enabling Hyper-V will cause VirtualBox, VMware, - and any other virtualization technology to no longer work. See - this blog post - for an easy way to create a boot entry to boot Windows without Hyper-V - enabled, if there will be times you will need other hypervisors. -
+~> **Warning:** Enabling Hyper-V will cause VirtualBox, VMware, +and any other virtualization technology to no longer work. See +[this blog post](http://www.hanselman.com/blog/SwitchEasilyBetweenVirtualBoxAndHyperVWithABCDEditBootEntryInWindows81.aspx) +for an easy way to create a boot entry to boot Windows without Hyper-V enabled, if +there will be times you will need other hypervisors. diff --git a/website/pages/docs/hyperv/limitations.html.md b/website/pages/docs/hyperv/limitations.mdx similarity index 91% rename from website/pages/docs/hyperv/limitations.html.md rename to website/pages/docs/hyperv/limitations.mdx index ee8f71b8d..404206edc 100644 --- a/website/pages/docs/hyperv/limitations.html.md +++ b/website/pages/docs/hyperv/limitations.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Limitations - Hyper-V Provider' -sidebar_current: 'providers-hyperv-limitations' +layout: docs +page_title: Limitations - Hyper-V Provider +sidebar_current: providers-hyperv-limitations description: |- The Hyper-V provider works in almost every way like the VirtualBox or VMware provider would, but has some limitations that are inherent to diff --git a/website/pages/docs/hyperv/usage.html.md b/website/pages/docs/hyperv/usage.mdx similarity index 89% rename from website/pages/docs/hyperv/usage.html.md rename to website/pages/docs/hyperv/usage.mdx index 46eae3a1c..8947d02b1 100644 --- a/website/pages/docs/hyperv/usage.html.md +++ b/website/pages/docs/hyperv/usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Usage - Hyper-V Provider' -sidebar_current: 'providers-hyperv-usage' +layout: docs +page_title: Usage - Hyper-V Provider +sidebar_current: providers-hyperv-usage description: |- The Hyper-V provider is used just like any other provider. Please read the general basic usage page for providers. diff --git a/website/pages/docs/index.html.md b/website/pages/docs/index.mdx similarity index 92% rename from website/pages/docs/index.html.md rename to website/pages/docs/index.mdx index 633c5c3a1..b59e84954 100644 --- a/website/pages/docs/index.html.md +++ b/website/pages/docs/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -sidebar_current: 'overview' -page_title: 'Documentation' +layout: docs +sidebar_current: overview +page_title: Documentation description: |- Welcome to the documentation for Vagrant - the command line utility for managing the lifecycle of virtual machines. This website aims to document diff --git a/website/pages/docs/installation/backwards-compatibility.html.md b/website/pages/docs/installation/backwards-compatibility.mdx similarity index 88% rename from website/pages/docs/installation/backwards-compatibility.html.md rename to website/pages/docs/installation/backwards-compatibility.mdx index aee97ec16..13db52619 100644 --- a/website/pages/docs/installation/backwards-compatibility.html.md +++ b/website/pages/docs/installation/backwards-compatibility.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Backwards Compatibility' -sidebar_current: 'installation-backwards-compatibility' -description: |- - Vagrant makes a very strict backwards-compatibility promise. +layout: docs +page_title: Backwards Compatibility +sidebar_current: installation-backwards-compatibility +description: Vagrant makes a very strict backwards-compatibility promise. --- # Backwards Compatibility diff --git a/website/pages/docs/installation/index.html.md b/website/pages/docs/installation/index.mdx similarity index 57% rename from website/pages/docs/installation/index.html.md rename to website/pages/docs/installation/index.mdx index 5df28876e..caf746dcd 100644 --- a/website/pages/docs/installation/index.html.md +++ b/website/pages/docs/installation/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Installing Vagrant' -sidebar_current: 'installation' +layout: docs +page_title: Installing Vagrant +sidebar_current: installation description: |- Installing Vagrant is extremely easy. Head over to the Vagrant downloads page and get the appropriate installer or package for your platform. Install the @@ -20,22 +20,18 @@ so that it is available in terminals. If it is not found, please try logging out and logging back in to your system (this is particularly necessary sometimes for Windows). - +~> **Looking for the gem install?** Vagrant 1.0.x had the option to +be installed as a [RubyGem](https://en.wikipedia.org/wiki/RubyGems). +This installation method is no longer supported. If you have an old version +of Vagrant installed via Rubygems, please remove it prior to installing newer +versions of Vagrant. - +~> **Beware of system package managers!** Some operating system +distributions include a vagrant package in their upstream package repos. +Please do not install Vagrant in this manner. Typically these packages are +missing dependencies or include very outdated versions of Vagrant. If you +install via your system's package manager, it is very likely that you will +experience issues. Please use the official installers on the downloads page. ## Running Multiple Hypervisors @@ -44,14 +40,16 @@ if more than one hypervisor is in use. If you are lucky, you might see the follo error message come up when trying to bring up a virtual machine with Vagrant and VirtualBox: - There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below. +```text +There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below. - Command: ["startvm", , "--type", "headless"] +Command: ["startvm", , "--type", "headless"] - Stderr: VBoxManage: error: VT-x is being used by another hypervisor (VERR_VMX_IN_VMX_ROOT_MODE). - VBoxManage: error: VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot - (VERR_VMX_IN_VMX_ROOT_MODE) - VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole +Stderr: VBoxManage: error: VT-x is being used by another hypervisor (VERR_VMX_IN_VMX_ROOT_MODE). +VBoxManage: error: VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot +(VERR_VMX_IN_VMX_ROOT_MODE) +VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole +``` Other operating systems like Windows will blue screen if you attempt to bring up a VirtualBox VM with Hyper-V enabled. Below are a couple of ways to ensure you @@ -64,16 +62,20 @@ We must blacklist these in order for VirtualBox to run correctly. First find out the name of the hypervisor: - $ lsmod | grep kvm - kvm_intel 204800 6 - kvm 593920 1 kvm_intel - irqbypass 16384 1 kvm +```shell-session +$ lsmod | grep kvm +kvm_intel 204800 6 +kvm 593920 1 kvm_intel +irqbypass 16384 1 kvm +``` The one we're interested in is `kvm_intel`. You might have another. Blacklist the hypervisor (run the following as root): - # echo 'blacklist kvm-intel' >> /etc/modprobe.d/blacklist.conf +```shell-session +$ echo 'blacklist kvm-intel' >> /etc/modprobe.d/blacklist.conf +``` Restart your machine and try running vagrant again. diff --git a/website/pages/docs/installation/source.html.md b/website/pages/docs/installation/source.mdx similarity index 96% rename from website/pages/docs/installation/source.html.md rename to website/pages/docs/installation/source.mdx index 0b2ce3bd9..8391bcf94 100644 --- a/website/pages/docs/installation/source.html.md +++ b/website/pages/docs/installation/source.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Installing Vagrant from Source' -sidebar_current: 'installation-source' +layout: docs +page_title: Installing Vagrant from Source +sidebar_current: installation-source description: |- Installing Vagrant from source is an advanced topic and is only recommended when using the official installer is not an option. This page details the diff --git a/website/pages/docs/installation/uninstallation.html.md b/website/pages/docs/installation/uninstallation.mdx similarity index 95% rename from website/pages/docs/installation/uninstallation.html.md rename to website/pages/docs/installation/uninstallation.mdx index bf1cbe2bf..9bc16910d 100644 --- a/website/pages/docs/installation/uninstallation.html.md +++ b/website/pages/docs/installation/uninstallation.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Uninstalling Vagrant' -sidebar_current: 'installation-uninstallation' +layout: docs +page_title: Uninstalling Vagrant +sidebar_current: installation-uninstallation description: |- Uninstalling Vagrant is easy and straightforward. You can either uninstall the Vagrant binary, the user data, or both. The sections below cover how to diff --git a/website/pages/docs/installation/upgrading-from-1-0.html.md b/website/pages/docs/installation/upgrading-from-1-0.mdx similarity index 75% rename from website/pages/docs/installation/upgrading-from-1-0.html.md rename to website/pages/docs/installation/upgrading-from-1-0.mdx index 71bcc1cc1..b19c4d9f0 100644 --- a/website/pages/docs/installation/upgrading-from-1-0.html.md +++ b/website/pages/docs/installation/upgrading-from-1-0.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Upgrading from Vagrant 1.0' -sidebar_current: 'installation-1-0-upgrading' +layout: docs +page_title: Upgrading from Vagrant 1.0 +sidebar_current: installation-1-0-upgrading description: |- The upgrade process from 1.0.x to 1.x is straightforward. Vagrant is backwards compatible with Vagrant 1.0.x, so you can simply reinstall Vagrant @@ -26,8 +26,6 @@ to remove them before upgrading. It is recommended you remove _all_ plugins before upgrading, and then slowly add back the plugins. This usually makes for a smoother upgrade process. - +~> **If your version of Vagrant was installed via Rubygems**, you +must uninstall the old version prior to installing the package for the +new version of Vagrant. The Rubygems installation is no longer supported. diff --git a/website/pages/docs/installation/upgrading.html.md b/website/pages/docs/installation/upgrading.mdx similarity index 71% rename from website/pages/docs/installation/upgrading.html.md rename to website/pages/docs/installation/upgrading.mdx index 874726ea2..221c37b82 100644 --- a/website/pages/docs/installation/upgrading.html.md +++ b/website/pages/docs/installation/upgrading.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Upgrading Vagrant' -sidebar_current: 'installation-upgrading' +layout: docs +page_title: Upgrading Vagrant +sidebar_current: installation-upgrading description: |- If you are upgrading from Vagrant 1.0.x, please read the specific page dedicated to that. This page covers upgrading Vagrant in general during the @@ -27,9 +27,6 @@ promised until 2.0 final. So while Vagrantfiles made for 1.0.x will [continue to work](/docs/installation/backwards-compatibility.html), newer Vagrantfiles may have backwards incompatible changes until 2.0 final. -
- Run into troubles upgrading? Please - report an issue - if you run into problems upgrading. Upgrades are meant to be a smooth - process and we consider it a bug if it was not. -
+-> **Run into troubles upgrading?** Please [report an issue](https://github.com/hashicorp/vagrant/issues) +if you run into problems upgrading. Upgrades are meant to be a smooth +process and we consider it a bug if it was not. diff --git a/website/pages/docs/multi-machine/index.html.md b/website/pages/docs/multi-machine/index.mdx similarity index 98% rename from website/pages/docs/multi-machine/index.html.md rename to website/pages/docs/multi-machine/index.mdx index 3594ecf9c..00c29e384 100644 --- a/website/pages/docs/multi-machine/index.html.md +++ b/website/pages/docs/multi-machine/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Multi-Machine' -sidebar_current: 'multimachine' +layout: docs +page_title: Multi-Machine +sidebar_current: multimachine description: |- Vagrant is able to define and control multiple guest machines per Vagrantfile. This is known as a "multi-machine" environment. diff --git a/website/pages/docs/networking/basic_usage.html.md b/website/pages/docs/networking/basic_usage.mdx similarity index 94% rename from website/pages/docs/networking/basic_usage.html.md rename to website/pages/docs/networking/basic_usage.mdx index c2110297a..82eb868c3 100644 --- a/website/pages/docs/networking/basic_usage.html.md +++ b/website/pages/docs/networking/basic_usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Basic Usage - Networking' -sidebar_current: 'networking-basic' +layout: docs +page_title: Basic Usage - Networking +sidebar_current: networking-basic description: |- Vagrant offers multiple options for how you are able to connect your guest machines to the network, but there is a standard usage pattern as diff --git a/website/pages/docs/networking/forwarded_ports.html.md b/website/pages/docs/networking/forwarded_ports.mdx similarity index 98% rename from website/pages/docs/networking/forwarded_ports.html.md rename to website/pages/docs/networking/forwarded_ports.mdx index d9ded1981..e3d7c2803 100644 --- a/website/pages/docs/networking/forwarded_ports.html.md +++ b/website/pages/docs/networking/forwarded_ports.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Forwarded Ports - Networking' -sidebar_current: 'networking-fp' +layout: docs +page_title: Forwarded Ports - Networking +sidebar_current: networking-fp description: |- Vagrant forwarded ports allow you to access a port on your host machine and have all data forwarded to a port on the guest machine, over either TCP or diff --git a/website/pages/docs/networking/index.html.md b/website/pages/docs/networking/index.mdx similarity index 75% rename from website/pages/docs/networking/index.html.md rename to website/pages/docs/networking/index.mdx index 3d2c3aad0..d2f32cf14 100644 --- a/website/pages/docs/networking/index.html.md +++ b/website/pages/docs/networking/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Networking' -sidebar_current: 'networking' +layout: docs +page_title: Networking +sidebar_current: networking description: |- In order to access the Vagrant environment created, Vagrant exposes some high-level networking options for things such as forwarded ports, @@ -33,10 +33,8 @@ providers expose [provider-specific configuration](/docs/providers/configuration to do this, so please read the documentation for your specific provider to see what options are available. -
- For beginners: It is strongly recommended you use - only the high-level networking options until you are comfortable - with the Vagrant workflow and have things working at a basic level. - Provider-specific network configuration can very quickly lock you out - of your guest machine if improperly done. -
+-> **For beginners:** It is strongly recommended you use +only the high-level networking options until you are comfortable +with the Vagrant workflow and have things working at a basic level. +Provider-specific network configuration can very quickly lock you out +of your guest machine if improperly done. diff --git a/website/pages/docs/networking/private_network.html.md b/website/pages/docs/networking/private_network.mdx similarity index 82% rename from website/pages/docs/networking/private_network.html.md rename to website/pages/docs/networking/private_network.mdx index 4d19ffd97..5e7a956a2 100644 --- a/website/pages/docs/networking/private_network.html.md +++ b/website/pages/docs/networking/private_network.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Private Networks - Networking' -sidebar_current: 'networking-private' +layout: docs +page_title: Private Networks - Networking +sidebar_current: networking-private description: |- Vagrant private networks allow you to access your guest machine by some address that is not publicly accessible from the global internet. In general, @@ -20,15 +20,12 @@ Multiple machines within the same private network (also usually with the restriction that they're backed by the same [provider](/docs/providers/)) can communicate with each other on private networks. -
- Guest operating system support. Private networks - generally require configuring the network adapters on the guest - machine. This process varies from OS to OS. Vagrant ships with - knowledge of how to configure networks on a variety of guest - operating systems, but it is possible if you are using a particularly - old or new operating system that private networks will not properly - configure. -
+-> **Guest operating system support.** Private networks generally +require configuring the network adapters on the guest machine. This process +varies from OS to OS. Vagrant ships with knowledge of how to configure +networks on a variety of guest operating systems, but it is possible if you +are using a particularly old or new operating system that private networks +will not properly configure. ## DHCP @@ -69,11 +66,9 @@ outside world. For some operating systems, additional configuration options for the static IP address are available such as setting the default gateway or MTU. -
- Warning! Do not choose an IP that overlaps with any - other IP space on your system. This can cause the network to not be - reachable. -
+~> **Warning!** Do not choose an IP that overlaps with any +other IP space on your system. This can cause the network to not be +reachable. ## IPv6 diff --git a/website/pages/docs/networking/public_network.html.md b/website/pages/docs/networking/public_network.mdx similarity index 80% rename from website/pages/docs/networking/public_network.html.md rename to website/pages/docs/networking/public_network.mdx index 9da455bce..8edba5f1f 100644 --- a/website/pages/docs/networking/public_network.html.md +++ b/website/pages/docs/networking/public_network.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Public Networks - Networking' -sidebar_current: 'networking-public' +layout: docs +page_title: Public Networks - Networking +sidebar_current: networking-public description: |- Vagrant public networks are less private than private networks, and the exact meaning actually varies from provider to provider, hence the ambiguous @@ -19,24 +19,19 @@ hence the ambiguous definition. The idea is that while [private networks](/docs/networking/private_network.html) should never allow the general public access to your machine, public networks can. -
- Confused? We kind of are, too. It is likely that - public networks will be replaced by :bridged in a - future release, since that is in general what should be done with - public networks, and providers that do not support bridging generally - do not have any other features that map to public networks either. -
+-> **Confused?** We kind of are, too. It is likely that public +networks will be replaced by `:bridged` in a future release, since +that is in general what should be done with public networks, and providers +that do not support bridging generally do not have any other features that map +to public networks either. -
- Warning! Vagrant boxes are insecure by default - and by design, featuring public passwords, insecure keypairs - for SSH access, and potentially allow root access over SSH. With - these known credentials, your box is easily accessible by anyone on - your network. Before configuring Vagrant to use a public network, - consider all potential security implications - and review the default box - configuration to identify potential security risks. -
+~> **Warning!** Vagrant boxes are insecure by default +and by design, featuring public passwords, insecure keypairs +for SSH access, and potentially allow root access over SSH. With +these known credentials, your box is easily accessible by anyone on +your network. Before configuring Vagrant to use a public network, +consider _all_ potential security implications +and review the [default box configuration](/docs/boxes/base.html) to identify potential security risks. ## DHCP diff --git a/website/pages/docs/other/debugging.html.md b/website/pages/docs/other/debugging.mdx similarity index 96% rename from website/pages/docs/other/debugging.html.md rename to website/pages/docs/other/debugging.mdx index 257431b21..031500fcc 100644 --- a/website/pages/docs/other/debugging.html.md +++ b/website/pages/docs/other/debugging.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Debugging and Troubleshooting' -sidebar_current: 'other-debugging' +layout: docs +page_title: Debugging and Troubleshooting +sidebar_current: other-debugging description: |- As much as we try to keep Vagrant stable and bug free, it is inevitable that issues will arise and Vagrant will behave in unexpected ways. In diff --git a/website/pages/docs/other/environmental-variables.html.md b/website/pages/docs/other/environmental-variables.mdx similarity index 99% rename from website/pages/docs/other/environmental-variables.html.md rename to website/pages/docs/other/environmental-variables.mdx index 1d1caddaa..5a9a9c623 100644 --- a/website/pages/docs/other/environmental-variables.html.md +++ b/website/pages/docs/other/environmental-variables.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Environmental Variables' -sidebar_current: 'other-envvars' +layout: docs +page_title: Environmental Variables +sidebar_current: other-envvars description: |- Vagrant has a set of environmental variables that can be used to configure and control it in a global way. This page lists those environmental diff --git a/website/pages/docs/other/index.html.md b/website/pages/docs/other/index.mdx similarity index 84% rename from website/pages/docs/other/index.html.md rename to website/pages/docs/other/index.mdx index a772547b5..5a1d60336 100644 --- a/website/pages/docs/other/index.html.md +++ b/website/pages/docs/other/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Other' -sidebar_current: 'other' +layout: docs +page_title: Other +sidebar_current: other description: |- This page covers Vagrant information that does not quite fit under the other categories. diff --git a/website/pages/docs/other/macos-catalina.html.md b/website/pages/docs/other/macos-catalina.mdx similarity index 87% rename from website/pages/docs/other/macos-catalina.html.md rename to website/pages/docs/other/macos-catalina.mdx index 7ed6a431d..9e2cca1ac 100644 --- a/website/pages/docs/other/macos-catalina.html.md +++ b/website/pages/docs/other/macos-catalina.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Vagrant and macOS Catalina' -sidebar_current: 'other-macos-catalina' -description: |- - An overview of using Vagrant on macOS Catalina. +layout: docs +page_title: Vagrant and macOS Catalina +sidebar_current: other-macos-catalina +description: An overview of using Vagrant on macOS Catalina. --- # Vagrant and macOS Catalina diff --git a/website/pages/docs/other/wsl.html.md b/website/pages/docs/other/wsl.mdx similarity index 93% rename from website/pages/docs/other/wsl.html.md rename to website/pages/docs/other/wsl.mdx index 8717870b3..099236f3f 100644 --- a/website/pages/docs/other/wsl.html.md +++ b/website/pages/docs/other/wsl.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant and Windows Subsystem for Linux' -sidebar_current: 'other-wsl' +layout: docs +page_title: Vagrant and Windows Subsystem for Linux +sidebar_current: other-wsl description: |- An overview of using Vagrant on Windows within the Windows Subsystem for Linux. @@ -14,11 +14,9 @@ an optional Windows feature. The WSL supports running a Linux environment within Windows. Vagrant support for WSL is still in development and should be considered _beta_. -
- Warning: Advanced Topic! Using Vagrant within the Windows - Subsystem for Linux is an advanced topic that only experienced Vagrant users - who are reasonably comfortable with Windows, WSL, and Linux should approach. -
+~> **Warning: Advanced Topic!** Using Vagrant within the Windows +Subsystem for Linux is an advanced topic that only experienced Vagrant users +who are reasonably comfortable with Windows, WSL, and Linux should approach. ## Vagrant Installation diff --git a/website/pages/docs/plugins/action-hooks.html.md b/website/pages/docs/plugins/action-hooks.mdx similarity index 89% rename from website/pages/docs/plugins/action-hooks.html.md rename to website/pages/docs/plugins/action-hooks.mdx index 41178552c..5a9f2d9ea 100644 --- a/website/pages/docs/plugins/action-hooks.html.md +++ b/website/pages/docs/plugins/action-hooks.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Plugin Development Basics - Action Hooks' -sidebar_current: 'plugins-action-hooks' +layout: docs +page_title: Plugin Development Basics - Action Hooks +sidebar_current: plugins-action-hooks description: |- Action hooks provide ways to interact with Vagrant at a very low level by injecting middleware in various phases of Vagrant's lifecycle. This is an @@ -14,11 +14,9 @@ Action hooks provide ways to interact with Vagrant at a very low level by injecting middleware in various phases of Vagrant's lifecycle. This is an advanced option, even for plugin development. -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. ## Public Action Hooks diff --git a/website/pages/docs/plugins/commands.html.md b/website/pages/docs/plugins/commands.mdx similarity index 92% rename from website/pages/docs/plugins/commands.html.md rename to website/pages/docs/plugins/commands.mdx index 7941eb95e..9e708d239 100644 --- a/website/pages/docs/plugins/commands.html.md +++ b/website/pages/docs/plugins/commands.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Command Plugins - Plugin Development' -sidebar_current: 'plugins-commands' +layout: docs +page_title: Command Plugins - Plugin Development +sidebar_current: plugins-commands description: |- This page documents how to add new commands to Vagrant, invocable via "vagrant YOUR-COMMAND". Prior to reading this, you should be familiar @@ -14,11 +14,9 @@ This page documents how to add new commands to Vagrant, invocable via `vagrant YOUR-COMMAND`. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. ## Definition Component diff --git a/website/pages/docs/plugins/configuration.html.md b/website/pages/docs/plugins/configuration.mdx similarity index 94% rename from website/pages/docs/plugins/configuration.html.md rename to website/pages/docs/plugins/configuration.mdx index f41edb1c5..0e05a67d3 100644 --- a/website/pages/docs/plugins/configuration.html.md +++ b/website/pages/docs/plugins/configuration.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Configuration - Plugin Development' -sidebar_current: 'plugins-configuration' +layout: docs +page_title: Custom Configuration - Plugin Development +sidebar_current: plugins-configuration description: |- This page documents how to add new configuration options to Vagrant, settable with "config.YOURKEY" in Vagrantfiles. Prior to reading this, @@ -15,11 +15,9 @@ settable with `config.YOURKEY` in Vagrantfiles. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. ## Definition Component diff --git a/website/pages/docs/plugins/development-basics.html.md b/website/pages/docs/plugins/development-basics.mdx similarity index 95% rename from website/pages/docs/plugins/development-basics.html.md rename to website/pages/docs/plugins/development-basics.mdx index 18129f7dd..6b3e0a7b2 100644 --- a/website/pages/docs/plugins/development-basics.html.md +++ b/website/pages/docs/plugins/development-basics.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Plugin Development Basics - Plugins' -sidebar_current: 'plugins-development-basics' +layout: docs +page_title: Plugin Development Basics - Plugins +sidebar_current: plugins-development-basics description: |- Plugins are a great way to augment or change the behavior and functionality of Vagrant. Since plugins introduce additional external dependencies for @@ -20,11 +20,9 @@ But if you need to introduce custom behaviors into Vagrant, plugins are the best way, since they are safe against future upgrades and use a stable API. -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. Plugins are written using [Ruby](https://www.ruby-lang.org/en/) and are packaged using [RubyGems](https://rubygems.org/). Familiarity with Ruby is required, diff --git a/website/pages/docs/plugins/guest-capabilities.html.md b/website/pages/docs/plugins/guest-capabilities.mdx similarity index 91% rename from website/pages/docs/plugins/guest-capabilities.html.md rename to website/pages/docs/plugins/guest-capabilities.mdx index 3ac0c83b1..6b941d4e7 100644 --- a/website/pages/docs/plugins/guest-capabilities.html.md +++ b/website/pages/docs/plugins/guest-capabilities.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Guest Capabilities - Plugin Development' -sidebar_current: 'plugins-guestcapabilities' +layout: docs +page_title: Guest Capabilities - Plugin Development +sidebar_current: plugins-guestcapabilities description: |- This page documents how to add new capabilities for guests to Vagrant, allowing Vagrant to perform new actions on specific guest operating systems. @@ -17,11 +17,9 @@ operating systems. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. Guest capabilities augment [guests](/docs/plugins/guests.html) by attaching specific "capabilities" to the guest, which are actions that can be performed diff --git a/website/pages/docs/plugins/guests.html.md b/website/pages/docs/plugins/guests.mdx similarity index 91% rename from website/pages/docs/plugins/guests.html.md rename to website/pages/docs/plugins/guests.mdx index 60c9502e0..75f8b37ca 100644 --- a/website/pages/docs/plugins/guests.html.md +++ b/website/pages/docs/plugins/guests.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Guests - Plugin Development' -sidebar_current: 'plugins-guests' +layout: docs +page_title: Custom Guests - Plugin Development +sidebar_current: plugins-guests description: |- This page documents how to add new guest OS detection to Vagrant, allowing Vagrant to properly configure new operating systems. Prior to reading this, @@ -15,11 +15,9 @@ Vagrant to properly configure new operating systems. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. Vagrant has many features that requires doing guest OS-specific actions, such as mounting folders, configuring networks, etc. These diff --git a/website/pages/docs/plugins/host-capabilities.html.md b/website/pages/docs/plugins/host-capabilities.mdx similarity index 80% rename from website/pages/docs/plugins/host-capabilities.html.md rename to website/pages/docs/plugins/host-capabilities.mdx index 21fb92b26..7eea9a823 100644 --- a/website/pages/docs/plugins/host-capabilities.html.md +++ b/website/pages/docs/plugins/host-capabilities.mdx @@ -1,9 +1,11 @@ --- -layout: 'docs' -page_title: 'Host Capabilities - Plugin Development' -sidebar_current: 'plugins-hostcapabilities' -description: |- - This page documents how to add new capabilities for hosts to Vagrant, allowing Vagrant to perform new actions on specific host operating systems. Prior to reading this, you should be familiar with the plugin development basics. +layout: docs +page_title: Host Capabilities - Plugin Development +sidebar_current: plugins-hostcapabilities +description: >- + This page documents how to add new capabilities for hosts to Vagrant, allowing + Vagrant to perform new actions on specific host operating systems. Prior to + reading this, you should be familiar with the plugin development basics. --- # Plugin Development: Host Capabilities @@ -14,11 +16,9 @@ operating systems. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. Host capabilities augment [hosts](/docs/plugins/hosts.html) by attaching specific "capabilities" to the host, which are actions that can be performed diff --git a/website/pages/docs/plugins/hosts.html.md b/website/pages/docs/plugins/hosts.mdx similarity index 91% rename from website/pages/docs/plugins/hosts.html.md rename to website/pages/docs/plugins/hosts.mdx index 17895a153..5d85c6f51 100644 --- a/website/pages/docs/plugins/hosts.html.md +++ b/website/pages/docs/plugins/hosts.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Hosts - Plugin Development' -sidebar_current: 'plugins-hosts' +layout: docs +page_title: Custom Hosts - Plugin Development +sidebar_current: plugins-hosts description: |- This page documents how to add new host OS detection to Vagrant, allowing Vagrant to properly execute host-specific operations on new operating systems. @@ -16,11 +16,9 @@ Vagrant to properly execute host-specific operations on new operating systems. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. Vagrant has some features that require host OS-specific actions, such as exporting NFS folders. These tasks vary from operating system to operating diff --git a/website/pages/docs/plugins/index.html.md b/website/pages/docs/plugins/index.mdx similarity index 94% rename from website/pages/docs/plugins/index.html.md rename to website/pages/docs/plugins/index.mdx index c5a8c778e..48141dcda 100644 --- a/website/pages/docs/plugins/index.html.md +++ b/website/pages/docs/plugins/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Plugins' -sidebar_current: 'plugins' +layout: docs +page_title: Plugins +sidebar_current: plugins description: |- Vagrant comes with many great features out of the box to get your environments up and running. Sometimes, however, you want to change the way Vagrant does diff --git a/website/pages/docs/plugins/packaging.html.md b/website/pages/docs/plugins/packaging.mdx similarity index 86% rename from website/pages/docs/plugins/packaging.html.md rename to website/pages/docs/plugins/packaging.mdx index b1a2235ed..ed936d2af 100644 --- a/website/pages/docs/plugins/packaging.html.md +++ b/website/pages/docs/plugins/packaging.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Packaging and Distribution - Plugin Development' -sidebar_current: 'plugins-packaging' +layout: docs +page_title: Packaging and Distribution - Plugin Development +sidebar_current: plugins-packaging description: |- This page documents how to organize the file structure of your plugin and distribute it so that it is installable using standard installation @@ -17,11 +17,9 @@ and distribute it so that it is installable using Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. ## Example Plugin @@ -47,13 +45,9 @@ You should modify the `vagrant-my-plugin.gemspec` file to add any dependencies and change any metadata. View the [vagrant-aws.gemspec](https://github.com/mitchellh/vagrant-aws/blob/master/vagrant-aws.gemspec) for a good example. -
-

- Do not depend on Vagrant for your gem. Vagrant - is no longer distributed as a gem, and you can assume that it will - always be available when your plugin is installed. -

-
+~> **Do not depend on Vagrant** for your gem. Vagrant is no longer distributed +as a gem, and you can assume that it will always be available when your plugin is +installed. Once the directory structure for a RubyGem is setup, you will want to modify your Gemfile. Here is the basic structure of a Gemfile for diff --git a/website/pages/docs/plugins/providers.html.md b/website/pages/docs/plugins/providers.mdx similarity index 91% rename from website/pages/docs/plugins/providers.html.md rename to website/pages/docs/plugins/providers.mdx index 278c6cdc5..5c4701bc8 100644 --- a/website/pages/docs/plugins/providers.html.md +++ b/website/pages/docs/plugins/providers.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Providers - Plugin Development' -sidebar_current: 'plugins-providers' +layout: docs +page_title: Custom Providers - Plugin Development +sidebar_current: plugins-providers description: |- This page documents how to add support for new providers to Vagrant, allowing Vagrant to run and manage machines powered by a system other than VirtualBox. @@ -20,11 +20,9 @@ Prior to developing a provider you should also be familiar with how [providers work](/docs/providers/) from a user standpoint. -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. ## Example Provider: AWS @@ -108,8 +106,6 @@ a `vagrant box list` you can see what boxes for what providers are installed. You do _not need_ the provider plugin installed to add a box for that provider. - - ## Actions Probably the most important concept to understand when building a @@ -204,14 +200,11 @@ The provider-specific configuration is available on the machine object via the `provider_config` attribute. So within actions or your provider class, you can access the config via `machine.provider_config`. -
- Best practice: Your provider should not require - provider-specific configuration to function, if possible. Vagrant - practices a strong convention over configuration - philosophy. When a user installs your provider, they should ideally - be able to vagrant up --provider=your_provider and - have it just work. -
+-> **Best practice:** Your provider should _not require_ +provider-specific configuration to function, if possible. Vagrant practices a +strong [convention over configuration](https://en.wikipedia.org/wiki/Convention_over_configuration) +philosophy. When a user installs your provider, they should ideally be able to +`vagrant up --provider=your_provider` and have it just work. ## Parallelization diff --git a/website/pages/docs/plugins/provisioners.html.md b/website/pages/docs/plugins/provisioners.mdx similarity index 87% rename from website/pages/docs/plugins/provisioners.html.md rename to website/pages/docs/plugins/provisioners.mdx index ad5b63182..b382a8865 100644 --- a/website/pages/docs/plugins/provisioners.html.md +++ b/website/pages/docs/plugins/provisioners.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Provisioners - Plugin Development' -sidebar_current: 'plugins-provisioners' +layout: docs +page_title: Custom Provisioners - Plugin Development +sidebar_current: plugins-provisioners script: |- This page documents how to add new provisioners to Vagrant, allowing Vagrant to automatically install software and configure software using a custom @@ -16,11 +16,9 @@ allowing Vagrant to automatically install software and configure software using a custom provisioner. Prior to reading this, you should be familiar with the [plugin development basics](/docs/plugins/development-basics.html). -
- Warning: Advanced Topic! Developing plugins is an - advanced topic that only experienced Vagrant users who are reasonably - comfortable with Ruby should approach. -
+~> **Warning: Advanced Topic!** Developing plugins is an +advanced topic that only experienced Vagrant users who are reasonably +comfortable with Ruby should approach. ## Definition Component diff --git a/website/pages/docs/plugins/usage.html.md b/website/pages/docs/plugins/usage.mdx similarity index 88% rename from website/pages/docs/plugins/usage.html.md rename to website/pages/docs/plugins/usage.mdx index 924ef1aa6..2b52030ca 100644 --- a/website/pages/docs/plugins/usage.html.md +++ b/website/pages/docs/plugins/usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Plugin Usage - Plugins' -sidebar_current: 'plugins-usage' +layout: docs +page_title: Plugin Usage - Plugins +sidebar_current: plugins-usage description: |- Installing a Vagrant plugin is easy, and should not take more than a few seconds. @@ -15,10 +15,8 @@ Please refer to the documentation of any plugin you plan on using for more information on how to use it, but there is one common method for installation and plugin activation. -
- Warning! 3rd party plugins can introduce instabilities - into Vagrant due to the nature of them being written by non-core users. -
+~> **Warning!** 3rd party plugins can introduce instabilities +into Vagrant due to the nature of them being written by non-core users. ## Installation diff --git a/website/pages/docs/providers/basic_usage.html.md b/website/pages/docs/providers/basic_usage.mdx similarity index 87% rename from website/pages/docs/providers/basic_usage.html.md rename to website/pages/docs/providers/basic_usage.mdx index b0d79833f..df71a47a2 100644 --- a/website/pages/docs/providers/basic_usage.html.md +++ b/website/pages/docs/providers/basic_usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Basic Usage - Providers' -sidebar_current: 'providers-basic-usage' +layout: docs +page_title: Basic Usage - Providers +sidebar_current: providers-basic-usage description: |- Vagrant boxes are all provider-specific. A box for VirtualBox is incompatible with the VMware Fusion provider, or any other provider. A box must be @@ -55,14 +55,12 @@ If you specified a `--provider` flag, you only need to do this for the see what provider is backing a running machine, so commands such as `destroy`, `suspend`, etc. do not need to be told what provider to use. -
- Vagrant currently restricts you to bringing up one provider per machine. - If you have a multi-machine environment, you can bring up one machine - backed by VirtualBox and another backed by VMware Fusion, for example, but you - cannot back the same machine with both VirtualBox and - VMware Fusion. This is a limitation that will be removed in a future - version of Vagrant. -
+-> Vagrant currently restricts you to bringing up one provider per machine. +If you have a multi-machine environment, you can bring up one machine +backed by VirtualBox and another backed by VMware Fusion, for example, but you +cannot back the same machine with both VirtualBox and +VMware Fusion. This is a limitation that will be removed in a future +version of Vagrant. ## Default Provider diff --git a/website/pages/docs/providers/configuration.html.md b/website/pages/docs/providers/configuration.mdx similarity index 85% rename from website/pages/docs/providers/configuration.html.md rename to website/pages/docs/providers/configuration.mdx index c8b815909..34058741b 100644 --- a/website/pages/docs/providers/configuration.html.md +++ b/website/pages/docs/providers/configuration.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Configuration - Providers' -sidebar_current: 'providers-configuration' +layout: docs +page_title: Configuration - Providers +sidebar_current: providers-configuration description: |- While well-behaved Vagrant providers should work with any Vagrantfile with sane defaults, providers generally expose unique configuration options so that @@ -82,10 +82,8 @@ end In the above case, Vagrant will use the "bionic64" box by default, but will use "bionic64_fusion" if the VMware Fusion provider is used. -
- The Vagrant Way: The proper "Vagrant way" is to - avoid any provider-specific overrides if possible by making boxes - for multiple providers that are as identical as possible, since box - names can map to multiple providers. However, this is not always possible, - and in those cases, overrides are available. -
+-> **The Vagrant Way:** The proper "Vagrant way" is to +avoid any provider-specific overrides if possible by making boxes +for multiple providers that are as identical as possible, since box +names can map to multiple providers. However, this is not always possible, +and in those cases, overrides are available. diff --git a/website/pages/docs/providers/custom.html.md b/website/pages/docs/providers/custom.mdx similarity index 78% rename from website/pages/docs/providers/custom.html.md rename to website/pages/docs/providers/custom.mdx index 19faf13a2..320f18010 100644 --- a/website/pages/docs/providers/custom.html.md +++ b/website/pages/docs/providers/custom.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Provider - Providers' -sidebar_current: 'providers-custom' +layout: docs +page_title: Custom Provider - Providers +sidebar_current: providers-custom description: |- To learn how to make your own custom Vagrant providers, read the Vagrant plugin development guide on creating custom providers. diff --git a/website/pages/docs/providers/default.html.md b/website/pages/docs/providers/default.mdx similarity index 92% rename from website/pages/docs/providers/default.html.md rename to website/pages/docs/providers/default.mdx index 915476967..e916eb3ac 100644 --- a/website/pages/docs/providers/default.html.md +++ b/website/pages/docs/providers/default.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Default Provider - Providers' -sidebar_current: 'providers-default' +layout: docs +page_title: Default Provider - Providers +sidebar_current: providers-default description: |- By default, VirtualBox is the default provider for Vagrant. VirtualBox is still the most accessible platform to use Vagrant: it is free, cross-platform, diff --git a/website/pages/docs/providers/index.html.md b/website/pages/docs/providers/index.mdx similarity index 94% rename from website/pages/docs/providers/index.html.md rename to website/pages/docs/providers/index.mdx index 257492763..beb709cb8 100644 --- a/website/pages/docs/providers/index.html.md +++ b/website/pages/docs/providers/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Providers' -sidebar_current: 'providers' +layout: docs +page_title: Providers +sidebar_current: providers description: |- While Vagrant ships out of the box with support for VirtualBox, Hyper-V, and Docker. Vagrant has the ability to manage other types of machines as well. diff --git a/website/pages/docs/providers/installation.html.md b/website/pages/docs/providers/installation.mdx similarity index 84% rename from website/pages/docs/providers/installation.html.md rename to website/pages/docs/providers/installation.mdx index 12181040c..8475c54a9 100644 --- a/website/pages/docs/providers/installation.html.md +++ b/website/pages/docs/providers/installation.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Installation - Providers' -sidebar_current: 'providers-installation' +layout: docs +page_title: Installation - Providers +sidebar_current: providers-installation description: |- Providers are distributed as Vagrant plugins, and are therefore installed using standard plugin installation steps. After installing a plugin which diff --git a/website/pages/docs/provisioning/ansible.html.md b/website/pages/docs/provisioning/ansible.mdx similarity index 77% rename from website/pages/docs/provisioning/ansible.html.md rename to website/pages/docs/provisioning/ansible.mdx index 0cf32ee68..d88db648d 100644 --- a/website/pages/docs/provisioning/ansible.html.md +++ b/website/pages/docs/provisioning/ansible.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Ansible - Provisioning' -sidebar_current: 'provisioning-ansible-provisioner' +layout: docs +page_title: Ansible - Provisioning +sidebar_current: provisioning-ansible-provisioner description: |- The Vagrant Ansible provisioner allows you to provision the guest using Ansible playbooks by executing "ansible-playbook" from the Vagrant host. @@ -13,10 +13,8 @@ description: |- The Vagrant Ansible provisioner allows you to provision the guest using [Ansible](http://ansible.com) playbooks by executing **`ansible-playbook` from the Vagrant host**. -
- Warning: - If you are not familiar with Ansible and Vagrant already, we recommend starting with the shell provisioner. However, if you are comfortable with Vagrant already, Vagrant is a great way to learn Ansible. -
+~> **Warning:** +If you are not familiar with Ansible and Vagrant already, we recommend starting with the [shell provisioner](/docs/provisioning/shell.html). However, if you are comfortable with Vagrant already, Vagrant is a great way to learn Ansible. ## Setup Requirements @@ -24,7 +22,7 @@ The Vagrant Ansible provisioner allows you to provision the guest using [Ansible - Your Vagrant host should ideally provide a recent version of OpenSSH that [supports ControlPersist](https://docs.ansible.com/faq.html#how-do-i-get-ansible-to-reuse-connections-enable-kerberized-ssh-or-have-ansible-pay-attention-to-my-local-ssh-config-file). -If installing Ansible directly on the Vagrant host is not an option in your development environment, you might be looking for the Ansible Local provisioner alternative. +If installing Ansible directly on the Vagrant host is not an option in your development environment, you might be looking for the [Ansible Local provisioner](/docs/provisioning/ansible_local.html) alternative. ## Usage @@ -57,25 +55,20 @@ This section lists the _specific_ options for the Ansible (remote) provisioner. - `ask_sudo_pass` (boolean) - Backwards compatible alias for the [ask_become_pass](#ask_become_pass) option. -
- Deprecation: - The `ask_sudo_pass` option is deprecated and will be removed in a future release. Please use the [**`ask_become_pass`**](#ask_become_pass) option instead. -
+ ~> **Deprecation:** + The `ask_sudo_pass` option is deprecated and will be removed in a future release. Please use the [**`ask_become_pass`**](#ask_become_pass) option instead. -- `ask_vault_pass` (boolean) - require Ansible to [prompt for a vault password](https://docs.ansible.com/playbooks_vault.html#vault). +* `ask_vault_pass` (boolean) - require Ansible to [prompt for a vault password](https://docs.ansible.com/playbooks_vault.html#vault). The default value is `false`. -- `force_remote_user` (boolean) - require Vagrant to set the `ansible_ssh_user` setting in the generated inventory, or as an extra variable when a static inventory is used. All the Ansible `remote_user` parameters will then be overridden by the value of `config.ssh.username` of the [Vagrant SSH Settings](/docs/vagrantfile/ssh_settings.html). +* `force_remote_user` (boolean) - require Vagrant to set the `ansible_ssh_user` setting in the generated inventory, or as an extra variable when a static inventory is used. All the Ansible `remote_user` parameters will then be overridden by the value of `config.ssh.username` of the [Vagrant SSH Settings](/docs/vagrantfile/ssh_settings.html). If this option is set to `false` Vagrant will set the Vagrant SSH username as a default Ansible remote user, but `remote_user` parameters of your Ansible plays or tasks will still be taken into account and thus override the Vagrant configuration. The default value is `true`. -
- Compatibility Note: - This option was introduced in Vagrant 1.8.0. Previous Vagrant versions behave like if this option was set to `false`. -
+ -> **Compatibility Note:** This option was introduced in Vagrant 1.8.0. Previous Vagrant versions behave like if this option was set to `false`. - `host_key_checking` (boolean) - require Ansible to [enable SSH host key checking](https://docs.ansible.com/intro_getting_started.html#host-key-checking). @@ -123,10 +116,12 @@ N = 3 end ``` -
- Tip: - If you apply this parallel provisioning pattern with a static Ansible inventory, you will have to organize the things so that [all the relevant private keys are provided to the `ansible-playbook` command](https://github.com/hashicorp/vagrant/pull/5765#issuecomment-120247738). The same kind of considerations applies if you are using multiple private keys for a same machine (see [`config.ssh.private_key_path` SSH setting](/docs/vagrantfile/ssh_settings.html)). -
+-> **Tip:** +If you apply this parallel provisioning pattern with a static Ansible inventory, +you will have to organize the things so that [all the relevant private keys are +provided to the `ansible-playbook` command](https://github.com/hashicorp/vagrant/pull/5765#issuecomment-120247738). +The same kind of considerations applies if you are using multiple private keys +for a same machine (see [`config.ssh.private_key_path` SSH setting](/docs/vagrantfile/ssh_settings.html)). ### Force Paramiko Connection Mode diff --git a/website/pages/docs/provisioning/ansible_common.html.md b/website/pages/docs/provisioning/ansible_common.mdx similarity index 80% rename from website/pages/docs/provisioning/ansible_common.html.md rename to website/pages/docs/provisioning/ansible_common.mdx index d23db76e2..94a26b84e 100644 --- a/website/pages/docs/provisioning/ansible_common.html.md +++ b/website/pages/docs/provisioning/ansible_common.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Common Ansible Options - Provisioning' -sidebar_current: 'provisioning-ansible-common' -description: |- - This page details the common options to the Vagrant Ansible provisioners. +layout: docs +page_title: Common Ansible Options - Provisioning +sidebar_current: provisioning-ansible-common +description: This page details the common options to the Vagrant Ansible provisioners. --- # Shared Ansible Options @@ -37,15 +36,9 @@ Some of these options are for advanced usage only and should not be used unless Vagrant will error if the specified compatibility mode is incompatible with the current Ansible version. -
- Attention: - Vagrant doesn't perform any validation between the `compatibility_mode` value and the value of the [`version`](#version) option. -
+ ~> **Attention:** Vagrant doesn't perform any validation between the `compatibility_mode` value and the value of the [`version`](#version) option. -
- Compatibility Note: - This option was introduced in Vagrant 2.0. The behavior of previous Vagrant versions can be simulated by setting the `compatibility_mode` to `"1.8"`. -
+ -> **Compatibility Note:** This option was introduced in Vagrant 2.0. The behavior of previous Vagrant versions can be simulated by setting the `compatibility_mode` to `"1.8"`. - `config_file` (string) - The path to an [Ansible Configuration file](https://docs.ansible.com/intro_configuration.html). @@ -161,10 +154,9 @@ Some of these options are for advanced usage only and should not be used unless - `['--check', '-M', '/my/modules']` - `["--connection=paramiko", "--forks=10"]` -
- Attention: - The `ansible` provisioner does not support whitespace characters in `raw_arguments` elements. Therefore **don't write** something like `["-c paramiko"]`, which will result with an invalid `" paramiko"` parameter value. -
+ ~> **Attention:** The `ansible` provisioner does not support whitespace characters in `raw_arguments` + elements. Therefore **don't write** something like `["-c paramiko"]`, which + will result with an invalid `" paramiko"` parameter value. - `skip_tags` (string or array of strings) - Only plays, roles and tasks that [_do not match_ these values will be executed](https://docs.ansible.com/playbooks_tags.html). @@ -172,17 +164,13 @@ Some of these options are for advanced usage only and should not be used unless - `sudo` (boolean) - Backwards compatible alias for the [`become`](#become) option. -
- Deprecation: - The `sudo` option is deprecated and will be removed in a future release. Please use the [**`become`**](#become) option instead. -
+ ~> **Deprecation:** + The `sudo` option is deprecated and will be removed in a future release. Please use the [**`become`**](#become) option instead. -- `sudo_user` (string) - Backwards compatible alias for the [`become_user`](#become_user) option. +* `sudo_user` (string) - Backwards compatible alias for the [`become_user`](#become_user) option. -
- Deprecation: - The `sudo_user` option is deprecated and will be removed in a future release. Please use the [**`become_user`**](#become_user) option instead. -
+ ~> **Deprecation:** + The `sudo_user` option is deprecated and will be removed in a future release. Please use the [**`become_user`**](#become_user) option instead. - `tags` (string or array of strings) - Only plays, roles and tasks [tagged with these values will be executed](https://docs.ansible.com/playbooks_tags.html) . @@ -204,7 +192,5 @@ Some of these options are for advanced usage only and should not be used unless When this option is set to `"latest"`, no version check is applied. -
- Tip: - With the `ansible_local` provisioner, it is currently possible to use this option to specify which version of Ansible must be automatically installed, but only in combination with the [**`install_mode`**](/docs/provisioning/ansible_local.html#install_mode) set to `:pip`. -
+ -> **Tip:** With the `ansible_local` provisioner, it is currently possible to use this option + to specify which version of Ansible must be automatically installed, but **only** in combination with the [**`install_mode`**](/docs/provisioning/ansible_local.html#install_mode) set to **`:pip`**. diff --git a/website/pages/docs/provisioning/ansible_intro.html.md b/website/pages/docs/provisioning/ansible_intro.mdx similarity index 99% rename from website/pages/docs/provisioning/ansible_intro.html.md rename to website/pages/docs/provisioning/ansible_intro.mdx index da62379c8..d0f86530b 100644 --- a/website/pages/docs/provisioning/ansible_intro.html.md +++ b/website/pages/docs/provisioning/ansible_intro.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Ansible - Short Introduction' -sidebar_current: 'provisioning-ansible' +layout: docs +page_title: Ansible - Short Introduction +sidebar_current: provisioning-ansible description: |- This page includes options and information that is applicable to both Vagrant Ansible provisioners. diff --git a/website/pages/docs/provisioning/ansible_local.html.md b/website/pages/docs/provisioning/ansible_local.mdx similarity index 88% rename from website/pages/docs/provisioning/ansible_local.html.md rename to website/pages/docs/provisioning/ansible_local.mdx index 1672612d8..8afbaeb04 100644 --- a/website/pages/docs/provisioning/ansible_local.html.md +++ b/website/pages/docs/provisioning/ansible_local.mdx @@ -1,9 +1,11 @@ --- -layout: 'docs' -page_title: 'Ansible Local - Provisioning' -sidebar_current: 'provisioning-ansible-local' -description: |- - The Vagrant Ansible Local provisioner allows you to provision the guest using Ansible playbooks by executing "ansible-playbook" directly on the guest +layout: docs +page_title: Ansible Local - Provisioning +sidebar_current: provisioning-ansible-local +description: >- + The Vagrant Ansible Local provisioner allows you to provision the guest using + Ansible playbooks by executing "ansible-playbook" directly on the guest + machine. --- @@ -13,10 +15,7 @@ description: |- The Vagrant Ansible Local provisioner allows you to provision the guest using [Ansible](http://ansible.com) playbooks by executing **`ansible-playbook` directly on the guest machine**. -
- Warning: - If you are not familiar with Ansible and Vagrant already, we recommend starting with the shell provisioner. However, if you are comfortable with Vagrant already, Vagrant is a great way to learn Ansible. -
+~> **Warning:** If you are not familiar with Ansible and Vagrant already, we recommend starting with the [shell provisioner](/docs/provisioning/shell.html). However, if you are comfortable with Vagrant already, Vagrant is a great way to learn Ansible. ## Setup Requirements @@ -65,12 +64,10 @@ This section lists the _specific_ options for the Ansible Local provisioner. In - The [`version`](/docs/provisioning/ansible_common.html#version) option is set to `"latest"`. - The current Ansible version does not correspond to the [`version`](/docs/provisioning/ansible_common.html#version) option. -
- Attention: - There is no guarantee that this automated installation will replace a custom Ansible setup, that might be already present on the Vagrant box. -
+ ~> **Attention:** + There is no guarantee that this automated installation will replace a custom Ansible setup, that might be already present on the Vagrant box. -- `install_mode` (`:default`, `:pip`, or `:pip_args_only`) - Select the way to automatically install Ansible on the guest system. +* `install_mode` (`:default`, `:pip`, or `:pip_args_only`) - Select the way to automatically install Ansible on the guest system. - `:default`: Ansible is installed from the operating system package manager. This mode doesn't support `version` selection. For many platforms (e.g Debian, FreeBSD, OpenSUSE) the official package repository is used, except for the following Linux distributions: @@ -140,7 +137,7 @@ This section lists the _specific_ options for the Ansible Local provisioner. In The default value of `install_mode` is `:default`, and any invalid value for this option will silently fall back to the default value. -- `pip_args` (string) - When Ansible is installed via pip, this option allows the definition of additional pip arguments to be passed along on the command line (for example, [`--index-url`](https://pip.pypa.io/en/stable/reference/pip_install/#cmdoption-i)). +* `pip_args` (string) - When Ansible is installed via pip, this option allows the definition of additional pip arguments to be passed along on the command line (for example, [`--index-url`](https://pip.pypa.io/en/stable/reference/pip_install/#cmdoption-i)). By default, this option is not set. @@ -160,11 +157,11 @@ This section lists the _specific_ options for the Ansible Local provisioner. In sudo pip install --index-url https://pypi.internal --upgrade ansible ``` -- `provisioning_path` (string) - An absolute path on the guest machine where the Ansible files are stored. The `ansible-galaxy` and `ansible-playbook` commands are executed from this directory. This is the location to place an [ansible.cfg](http://docs.ansible.com/ansible/intro_configuration.html) file, in case you need it. +* `provisioning_path` (string) - An absolute path on the guest machine where the Ansible files are stored. The `ansible-galaxy` and `ansible-playbook` commands are executed from this directory. This is the location to place an [ansible.cfg](http://docs.ansible.com/ansible/intro_configuration.html) file, in case you need it. The default value is `/vagrant`. -- `tmp_path` (string) - An absolute path on the guest machine where temporary files are stored by the Ansible Local provisioner. +* `tmp_path` (string) - An absolute path on the guest machine where temporary files are stored by the Ansible Local provisioner. The default value is `/tmp/vagrant-ansible` @@ -172,9 +169,7 @@ This section lists the _specific_ options for the Ansible Local provisioner. In ### Install Galaxy Roles in a path owned by root -
- Disclaimer: This tip is not a recommendation to install galaxy roles out of the vagrant user space, especially if you rely on ssh agent forwarding to fetch the roles. -
+~> **Disclaimer:** This tip is not a recommendation to install galaxy roles out of the vagrant user space, especially if you rely on ssh agent forwarding to fetch the roles. Be careful that `ansible-galaxy` command is executed by default as vagrant user. Setting `galaxy_roles_path` to a folder like `/etc/ansible/roles` will fail, and `ansible-galaxy` will extract the role a second time in `/home/vagrant/.ansible/roles/`. Then if your playbook uses `become` to run as `root`, it will fail with a _"role was not found"_ error. diff --git a/website/pages/docs/provisioning/basic_usage.html.md b/website/pages/docs/provisioning/basic_usage.mdx similarity index 94% rename from website/pages/docs/provisioning/basic_usage.html.md rename to website/pages/docs/provisioning/basic_usage.mdx index ebf96a0dd..df87e7293 100644 --- a/website/pages/docs/provisioning/basic_usage.html.md +++ b/website/pages/docs/provisioning/basic_usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Basic Usage - Provisioning' -sidebar_current: 'provisioning-basic' +layout: docs +page_title: Basic Usage - Provisioning +sidebar_current: provisioning-basic description: |- While Vagrant offers multiple options for how you are able to provision your machine, there is a standard usage pattern as well as some important @@ -183,12 +183,10 @@ with names to get more fine grained control over what is run and when. ## Overriding Provisioner Settings -
- Warning: Advanced Topic! Provisioner overriding is - an advanced topic that really only becomes useful if you are already - using multi-machine and/or provider overrides. If you are just getting - started with Vagrant, you can safely skip this. -
+~> **Warning: Advanced Topic!** Provisioner overriding is +an advanced topic that really only becomes useful if you are already +using multi-machine and/or provider overrides. If you are just getting +started with Vagrant, you can safely skip this. When using features such as [multi-machine](/docs/multi-machine/) or [provider-specific overrides](/docs/providers/configuration.html), @@ -252,15 +250,12 @@ end ## Dependency Provisioners -
- Warning: Advanced Topic! Dependency provisioners are - an advanced topic. If you are just getting started with Vagrant, you can - safely skip this. -
+~> **Warning: Advanced Topic!** Dependency provisioners are +an advanced topic. If you are just getting started with Vagrant, you can +safely skip this. -
- Warning! This feature is still experimental and may break or - change in between releases. Use at your own risk. +~> **Warning!** This feature is still experimental and may break or +change in between releases. Use at your own risk. This feature currently reqiures the experimental flag to be used. To explicitly enable this feature, you can set the experimental flag to: @@ -273,8 +268,6 @@ information about this flag visit the [Experimental docs page](/docs/experimenta for more info. Without this flag enabled, provisioners with the `before` and `after` option will be ignored. -
- If a provisioner has been configured using the `before` or `after` options, it is considered a _Dependency Provisioner_. This means it has been configured to run before or after a _Root Provisioner_, which does not have the `before` or diff --git a/website/pages/docs/provisioning/cfengine.html.md b/website/pages/docs/provisioning/cfengine.mdx similarity index 94% rename from website/pages/docs/provisioning/cfengine.html.md rename to website/pages/docs/provisioning/cfengine.mdx index 15e63665f..dc6f12a7d 100644 --- a/website/pages/docs/provisioning/cfengine.html.md +++ b/website/pages/docs/provisioning/cfengine.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'CFEngine Provisioner' -sidebar_current: 'provisioning-cfengine' +layout: docs +page_title: CFEngine Provisioner +sidebar_current: provisioning-cfengine description: |- The Vagrant CFEngine provisioner allows you to provision the guest using CFEngine. It can set up both CFEngine policy servers and clients. You can @@ -19,12 +19,9 @@ policy servers and clients. You can configure both the policy server and the clients in a single [multi-machine `Vagrantfile`](/docs/multi-machine/). -
- Warning: If you are not familiar with CFEngine and Vagrant already, - it is recommended to start with the shell - provisioner. However, if you are comfortable with Vagrant - already, Vagrant is the best way to learn CFEngine. -
+~> **Warning:** If you are not familiar with CFEngine and Vagrant already, +it is recommended to start with the [shell provisioner](/docs/provisioning/shell.html). +However, if you are comfortable with Vagrant already, Vagrant is the best way to learn CFEngine. Let us look at some common examples first. See the bottom of this document for a comprehensive list of options. diff --git a/website/pages/docs/provisioning/chef_apply.html.md b/website/pages/docs/provisioning/chef_apply.mdx similarity index 89% rename from website/pages/docs/provisioning/chef_apply.html.md rename to website/pages/docs/provisioning/chef_apply.mdx index 71751fbbb..c30b6cd85 100644 --- a/website/pages/docs/provisioning/chef_apply.html.md +++ b/website/pages/docs/provisioning/chef_apply.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Chef Apply - Provisioning' -sidebar_current: 'provisioning-chefapply' +layout: docs +page_title: Chef Apply - Provisioning +sidebar_current: provisioning-chefapply description: |- The Vagrant Chef Apply provisioner allows you to provision the guest using Chef with chef-apply. @@ -19,11 +19,9 @@ Chef Apply is ideal for people who are already experienced with Chef and the Chef ecosystem. Specifically, this documentation page does not cover how use Chef or how to write Chef recipes. -
- Warning: If you are not familiar with Chef and Vagrant already, - we recommend starting with the shell - provisioner. -
+~> **Warning:** If you are not familiar with Chef and Vagrant already, +we recommend starting with the shell +provisioner. ## Options diff --git a/website/pages/docs/provisioning/chef_client.html.md b/website/pages/docs/provisioning/chef_client.mdx similarity index 91% rename from website/pages/docs/provisioning/chef_client.html.md rename to website/pages/docs/provisioning/chef_client.mdx index 87e3e4df9..477bee712 100644 --- a/website/pages/docs/provisioning/chef_client.html.md +++ b/website/pages/docs/provisioning/chef_client.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Chef Client - Provisioning' -sidebar_current: 'provisioning-chefclient' +layout: docs +page_title: Chef Client - Provisioning +sidebar_current: provisioning-chefclient description: |- The Vagrant Chef Client provisioner allows you to provision the guest using Chef, specifically by connecting to an existing Chef Server and registering @@ -21,11 +21,8 @@ If you are just learning Chef for the first time, you probably want to start with the [Chef Solo](/docs/provisioning/chef_solo.html) provisioner. -
- Warning: If you are not familiar with Chef and Vagrant already, - it is recommended to start with the shell - provisioner. -
+~> **Warning:** If you are not familiar with Chef and Vagrant already, +it is recommended to start with the [shell provisioner](/docs/provisioning/shell.html). ## Authenticating diff --git a/website/pages/docs/provisioning/chef_common.html.md b/website/pages/docs/provisioning/chef_common.mdx similarity index 98% rename from website/pages/docs/provisioning/chef_common.html.md rename to website/pages/docs/provisioning/chef_common.mdx index cfb648afc..8bb5d1d6a 100644 --- a/website/pages/docs/provisioning/chef_common.html.md +++ b/website/pages/docs/provisioning/chef_common.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Common Chef Options - Provisioning' -sidebar_current: 'provisioning-chefcommon' +layout: docs +page_title: Common Chef Options - Provisioning +sidebar_current: provisioning-chefcommon description: |- The following options are available to all Vagrant Chef provisioners. Many of these options are for advanced users only and should not be used unless you diff --git a/website/pages/docs/provisioning/chef_solo.html.md b/website/pages/docs/provisioning/chef_solo.mdx similarity index 93% rename from website/pages/docs/provisioning/chef_solo.html.md rename to website/pages/docs/provisioning/chef_solo.mdx index 3869c7f97..cfcb43731 100644 --- a/website/pages/docs/provisioning/chef_solo.html.md +++ b/website/pages/docs/provisioning/chef_solo.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Chef Solo - Provisioning' -sidebar_current: 'provisioning-chefsolo' +layout: docs +page_title: Chef Solo - Provisioning +sidebar_current: provisioning-chefsolo description: |- The Vagrant Chef Solo provisioner allows you to provision the guest using Chef, specifically with chef-solo. @@ -21,12 +21,10 @@ this documentation page will not go into how to use Chef or how to write Chef cookbooks, since Chef is a complete system that is beyond the scope of a single page of documentation. -
- Warning: If you are not familiar with Chef and Vagrant already, - it is recommended to start with the shell - provisioner. However, if you are comfortable with Vagrant already, Vagrant - is the best way to learn Chef. -
+~> **Warning:** If you are not familiar with Chef and Vagrant already, +it is recommended to start with the [shell provisioner](/docs/provisioning/shell.html). +However, if you are comfortable with Vagrant already, Vagrant +is the best way to learn Chef. ## Options diff --git a/website/pages/docs/provisioning/chef_zero.html.md b/website/pages/docs/provisioning/chef_zero.mdx similarity index 87% rename from website/pages/docs/provisioning/chef_zero.html.md rename to website/pages/docs/provisioning/chef_zero.mdx index a83c5ad6e..3361f5089 100644 --- a/website/pages/docs/provisioning/chef_zero.html.md +++ b/website/pages/docs/provisioning/chef_zero.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Chef Zero - Provisioning' -sidebar_current: 'provisioning-chefzero' +layout: docs +page_title: Chef Zero - Provisioning +sidebar_current: provisioning-chefzero description: |- The Vagrant Chef Zero provisioner allows you to provision the guest using Chef, specifically with chef-zero. @@ -20,12 +20,10 @@ Chef Server and using the limited [Chef Solo](/docs/provisioning/chef_solo.html) provisioner. It runs a local in-memory Chef Server and fakes the validation and client key registration. -
- Warning: If you are not familiar with Chef and Vagrant already, - we recommend starting with the shell - provisioner. However, if you are comfortable with Vagrant already, Vagrant - is the best way to learn Chef. -
+~> **Warning:** If you are not familiar with Chef and Vagrant already, +we recommend starting with the [shell provisioner](/docs/provisioning/shell.html). +However, if you are comfortable with Vagrant already, Vagrant +is the best way to learn Chef. ## Options diff --git a/website/pages/docs/provisioning/docker.html.md b/website/pages/docs/provisioning/docker.mdx similarity index 95% rename from website/pages/docs/provisioning/docker.html.md rename to website/pages/docs/provisioning/docker.mdx index 97f569731..190ab91e1 100644 --- a/website/pages/docs/provisioning/docker.html.md +++ b/website/pages/docs/provisioning/docker.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Docker - Provisioning' -sidebar_current: 'provisioning-docker' +layout: docs +page_title: Docker - Provisioning +sidebar_current: provisioning-docker description: |- The Vagrant Docker provisioner can automatically install Docker, pull Docker containers, and configure certain containers to run on boot. @@ -28,12 +28,9 @@ install services like databases or web servers but use Docker to house your application runtime. You can use the Puppet provisioner along with the Docker provisioner. -
- Note: This documentation is for the Docker - provisioner. If you are looking for the Docker - provider, visit the - Docker provider documentation. -
+-> **Note:** This documentation is for the Docker +_provisioner_. If you are looking for the Docker _provider_, visit the +[Docker provider documentation](/docs/docker/). ## Options diff --git a/website/pages/docs/provisioning/file.html.md b/website/pages/docs/provisioning/file.mdx similarity index 97% rename from website/pages/docs/provisioning/file.html.md rename to website/pages/docs/provisioning/file.mdx index 7b9e4c19b..e32c4285c 100644 --- a/website/pages/docs/provisioning/file.html.md +++ b/website/pages/docs/provisioning/file.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'File Uploads - Provisioning' -sidebar_current: 'provisioning-file' +layout: docs +page_title: File Uploads - Provisioning +sidebar_current: provisioning-file description: |- The Vagrant file provisioner allows you to upload a file or directory from the host machine to the guest machine. diff --git a/website/pages/docs/provisioning/index.html.md b/website/pages/docs/provisioning/index.mdx similarity index 91% rename from website/pages/docs/provisioning/index.html.md rename to website/pages/docs/provisioning/index.mdx index 1d5bfe42e..afd72fdcd 100644 --- a/website/pages/docs/provisioning/index.html.md +++ b/website/pages/docs/provisioning/index.mdx @@ -1,9 +1,10 @@ --- -layout: 'docs' -page_title: 'Provisioning' -sidebar_current: 'provisioning' -description: |- - Provisioners in Vagrant allow you to automatically install software, alter configurations, and more on the machine as part of the `vagrant up` process. +layout: docs +page_title: Provisioning +sidebar_current: provisioning +description: >- + Provisioners in Vagrant allow you to automatically install software, alter + configurations, and more on the machine as part of the `vagrant up` process. --- # Provisioning diff --git a/website/pages/docs/provisioning/podman.html.md b/website/pages/docs/provisioning/podman.mdx similarity index 97% rename from website/pages/docs/provisioning/podman.html.md rename to website/pages/docs/provisioning/podman.mdx index 50c87a20c..257e71b3b 100644 --- a/website/pages/docs/provisioning/podman.html.md +++ b/website/pages/docs/provisioning/podman.mdx @@ -1,9 +1,10 @@ --- -layout: 'docs' -page_title: 'Podman - Provisioning' -sidebar_current: 'provisioning-podman' -description: |- - The Vagrant Podman provisioner can automatically install Podman, and run it as a drop in replacement for Docker. +layout: docs +page_title: Podman - Provisioning +sidebar_current: provisioning-podman +description: >- + The Vagrant Podman provisioner can automatically install Podman, and run it as + a drop in replacement for Docker. --- # Podman Provisioner diff --git a/website/pages/docs/provisioning/puppet_agent.html.md b/website/pages/docs/provisioning/puppet_agent.mdx similarity index 87% rename from website/pages/docs/provisioning/puppet_agent.html.md rename to website/pages/docs/provisioning/puppet_agent.mdx index 7f7825713..96bb9086d 100644 --- a/website/pages/docs/provisioning/puppet_agent.html.md +++ b/website/pages/docs/provisioning/puppet_agent.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Puppet Agent - Provisioning' -sidebar_current: 'provisioning-puppetagent' +layout: docs +page_title: Puppet Agent - Provisioning +sidebar_current: provisioning-puppetagent description: |- The Vagrant Puppet agent provisioner allows you to provision the guest using Puppet, specifically by calling "puppet agent", connecting to a Puppet master, @@ -17,12 +17,10 @@ The Vagrant Puppet agent provisioner allows you to provision the guest using calling `puppet agent`, connecting to a Puppet master, and retrieving the set of modules and manifests from there. -
- Warning: If you are not familiar with Puppet and Vagrant already, - it is recommended to start with the shell - provisioner. However, if you are comfortable with Vagrant already, Vagrant - is the best way to learn Puppet. -
+~> **Warning:** If you are not familiar with Puppet and Vagrant already, +it is recommended to start with the [shell provisioner](/docs/provisioning/shell.html). +However, if you are comfortable with Vagrant already, Vagrant +is the best way to learn Puppet. ## Options diff --git a/website/pages/docs/provisioning/puppet_apply.html.md b/website/pages/docs/provisioning/puppet_apply.mdx similarity index 94% rename from website/pages/docs/provisioning/puppet_apply.html.md rename to website/pages/docs/provisioning/puppet_apply.mdx index 853881f66..ef5e9f616 100644 --- a/website/pages/docs/provisioning/puppet_apply.html.md +++ b/website/pages/docs/provisioning/puppet_apply.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Puppet Apply - Provisioning' -sidebar_current: 'provisioning-puppetapply' +layout: docs +page_title: Puppet Apply - Provisioning +sidebar_current: provisioning-puppetapply description: |- The Vagrant Puppet provisioner allows you to provision the guest using Puppet, specifically by calling "puppet apply", without a Puppet Master. @@ -15,12 +15,10 @@ The Vagrant Puppet provisioner allows you to provision the guest using [Puppet](https://www.puppetlabs.com/puppet), specifically by calling `puppet apply`, without a Puppet Master. -
- Warning: If you are not familiar with Puppet and Vagrant already, - it is recommended to start with the shell - provisioner. However, if you are comfortable with Vagrant already, Vagrant - is the best way to learn Puppet. -
+~> **Warning:** If you are not familiar with Puppet and Vagrant already, +it is recommended to start with the [shell provisioner](/docs/provisioning/shell.html). +However, if you are comfortable with Vagrant already, Vagrant +is the best way to learn Puppet. ## Options diff --git a/website/pages/docs/provisioning/salt.html.md b/website/pages/docs/provisioning/salt.mdx similarity index 98% rename from website/pages/docs/provisioning/salt.html.md rename to website/pages/docs/provisioning/salt.mdx index 4f886f612..fa9bb5a1c 100644 --- a/website/pages/docs/provisioning/salt.html.md +++ b/website/pages/docs/provisioning/salt.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Salt - Provisioning' -sidebar_current: 'provisioning-salt' +layout: docs +page_title: Salt - Provisioning +sidebar_current: provisioning-salt description: |- The Vagrant Salt provisioner allows you to provision the guest using Salt states. diff --git a/website/pages/docs/provisioning/shell.html.md b/website/pages/docs/provisioning/shell.mdx similarity index 98% rename from website/pages/docs/provisioning/shell.html.md rename to website/pages/docs/provisioning/shell.mdx index 25e67a38a..e83cfda9e 100644 --- a/website/pages/docs/provisioning/shell.html.md +++ b/website/pages/docs/provisioning/shell.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Shell Scripts - Provisioning' -sidebar_current: 'provisioning-shell' +layout: docs +page_title: Shell Scripts - Provisioning +sidebar_current: provisioning-shell description: |- The Vagrant Shell provisioner allows you to upload and execute a script within the guest machine. @@ -98,8 +98,6 @@ The remainder of the available options are optional: "/tmp/vagrant-shell". On Windows, this will default to "C:\tmp\vagrant-shell". - - ## Inline Scripts Perhaps the easiest way to get started is with an inline script. An diff --git a/website/pages/docs/push/ftp.html.md b/website/pages/docs/push/ftp.mdx similarity index 95% rename from website/pages/docs/push/ftp.html.md rename to website/pages/docs/push/ftp.mdx index 562167403..5d13dca18 100644 --- a/website/pages/docs/push/ftp.html.md +++ b/website/pages/docs/push/ftp.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant Push - FTP & SFTP Strategy' -sidebar_current: 'push-ftp' +layout: docs +page_title: Vagrant Push - FTP & SFTP Strategy +sidebar_current: push-ftp description: |- Vagrant Push FTP and SFTP strategy pushes the code in your Vagrant development environment to a remote FTP or SFTP server. diff --git a/website/pages/docs/push/heroku.html.md b/website/pages/docs/push/heroku.mdx similarity index 78% rename from website/pages/docs/push/heroku.html.md rename to website/pages/docs/push/heroku.mdx index ad6413ab8..3bb51090a 100644 --- a/website/pages/docs/push/heroku.html.md +++ b/website/pages/docs/push/heroku.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant Push - Heroku Strategy' -sidebar_current: 'push-heroku' +layout: docs +page_title: Vagrant Push - Heroku Strategy +sidebar_current: push-heroku description: |- The Vagrant Push Heroku strategy pushes your application's code to Heroku. Only files which are committed to the Git repository are pushed to Heroku. @@ -15,12 +15,10 @@ description: |- application. The Vagrant Push Heroku strategy pushes your application's code to Heroku. -
- Warning: The Vagrant Push Heroku strategy requires you - have configured your Heroku credentials and created the Heroku application. - This documentation will not cover these prerequisites, but you can read more - about them in the Heroku documentation. -
+~> **Warning:** The Vagrant Push Heroku strategy requires you +have configured your Heroku credentials and created the Heroku application. +This documentation will not cover these prerequisites, but you can read more +about them in the [Heroku documentation](https://devcenter.heroku.com). Only files which are committed to the Git repository will be pushed to Heroku. Additionally, the current working branch is always pushed to the Heroku, even if diff --git a/website/pages/docs/push/index.html.md b/website/pages/docs/push/index.mdx similarity index 95% rename from website/pages/docs/push/index.html.md rename to website/pages/docs/push/index.mdx index 26e1a4ec7..8d8dfa84e 100644 --- a/website/pages/docs/push/index.html.md +++ b/website/pages/docs/push/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant Push' -sidebar_current: 'push' +layout: docs +page_title: Vagrant Push +sidebar_current: push description: |- Vagrant Push is a revolutionary feature that allows users to push the code in their Vagrant environment to a remote location. diff --git a/website/pages/docs/push/local-exec.html.md b/website/pages/docs/push/local-exec.mdx similarity index 86% rename from website/pages/docs/push/local-exec.html.md rename to website/pages/docs/push/local-exec.mdx index eafbbed75..c5ab9c334 100644 --- a/website/pages/docs/push/local-exec.html.md +++ b/website/pages/docs/push/local-exec.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant Push - Local Exec Strategy' -sidebar_current: 'push-local-exec' +layout: docs +page_title: Vagrant Push - Local Exec Strategy +sidebar_current: push-local-exec description: |- The Vagrant Push Local Exec strategy pushes your application's code using a user-defined script. @@ -14,10 +14,8 @@ description: |- The Vagrant Push Local Exec strategy allows the user to invoke an arbitrary shell command or script as part of a push. -
- Warning: The Vagrant Push Local Exec strategy does not - perform any validation on the correctness of the shell script. -
+~> **Warning:** The Vagrant Push Local Exec strategy does not +perform any validation on the correctness of the shell script. The Vagrant Push Local Exec strategy supports the following configuration options: diff --git a/website/pages/docs/share/connect.html.md b/website/pages/docs/share/connect.mdx similarity index 95% rename from website/pages/docs/share/connect.html.md rename to website/pages/docs/share/connect.mdx index 1a97960f3..3e2eb85e6 100644 --- a/website/pages/docs/share/connect.html.md +++ b/website/pages/docs/share/connect.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant Connect - Vagrant Share' -sidebar_current: 'share-connect' +layout: docs +page_title: Vagrant Connect - Vagrant Share +sidebar_current: share-connect description: |- Vagrant can share any or every port to your Vagrant environment, not just SSH and HTTP. diff --git a/website/pages/docs/share/http.html.md b/website/pages/docs/share/http.mdx similarity index 89% rename from website/pages/docs/share/http.html.md rename to website/pages/docs/share/http.mdx index 77a1eb4ca..10b74a0ec 100644 --- a/website/pages/docs/share/http.html.md +++ b/website/pages/docs/share/http.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'HTTP Sharing - Vagrant Share' -sidebar_current: 'share-http' +layout: docs +page_title: HTTP Sharing - Vagrant Share +sidebar_current: share-http description: |- Vagrant Share can create a publicly accessible URL endpoint to access an HTTP server running in your Vagrant environment. This is known as "HTTP @@ -46,10 +46,8 @@ use the `--http` and/or `--https` flags to be more explicit. The share will be accessible for the duration that `vagrant share` is running. Press `Ctrl-C` to quit the sharing session. -
- Warning: This URL is accessible by anyone - who knows it, so be careful if you are sharing sensitive information. -
+~> **Warning:** This URL is accessible by anyone +who knows it, so be careful if you are sharing sensitive information. ## Disabling @@ -65,7 +63,7 @@ local assets such as images, stylesheets, javascript. The web application under development will be accessed remotely. This means that if you have any hardcoded asset (images, stylesheets, etc.) URLs -such as ``, then they will not load +such as ``, then they will not load for people accessing your share. Most web frameworks or toolkits have settings or helpers to generate diff --git a/website/pages/docs/share/index.html.md b/website/pages/docs/share/index.mdx similarity index 96% rename from website/pages/docs/share/index.html.md rename to website/pages/docs/share/index.mdx index 3eaaa71e6..6d51739b5 100644 --- a/website/pages/docs/share/index.html.md +++ b/website/pages/docs/share/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrant Share' -sidebar_current: 'share' +layout: docs +page_title: Vagrant Share +sidebar_current: share description: |- Vagrant Share allows you to share your Vagrant environment with anyone in the world, enabling collaboration directly in your Vagrant environment diff --git a/website/pages/docs/share/provider.html.md b/website/pages/docs/share/provider.mdx similarity index 68% rename from website/pages/docs/share/provider.html.md rename to website/pages/docs/share/provider.mdx index 3655ea2a1..d534be9b2 100644 --- a/website/pages/docs/share/provider.html.md +++ b/website/pages/docs/share/provider.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Custom Provider - Vagrant Share' -sidebar_current: 'share-provider' +layout: docs +page_title: Custom Provider - Vagrant Share +sidebar_current: share-provider description: |- If you are developing a custom Vagrant provider, you will need to do a tiny bit more work in order for it to work well with Vagrant Share. @@ -9,11 +9,9 @@ description: |- # Custom Provider -
- Warning: Advanced Topic! This topic is related to - developing Vagrant plugins. If you are not interested in this or - you are just starting with Vagrant, it is safe to skip this page. -
+~> **Warning: Advanced Topic!** This topic is related to +developing Vagrant plugins. If you are not interested in this or +you are just starting with Vagrant, it is safe to skip this page. If you are developing a [custom Vagrant provider](/docs/plugins/providers.html), you will need to do a tiny bit more work in order for it to work well with diff --git a/website/pages/docs/share/security.html.md b/website/pages/docs/share/security.mdx similarity index 93% rename from website/pages/docs/share/security.html.md rename to website/pages/docs/share/security.mdx index b840a1be0..4146b2766 100644 --- a/website/pages/docs/share/security.html.md +++ b/website/pages/docs/share/security.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Security - Vagrant Share' -sidebar_current: 'share-security' +layout: docs +page_title: Security - Vagrant Share +sidebar_current: share-security description: |- Sharing your Vagrant environment understandably raises a number of security concerns. diff --git a/website/pages/docs/share/ssh.html.md b/website/pages/docs/share/ssh.mdx similarity index 97% rename from website/pages/docs/share/ssh.html.md rename to website/pages/docs/share/ssh.mdx index 1abe05f49..622dd9ce3 100644 --- a/website/pages/docs/share/ssh.html.md +++ b/website/pages/docs/share/ssh.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'SSH Sharing - Vagrant Share' -sidebar_current: 'share-ssh' +layout: docs +page_title: SSH Sharing - Vagrant Share +sidebar_current: share-ssh description: |- Vagrant share makes it trivially easy to allow remote SSH access to your Vagrant environment by supplying the "--ssh" flag to "vagrant share". diff --git a/website/pages/docs/synced-folders/basic_usage.html.md b/website/pages/docs/synced-folders/basic_usage.mdx similarity index 97% rename from website/pages/docs/synced-folders/basic_usage.html.md rename to website/pages/docs/synced-folders/basic_usage.mdx index 59f612ccf..0e642e03d 100644 --- a/website/pages/docs/synced-folders/basic_usage.html.md +++ b/website/pages/docs/synced-folders/basic_usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Basic Usage - Synced Folders' -sidebar_current: 'syncedfolder-basic' +layout: docs +page_title: Basic Usage - Synced Folders +sidebar_current: syncedfolder-basic description: |- Synced folders are configured within your Vagrantfile using the "config.vm.synced_folder" method. diff --git a/website/pages/docs/synced-folders/index.html.md b/website/pages/docs/synced-folders/index.mdx similarity index 91% rename from website/pages/docs/synced-folders/index.html.md rename to website/pages/docs/synced-folders/index.mdx index 26329d554..2629836da 100644 --- a/website/pages/docs/synced-folders/index.html.md +++ b/website/pages/docs/synced-folders/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Synced Folders' -sidebar_current: 'syncedfolder' +layout: docs +page_title: Synced Folders +sidebar_current: syncedfolder description: |- Synced folders enable Vagrant to sync a folder on the host machine to the guest machine, allowing you to continue working on your project's files diff --git a/website/pages/docs/synced-folders/nfs.html.md b/website/pages/docs/synced-folders/nfs.mdx similarity index 96% rename from website/pages/docs/synced-folders/nfs.html.md rename to website/pages/docs/synced-folders/nfs.mdx index f75ed9893..3fd759b67 100644 --- a/website/pages/docs/synced-folders/nfs.html.md +++ b/website/pages/docs/synced-folders/nfs.mdx @@ -1,12 +1,17 @@ --- -layout: 'docs' -page_title: 'NFS - Synced Folders' -sidebar_current: 'syncedfolder-nfs' -description: |- +layout: docs +page_title: NFS - Synced Folders +sidebar_current: syncedfolder-nfs +description: >- In some cases the default shared folder implementations such as VirtualBox + shared folders have high performance penalties. If you are seeing less than + ideal performance with synced folders, NFS can offer a solution. Vagrant has - built-in support to orchestrate the configuration of the NFS server on the host + + built-in support to orchestrate the configuration of the NFS server on the + host + and guest for you. --- @@ -145,10 +150,8 @@ For \*nix users, make sure to edit your `/etc/sudoers` file with `visudo`. It pr All of the snippets below require Vagrant version 1.7.3 or higher. - +~> **Use the appropriate group for your user** Depending on how your machine is +configured, you might need to use a different group than the ones listed in the examples below. For OS X, sudoers should have this entry: diff --git a/website/pages/docs/synced-folders/rsync.html.md b/website/pages/docs/synced-folders/rsync.mdx similarity index 97% rename from website/pages/docs/synced-folders/rsync.html.md rename to website/pages/docs/synced-folders/rsync.mdx index 01a4ee884..72d69c245 100644 --- a/website/pages/docs/synced-folders/rsync.html.md +++ b/website/pages/docs/synced-folders/rsync.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'RSync - Synced Folders' -sidebar_current: 'syncedfolder-rsync' +layout: docs +page_title: RSync - Synced Folders +sidebar_current: syncedfolder-rsync description: |- Vagrant can use rsync as a mechanism to sync a folder to the guest machine. This synced folder type is useful primarily in situations where other synced diff --git a/website/pages/docs/synced-folders/smb.html.md b/website/pages/docs/synced-folders/smb.mdx similarity index 94% rename from website/pages/docs/synced-folders/smb.html.md rename to website/pages/docs/synced-folders/smb.mdx index be524dd19..1ea8ae041 100644 --- a/website/pages/docs/synced-folders/smb.html.md +++ b/website/pages/docs/synced-folders/smb.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'SMB - Synced Folders' -sidebar_current: 'syncedfolder-smb' +layout: docs +page_title: SMB - Synced Folders +sidebar_current: syncedfolder-smb description: |- Vagrant can use SMB as a mechanism to create a bi-directional synced folder between the host machine and the Vagrant machine. @@ -18,10 +18,8 @@ machine and the Vagrant machine. SMB is built-in to Windows machines and provides a higher performance alternative to some other mechanisms such as VirtualBox shared folders. -
- SMB is currently only supported when the host machine is Windows or - macOS. The guest machine can be Windows, Linux, or macOS. -
+-> SMB is currently only supported when the host machine is Windows or +macOS. The guest machine can be Windows, Linux, or macOS. ## Prerequisites diff --git a/website/pages/docs/synced-folders/virtualbox.html.md b/website/pages/docs/synced-folders/virtualbox.mdx similarity index 91% rename from website/pages/docs/synced-folders/virtualbox.html.md rename to website/pages/docs/synced-folders/virtualbox.mdx index c09ee2062..0c06ad9c1 100644 --- a/website/pages/docs/synced-folders/virtualbox.html.md +++ b/website/pages/docs/synced-folders/virtualbox.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'VirtualBox Shared Folders - Synced Folders' -sidebar_current: 'syncedfolder-virtualbox' +layout: docs +page_title: VirtualBox Shared Folders - Synced Folders +sidebar_current: syncedfolder-virtualbox description: |- If you are using the Vagrant VirtualBox provider, then VirtualBox shared folders are the default synced folder type. These synced folders use the diff --git a/website/pages/docs/triggers/configuration.html.md b/website/pages/docs/triggers/configuration.mdx similarity index 89% rename from website/pages/docs/triggers/configuration.html.md rename to website/pages/docs/triggers/configuration.mdx index 5492b99e5..5a61ca374 100644 --- a/website/pages/docs/triggers/configuration.html.md +++ b/website/pages/docs/triggers/configuration.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Vagrant Triggers Configuration' -sidebar_current: 'triggers-configuration' -description: |- - Documentation of various configuration options for Vagrant Triggers +layout: docs +page_title: Vagrant Triggers Configuration +sidebar_current: triggers-configuration +description: Documentation of various configuration options for Vagrant Triggers --- # Configuration @@ -98,9 +97,8 @@ The trigger class takes various options. Optionally, it is possible to define a trigger that executes around Vagrant commands, hooks, and actions. -
- Warning! This feature is still experimental and may break or - change in between releases. Use at your own risk. +~> **Warning!** This feature is still experimental and may break or +change in between releases. Use at your own risk. This feature currently reqiures the experimental flag to be used. To explicitly enable this feature, you can set the experimental flag to: @@ -113,8 +111,6 @@ information about this flag visit the [Experimental docs page](/docs/experimenta for more info. Without this flag enabled, triggers with the `:type` option will be ignored. -
- A trigger can be one of three types: - `type` (symbol) - Optional @@ -167,11 +163,9 @@ page for more. ### Hooks -
- Advanced topic! This is an advanced topic for use only if - you want to execute triggers around Vagrant hooks. If you are just getting - started with Vagrant and triggers, you may safely skip this section. -
+~> **Advanced topic!** This is an advanced topic for use only if +you want to execute triggers around Vagrant hooks. If you are just getting +started with Vagrant and triggers, you may safely skip this section. Hook typed triggers can be defined for any valid Vagrant action hook that is defined. @@ -188,11 +182,9 @@ page for more. ### Actions -
- Advanced topic! This is an advanced topic for use only if - you want to execute triggers around Vagrant actions. If you are just getting - started with Vagrant and triggers, you may safely skip this section. -
+~> **Advanced topic!** This is an advanced topic for use only if +you want to execute triggers around Vagrant actions. If you are just getting +started with Vagrant and triggers, you may safely skip this section. Action typed triggers can be defined for any valid Vagrant action class. Actions in this case refer to the Vagrant class `#Action`, which is used internally to diff --git a/website/pages/docs/triggers/index.html.md b/website/pages/docs/triggers/index.mdx similarity index 95% rename from website/pages/docs/triggers/index.html.md rename to website/pages/docs/triggers/index.mdx index 33a4f5c5f..6e55166b8 100644 --- a/website/pages/docs/triggers/index.html.md +++ b/website/pages/docs/triggers/index.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Vagrant Triggers' -sidebar_current: 'triggers' -description: |- - Introduction to Vagrant Triggers +layout: docs +page_title: Vagrant Triggers +sidebar_current: triggers +description: Introduction to Vagrant Triggers --- # Vagrant Triggers diff --git a/website/pages/docs/triggers/usage.html.md b/website/pages/docs/triggers/usage.mdx similarity index 97% rename from website/pages/docs/triggers/usage.html.md rename to website/pages/docs/triggers/usage.mdx index 7e5775921..cd70b8e6a 100644 --- a/website/pages/docs/triggers/usage.html.md +++ b/website/pages/docs/triggers/usage.mdx @@ -1,9 +1,8 @@ --- -layout: 'docs' -page_title: 'Vagrant Triggers Usage' -sidebar_current: 'triggers-usage' -description: |- - Various Vagrant Triggers examples +layout: docs +page_title: Vagrant Triggers Usage +sidebar_current: triggers-usage +description: Various Vagrant Triggers examples --- # Basic Usage diff --git a/website/pages/docs/vagrant-cloud/api.html.md.erb b/website/pages/docs/vagrant-cloud/api.html.md.erb deleted file mode 100644 index a8f61e8c7..000000000 --- a/website/pages/docs/vagrant-cloud/api.html.md.erb +++ /dev/null @@ -1,1538 +0,0 @@ ---- -layout: "vagrant-cloud" -page_title: "Vagrant Cloud API" -sidebar_current: "vagrant-cloud-api" ---- - -<% content_for :head do %> - - - -<% end %> - -# Vagrant Cloud API - -## Using the API - -Vagrant Cloud provides an API for users to interact with Vagrant Cloud for experimentation, automation, or building new features and tools on top of our existing application. - -### Authentication - -Some API endpoints require authentication to create new resources, update or delete existing resources, or to read a private resource. - -Clients can authenticate using an authentication token. -The token can be passed to Vagrant Cloud one of two ways: - -1. (Preferred) Set the `Authorization` header to `"Bearer "` and the value of the authentication token. -2. Pass the authentication token as an `access_token` URL parameter. - -Examples below will set the header, but feel free to use whichever method is easier for your implementation. - --> The `X-Atlas-Token` header is also supported for backwards-compatibility. - -### Request and Response Format - -Requests to Vagrant Cloud which include data attributes (`POST` or `PUT`/`PATCH`) should set the `Content-Type` header to `"application/json"`, and include a valid JSON body with the request. - -JSON responses may include an `errors` key, which will contain an array of error strings, as well as a `success` key. -For example: - -```json -{ - "errors": [ - "Resource not found!" - ], - "success": false -} -``` - -### Response Codes - -Vagrant Cloud may respond with the following response codes, depending on the status of the request and context: - -#### Success - -##### **200** OK -##### **201** Created -##### **204** No Content - -#### Client Errors - -##### **401** Unauthorized - -You do not have authorization to access the requested resource. - -##### **402** Payment Required - -You are trying to access a resource which is delinquent on billing. -Please contact the owner of the resource so that they can update their billing information. - -##### **403** Forbidden - -You are attempting to use the system in a way which is not allowed. -There could be required request parameters that are missing, or one of the parameters is invalid. -Please check the response `errors` key, and double-check the examples below for any discrepancies. - -##### **404** Not Found - -The resource you are trying to access does not exist. This may also be returned if you attempt to access a private resource that you don't have authorization to view. - -##### **422** Unprocessable Entity - -##### **429** Too Many Requests - -You are currently being rate-limited. Please decrease your frequency of usage, or contact us at [support+vagrantcloud@hashicorp.com](mailto:support+vagrantcloud@hashicorp.com) with a description of your use case so that we can consider creating an exception. - -#### Server Errors - -##### **500** Internal Server Error - -The server failed to respond to the request for an unknown reason. -Please contact [support+vagrantcloud@hashicorp.com](mailto:support+vagrantcloud@hashicorp.com) with a description of the problem so that we can investigate. - -##### **503** Service Unavailable - -Vagrant Cloud is temporarily in maintenance mode. -Please check the [HashiCorp Status Site](http://status.hashicorp.com) for more information. - -## Creating a usable box from scratch - --> This assumes that you have a valid Vagrant Cloud authentication token. You can [create one via the API](#create-a-token), or [create one on the Vagrant Cloud website](https://app.vagrantup.com/settings/security). - -In order to create a usable box on Vagrant Cloud, perform the following steps: - -1. [Create a new box](#create-a-box) -1. [Create a new version](#create-a-version) -1. [Create a new provider](#create-a-provider) -1. [Upload a box image for that provider](#upload-a-provider) -1. [Release the version](#release-a-version) - -#### Example Requests - -
- -
- ```shell - # Create a new box - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/boxes \ - --data '{ "box": { "username": "myuser", "name": "test" } }' - - # Create a new version - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/versions \ - --data '{ "version": { "version": "1.2.3" } }' - - # Create a new provider - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/providers \ - --data '{ "provider": { "name": "virtualbox" } }' - - # Prepare the provider for upload/get an upload URL - response=$(curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox/upload) - - # Extract the upload URL from the response (requires the jq command) - upload_path=$(echo "$response" | jq .upload_path) - - # Perform the upload - curl $upload_path --request PUT --upload-file virtualbox-1.2.3.box - - # Release the version - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/release \ - --request PUT - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - # Create a new box - api.post "/api/v1/boxes", - json: { box: { username: "myuser", name: "test" } } - - # Create a new version - api.post "/api/v1/box/myuser/test/versions", - json: { version: { version: "1.2.3" } } - - # Create a new provider - api.post "/api/v1/box/myuser/test/version/1.2.3/providers", - json: { provider: { name: "virtualbox" } } - - # Prepare the provider for upload - response = api.get("/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox/upload") - - # Extract the upload URL - upload_path = response.parse['upload_path'] - - # Upload the box image - HTTP.put upload_path, body: File.open("virtualbox-1.2.3.box") - - # Release the version - api.put("/api/v1/box/myuser/test/version/1.2.3/release") - ``` -
-
- -## Authentication - -### Create a token - -`POST /api/v1/authenticate` - -Creates a new token for the given user. - -#### Arguments - -* `token` - * `description` (Optional) - A description of the token. -* `two_factor` - * `code` - A two-factor authentication code. Required to use this API method if 2FA is enabled. See [Request a 2FA code](#request-a-2fa-code) if not using a TOTP application. -* `user` - * `login` - Username or email address of the user authenticating. - * `password` - The user's password. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - https://app.vagrantup.com/api/v1/authenticate \ - --data ' - { - "token": { - "description": "Login from cURL" - }, - "user": { - "login": "myuser", - "password": "secretpassword" - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json" - ) - - response = api.post("/api/v1/authenticate", json: { - token: { description: "Login from Ruby" }, - user: { login: "myuser", password: "secretpassword" } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "description": "Login from cURL", - "token": "qwlIE1qBVUafsg.atlasv1.FLwfJSSYkl49i4qZIu8R31GBnI9r8DrW4IQKMppkGq5rD264lRksTqaIN0zY9Bmy0zs", - "token_hash": "7598236a879ecb42cb0f25399d6f25d1d2cfbbc6333392131bbdfba325eb352795c169daa4a61a8094d44afe817a857e0e5fc7dc72a1401eb434577337d1246c", - "created_at": "2017-10-18T19:16:24.956Z" -} -``` - -### Validate a token - -`GET /api/v1/authenticate` - -Responds [`200 OK`](#200-ok) if the authentication request was successful, otherwise responds [`401 Unauthorized`](#401-unauthorized). - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/authenticate - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/authenticate") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -### Delete a token - -`DELETE /api/v1/authenticate` - -Responds [`204 OK`](#204-no-content) if the deletion request was successful, otherwise responds [`401 Unauthorized`](#401-unauthorized). - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - --request DELETE \ - https://app.vagrantup.com/api/v1/authenticate - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.delete("/api/v1/authenticate") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -### Request a 2FA code - -`POST /api/v1/two-factor/request-code` - -Sends a 2FA code to the requested delivery method. - -#### Arguments - -* `two_factor` - * `delivery_method` - A valid 2FA delivery method. Currently only `sms` is supported. -* `user` - * `login` - Username or email address of the user authenticating. - * `password` - The user's password. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - https://app.vagrantup.com/api/v1/authenticate \ - --data ' - { - "two_factor": { - "delivery_method": "sms" - }, - "user": { - "login": "myuser", - "password": "secretpassword" - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json" - ) - - response = api.post("/api/v1/two-factor/request-code", json: { - two_factor: { delivery_method: "sms" }, - user: { login: "myuser", password: "secretpassword" } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "two_factor": { - "obfuscated_destination": "SMS number ending in 7890" - } -} -``` - -## Organizations - -### Read an organization - -`GET /api/v1/user/:username` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/user/myuser - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/user/myuser") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "username": "myuser", - "avatar_url": "https://www.gravatar.com/avatar/130a640278870c3dada38b3d912ee022?s=460&d=mm", - "profile_html": "

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

\n", - "profile_markdown": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.", - "boxes": [] -} -``` - -## Search - -### Search for boxes - -`GET /api/v1/search` - -#### Arguments - -* `q` - (Optional) The search query. Results will match the `username`, `name`, or `short_description` fields for a box. If omitted, the top boxes based on `sort` and `order` will be returned (defaults to "downloads desc"). -* `provider` - (Optional) Filter results to boxes supporting for a specific provider. -* `sort` - (Optional, default: `"downloads"`) The field to sort results on. Can be one of `"downloads"`, `"created"`, or `"updated"`. -* `order` - (Optional, default: `"desc"`) The order to return the sorted field in. Can be `"desc"` os `"asc"`. -* `limit` - (Optional, default: `10`) The number of results to return (max of 100). -* `page` - (Optional, default: `1`) - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/search?q=test&provider=virtualbox - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/search", params: { - q: "test", - provider: "virtualbox" - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "boxes": [ - { - "created_at": "2017-10-20T14:19:59.842Z", - "updated_at": "2017-10-20T15:23:53.363Z", - "tag": "myuser/test", - "name": "test", - "short_description": "My dev box", - "description_html": "

My development Vagrant box

\n", - "username": "myuser", - "description_markdown": "My development Vagrant box", - "private": true, - "downloads": 123, - "current_version": { - "version": "1.2.3", - "status": "active", - "description_html": "

A new version

\n", - "description_markdown": "A new version", - "created_at": "2017-10-20T15:23:17.184Z", - "updated_at": "2017-10-20T15:23:53.355Z", - "number": "1.2.3", - "release_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/release", - "revoke_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/revoke", - "providers": [ - { - "name": "virtualbox", - "hosted": false, - "hosted_token": null, - "original_url": "https://example.com/virtualbox-1.2.3.box", - "created_at": "2017-10-20T15:23:35.718Z", - "updated_at": "2017-10-20T15:23:35.718Z", - "download_url": "https://vagrantcloud.com/myuser/boxes/test/versions/1.2.3/providers/virtualbox.box" - } - ] - } - } - ] -} -``` - -## Boxes - -### Read a box - -`GET /api/v1/box/:username/:name` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/box/myuser/test") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "created_at": "2017-10-20T14:19:59.842Z", - "updated_at": "2017-10-20T15:23:53.363Z", - "tag": "myuser/test", - "name": "test", - "short_description": "My dev box", - "description_html": "

My development Vagrant box

\n", - "username": "myuser", - "description_markdown": "My development Vagrant box", - "private": true, - "downloads": 123, - "current_version": { - "version": "1.2.3", - "status": "active", - "description_html": "

A new version

\n", - "description_markdown": "A new version", - "created_at": "2017-10-20T15:23:17.184Z", - "updated_at": "2017-10-20T15:23:53.355Z", - "number": "1.2.3", - "release_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/release", - "revoke_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/revoke", - "providers": [ - { - "name": "virtualbox", - "hosted": false, - "hosted_token": null, - "original_url": "https://example.com/virtualbox-1.2.3.box", - "created_at": "2017-10-20T15:23:35.718Z", - "updated_at": "2017-10-20T15:23:35.718Z", - "download_url": "https://vagrantcloud.com/myuser/boxes/test/versions/1.2.3/providers/virtualbox.box" - } - ] - }, - "versions": [ - { - "version": "1.2.3", - "status": "active", - "description_html": "

A new version

\n", - "description_markdown": "A new version", - "created_at": "2017-10-20T15:23:17.184Z", - "updated_at": "2017-10-20T15:23:53.355Z", - "number": "1.2.3", - "release_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/release", - "revoke_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/revoke", - "providers": [ - { - "name": "virtualbox", - "hosted": false, - "hosted_token": null, - "original_url": "https://example.com/virtualbox-1.2.3.box", - "created_at": "2017-10-20T15:23:35.718Z", - "updated_at": "2017-10-20T15:23:35.718Z", - "download_url": "https://vagrantcloud.com/myuser/boxes/test/versions/1.2.3/providers/virtualbox.box" - } - ] - } - ] -} -``` - -### Create a box - -`POST /api/v1/boxes` - -#### Arguments - -* `box` - * `username` - The username of the organization that will own this box. - * `name` - The name of the box. - * `short_description` - A short summary of the box. - * `description` - A longer description of the box. Can be formatted with [Markdown][markdown]. - * `is_private` (Optional, default: `true`) - Whether or not this box is private. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/boxes \ - --data ' - { - "box": { - "username": "myuser", - "name": "test", - "short_description": "My dev box", - "description": "My development Vagrant box", - "is_private": true - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.post("/api/v1/boxes", json: { - box: { - username: "myuser", - name: "test", - short_description: "My dev box", - description: "My development Vagrant box", - is_private: true - } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a box](#read-a-box). - -### Update a box - -`PUT /api/v1/box/:username/:name` - -#### Arguments - -* `box` - * `name` - The name of the box. - * `short_description` - A short summary of the box. - * `description` - A longer description of the box. Can be formatted with [Markdown](https://daringfireball.net/projects/markdown/syntax). - * `is_private` (Optional, default: `true`) - Whether or not this box is private. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test \ - --request PUT \ - --data ' - { - "box": { - "name": "test", - "short_description": "My dev box", - "description": "My development Vagrant box", - "is_private": true - } - } - ' - ``` - - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.put("/api/v1/box/myuser/test", json: { - box: { - name: "test", - short_description: "My dev box", - description: "My development Vagrant box", - is_private: true - } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -### Delete a box - -`DELETE /api/v1/box/:username/:name` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - --request DELETE \ - https://app.vagrantup.com/api/v1/box/myuser/test - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.delete("/api/v1/box/myuser/test") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a box](#read-a-box). - -## Versions - -### Read a version - -`GET /api/v1/box/:username/:name/version/:version` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3 - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/box/myuser/test/version/1.2.3") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "version": "1.2.3", - "status": "active", - "description_html": "

A new version

\n", - "description_markdown": "A new version", - "created_at": "2017-10-20T15:23:17.184Z", - "updated_at": "2017-10-20T15:23:53.355Z", - "number": "1.2.3", - "release_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/release", - "revoke_url": "https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/revoke", - "providers": [ - { - "name": "virtualbox", - "hosted": false, - "hosted_token": null, - "original_url": "https://example.com/virtualbox-1.2.3.box", - "created_at": "2017-10-20T15:23:35.718Z", - "updated_at": "2017-10-20T15:23:35.718Z", - "download_url": "https://vagrantcloud.com/myuser/boxes/test/versions/1.2.3/providers/virtualbox.box" - } - ] -} -``` - -### Create a version - -`POST /api/v1/box/:username/:name/versions` - --> New versions start as `unreleased`. You must create a valid provider before releasing a new version. - -#### Arguments - -* `version` - * `version` - The version number of this version. - * `description` - A description for this version. Can be formatted with [Markdown](https://daringfireball.net/projects/markdown/syntax). - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/versions \ - --data ' - { - "version": { - "version": "1.2.3", - "description": "A new version" - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.post("/api/v1/box/myuser/test/versions", json: { - version: { - version: "1.2.3", - description: "A new version" - } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a version](#read-a-version). - -### Update a version - -`PUT /api/v1/box/:username/:name/version/1.2.3` - -#### Arguments - -* `version` - * `version` - The version number of this version. - * `description` - A description for this version. Can be formatted with [Markdown][markdown]. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3 \ - --request PUT \ - --data ' - { - "version": { - "version": "1.2.3", - "description": "A new version" - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.put("/api/v1/box/myuser/test/version/1.2.3", json: { - version: { - name: "1.2.3", - description: "A new version" - } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a version](#read-a-version). - -### Delete a version - -`DELETE /api/v1/box/:username/:name/version/:version` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - --request DELETE \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3 - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.delete("/api/v1/box/myuser/test/version/1.2.3") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a version](#read-a-version). - -### Release a version - -`PUT /api/v1/box/:username/:name/version/1.2.3/release` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/release \ - --request PUT - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.put("/api/v1/box/myuser/test/version/1.2.3/release") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a version](#read-a-version). - -### Revoke a version - -`PUT /api/v1/box/:username/:name/version/1.2.3/revoke` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/revoke \ - --request PUT - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.put("/api/v1/box/myuser/test/version/1.2.3/revoke") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a version](#read-a-version). - -## Providers - -### Read a provider - -`GET /api/v1/box/:username/:name/version/:version/provider/:provider` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- - -#### Example Response - -```json -{ - "name": "virtualbox", - "hosted": false, - "hosted_token": null, - "original_url": "https://example.com/virtualbox-1.2.3.box", - "created_at": "2017-10-20T15:23:35.718Z", - "updated_at": "2017-10-20T15:23:35.718Z", - "download_url": "https://vagrantcloud.com/myuser/boxes/test/versions/1.2.3/providers/virtualbox.box" -} -``` - -### Create a provider - -`POST /api/v1/box/:username/:name/version/:version/providers` - -#### Arguments - -* `provider` - * `name` - The name of the provider. - * `url` - A valid URL to download this provider. If omitted, you must [upload](#upload-a-provider) the Vagrant box image for this provider to Vagrant Cloud before the provider can be used. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/providers \ - --data ' - { - "provider": { - "name": "virtualbox", - "url": "https://example.com/virtualbox-1.2.3.box" - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.post("/api/v1/box/myuser/test/version/1.2.3/providers", json: { - provider: { - name: "virtualbox", - url: "https://example.com/virtualbox-1.2.3.box" - } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a provider](#read-a-provider). - -### Update a provider - -`PUT /api/v1/box/:username/:name/version/:version/provider/:provider` - -#### Arguments - -* `provider` - * `name` - The name of the provider. - * `url` - A valid URL to download this provider. If omitted, you must [upload](#upload-a-provider) the Vagrant box image for this provider to Vagrant Cloud before the provider can be used. - -#### Example Request - -
- -
- ```shell - curl \ - --header "Content-Type: application/json" \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox \ - --request PUT \ - --data ' - { - "provider": { - "name": "virtualbox", - "url": "https://example.com/virtualbox-1.2.3.box" - } - } - ' - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Content-Type" => "application/json", - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.put("/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox", json: { - provider: { - name: "virtualbox", - url: "https://example.com/virtualbox-1.2.3.box" - } - }) - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a provider](#read-a-provider). - -### Delete a provider - -`DELETE /api/v1/box/:username/:name/version/:version/provider/:provider` - -#### Example Request - -
- -
- ```shell - curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - --request DELETE \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.delete("/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox") - - if response.status.success? - # Success, the response attributes are available here. - p response.parse - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -Response body is identical to [Reading a provider](#read-a-provider). - -### Upload a provider - -`GET /api/v1/box/:username/:name/version/:version/provider/:provider/upload` - -Prepares the provider for upload, and returns a JSON blob containing an `upload_path`. - -~> The upload must begin shortly after the response is returned, otherwise the URL will expire. If the URL expires, you can request this same API method again for a new upload URL. - -#### Example Request - -
- -
- ```shell - response=$(curl \ - --header "Authorization: Bearer $VAGRANT_CLOUD_TOKEN" \ - https://app.vagrantup.com/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox/upload) - - # Requires the jq command - upload_path=$(echo "$response" | jq .upload_path) - - curl \ - $upload_path \ - --request PUT \ - --upload-file virtualbox-1.2.3.box - ``` - - ```ruby - # gem install http, or add `gem "http"` to your Gemfile - require "http" - - api = HTTP.persistent("https://app.vagrantup.com").headers( - "Authorization" => "Bearer #{ENV['VAGRANT_CLOUD_TOKEN']}" - ) - - response = api.get("/api/v1/box/myuser/test/version/1.2.3/provider/virtualbox/upload") - - if response.status.success? - # Success, you can now upload the box image to the returned URL - upload_path = response.parse['upload_path'] - HTTP.post upload_path, body: File.open("virtualbox-1.2.3.box") - else - # Error, inspect the `errors` key for more information. - p response.code, response.body - end - ``` -
-
- -#### Example Response - -```json -{ - "upload_path": "https://archivist.hashicorp.com/v1/object/630e42d9-2364-2412-4121-18266770468e" -} -``` - -[markdown]: https://daringfireball.net/projects/markdown/syntax diff --git a/website/pages/docs/vagrantfile/index.html.md b/website/pages/docs/vagrantfile/index.mdx similarity index 96% rename from website/pages/docs/vagrantfile/index.html.md rename to website/pages/docs/vagrantfile/index.mdx index 316434221..0e3552310 100644 --- a/website/pages/docs/vagrantfile/index.html.md +++ b/website/pages/docs/vagrantfile/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Vagrantfile' -sidebar_current: 'vagrantfile' +layout: docs +page_title: Vagrantfile +sidebar_current: vagrantfile description: |- The primary function of the Vagrantfile is to describe the type of machine required for a project, and how to configure and @@ -50,9 +50,7 @@ This feature lets you run `vagrant` from any directory in your project. You can change the starting directory where Vagrant looks for a Vagrantfile by setting the `VAGRANT_CWD` environmental variable to some other path. - - -## Load Order and Merging +## Load Order and Merging ((#load-order)) An important concept to understand is how Vagrant loads Vagrantfiles. Vagrant actually loads a series of Vagrantfiles, merging the settings as it goes. This diff --git a/website/pages/docs/vagrantfile/machine_settings.html.md b/website/pages/docs/vagrantfile/machine_settings.mdx similarity index 98% rename from website/pages/docs/vagrantfile/machine_settings.html.md rename to website/pages/docs/vagrantfile/machine_settings.mdx index b39b02f89..79d2df27a 100644 --- a/website/pages/docs/vagrantfile/machine_settings.html.md +++ b/website/pages/docs/vagrantfile/machine_settings.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'config.vm - Vagrantfile' -sidebar_current: 'vagrantfile-machine' +layout: docs +page_title: config.vm - Vagrantfile +sidebar_current: vagrantfile-machine description: |- The settings within "config.vm" modify the configuration of the machine that Vagrant manages. diff --git a/website/pages/docs/vagrantfile/ssh_settings.html.md b/website/pages/docs/vagrantfile/ssh_settings.mdx similarity index 98% rename from website/pages/docs/vagrantfile/ssh_settings.html.md rename to website/pages/docs/vagrantfile/ssh_settings.mdx index 331f79e61..37ecb629f 100644 --- a/website/pages/docs/vagrantfile/ssh_settings.html.md +++ b/website/pages/docs/vagrantfile/ssh_settings.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'config.ssh - Vagrantfile' -sidebar_current: 'vagrantfile-ssh' +layout: docs +page_title: config.ssh - Vagrantfile +sidebar_current: vagrantfile-ssh description: |- The settings within "config.ssh" relate to configuring how Vagrant will access your machine over SSH. As with most Vagrant settings, the diff --git a/website/pages/docs/vagrantfile/tips.html.md b/website/pages/docs/vagrantfile/tips.mdx similarity index 94% rename from website/pages/docs/vagrantfile/tips.html.md rename to website/pages/docs/vagrantfile/tips.mdx index fb39b9012..fe3f92fb8 100644 --- a/website/pages/docs/vagrantfile/tips.html.md +++ b/website/pages/docs/vagrantfile/tips.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Tips & Tricks - Vagrantfile' -sidebar_current: 'vagrantfile-tips' +layout: docs +page_title: Tips & Tricks - Vagrantfile +sidebar_current: vagrantfile-tips description: |- The Vagrantfile is a very flexible configuration format. Since it is just Ruby, there is a lot you can do with it. However, in that same vein, since @@ -36,7 +36,7 @@ end ~> **Warning:** The inner portion of multi-machine definitions and provider overrides are lazy-loaded. This can cause issues if you change the value of a variable used within the configs. For example, the loop below -does not work: +_does not work_: ```ruby # THIS DOES NOT WORK! diff --git a/website/pages/docs/vagrantfile/vagrant_settings.html.md b/website/pages/docs/vagrantfile/vagrant_settings.mdx similarity index 95% rename from website/pages/docs/vagrantfile/vagrant_settings.html.md rename to website/pages/docs/vagrantfile/vagrant_settings.mdx index 58d0412be..3ac2525e5 100644 --- a/website/pages/docs/vagrantfile/vagrant_settings.html.md +++ b/website/pages/docs/vagrantfile/vagrant_settings.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'config.vagrant - Vagrantfile' -sidebar_current: 'vagrantfile-vagrant' +layout: docs +page_title: config.vagrant - Vagrantfile +sidebar_current: vagrantfile-vagrant description: |- The settings within "config.vagrant" modify the behavior of Vagrant itself. diff --git a/website/pages/docs/vagrantfile/vagrant_version.html.md b/website/pages/docs/vagrantfile/vagrant_version.mdx similarity index 90% rename from website/pages/docs/vagrantfile/vagrant_version.html.md rename to website/pages/docs/vagrantfile/vagrant_version.mdx index 9e5874783..bba444fcb 100644 --- a/website/pages/docs/vagrantfile/vagrant_version.html.md +++ b/website/pages/docs/vagrantfile/vagrant_version.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Minimum Vagrant Version - Vagrantfile' -sidebar_current: 'vagrantfile-minversion' +layout: docs +page_title: Minimum Vagrant Version - Vagrantfile +sidebar_current: vagrantfile-minversion description: |- A set of Vagrant version requirements can be specified in the Vagrantfile to enforce that people use a specific version of Vagrant with a Vagrantfile. diff --git a/website/pages/docs/vagrantfile/version.html.md b/website/pages/docs/vagrantfile/version.mdx similarity index 83% rename from website/pages/docs/vagrantfile/version.html.md rename to website/pages/docs/vagrantfile/version.mdx index 1b18bb913..f5ee8b095 100644 --- a/website/pages/docs/vagrantfile/version.html.md +++ b/website/pages/docs/vagrantfile/version.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Configuration Version - Vagrantfile' -sidebar_current: 'vagrantfile-version' +layout: docs +page_title: Configuration Version - Vagrantfile +sidebar_current: vagrantfile-version description: |- Configuration versions are the mechanism by which Vagrant 1.1+ is able to remain backwards compatible with Vagrant 1.0.x Vagrantfiles, while introducing @@ -56,9 +56,5 @@ Vagrant.configure("2") do |config| end ``` -
- What is Vagrant::Config.run? - You may see this in Vagrantfiles. This was actually how Vagrant 1.0.x - did configuration. In Vagrant 1.1+, this is synonymous with - Vagrant.configure("1"). -
+-> **What is `Vagrant::Config.run`?** You may see this in Vagrantfiles. This was actually how Vagrant 1.0.x +did configuration. In Vagrant 1.1+, this is synonymous with `Vagrant.configure("1")`. diff --git a/website/pages/docs/vagrantfile/winrm_settings.html.md b/website/pages/docs/vagrantfile/winrm_settings.mdx similarity index 97% rename from website/pages/docs/vagrantfile/winrm_settings.html.md rename to website/pages/docs/vagrantfile/winrm_settings.mdx index 948739f3b..8baaf7e60 100644 --- a/website/pages/docs/vagrantfile/winrm_settings.html.md +++ b/website/pages/docs/vagrantfile/winrm_settings.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'config.winrm - Vagrantfile' -sidebar_current: 'vagrantfile-winrm' +layout: docs +page_title: config.winrm - Vagrantfile +sidebar_current: vagrantfile-winrm description: |- The settings within "config.winrm" relate to configuring how Vagrant will access your Windows guest over WinRM. As with most Vagrant settings, the diff --git a/website/pages/docs/vagrantfile/winssh_settings.html.md b/website/pages/docs/vagrantfile/winssh_settings.mdx similarity index 96% rename from website/pages/docs/vagrantfile/winssh_settings.html.md rename to website/pages/docs/vagrantfile/winssh_settings.mdx index 48ee12f58..0e645dca9 100644 --- a/website/pages/docs/vagrantfile/winssh_settings.html.md +++ b/website/pages/docs/vagrantfile/winssh_settings.mdx @@ -1,10 +1,13 @@ --- -layout: 'docs' -page_title: 'config.winssh - Vagrantfile' -sidebar_current: 'vagrantfile-winssh' -description: |- +layout: docs +page_title: config.winssh - Vagrantfile +sidebar_current: vagrantfile-winssh +description: >- The settings within "config.winssh" relate to configuring how Vagrant - will access your machine over Windows OpenSSH. As with most Vagrant settings, the + + will access your machine over Windows OpenSSH. As with most Vagrant settings, + the + defaults are typically fine, but you can fine tune whatever you would like. --- diff --git a/website/pages/docs/virtualbox/boxes.html.md b/website/pages/docs/virtualbox/boxes.mdx similarity index 91% rename from website/pages/docs/virtualbox/boxes.html.md rename to website/pages/docs/virtualbox/boxes.mdx index 5a50ac831..e6687a4bb 100644 --- a/website/pages/docs/virtualbox/boxes.html.md +++ b/website/pages/docs/virtualbox/boxes.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Creating a Base Box - VirtualBox Provider' -sidebar_current: 'providers-virtualbox-boxes' +layout: docs +page_title: Creating a Base Box - VirtualBox Provider +sidebar_current: providers-virtualbox-boxes description: |- As with every Vagrant provider, the Vagrant VirtualBox provider has a custom box format that affects how base boxes are made. @@ -23,13 +23,11 @@ on the box. Additionally, it is helpful to understand the [basics of the box file format](/docs/boxes/format.html). -
- Advanced topic! This is a reasonably advanced topic that - a beginning user of Vagrant does not need to understand. If you are - just getting started with Vagrant, skip this and use an available - box. If you are an experienced user of Vagrant and want to create - your own custom boxes, this is for you. -
+~> **Advanced topic!** This is a reasonably advanced topic that +a beginning user of Vagrant does not need to understand. If you are +just getting started with Vagrant, skip this and use an available +box. If you are an experienced user of Vagrant and want to create +your own custom boxes, this is for you. ## Virtual Machine diff --git a/website/pages/docs/virtualbox/common-issues.html.md b/website/pages/docs/virtualbox/common-issues.mdx similarity index 91% rename from website/pages/docs/virtualbox/common-issues.html.md rename to website/pages/docs/virtualbox/common-issues.mdx index 3dcee0c27..f6f38367f 100644 --- a/website/pages/docs/virtualbox/common-issues.html.md +++ b/website/pages/docs/virtualbox/common-issues.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Common Issues - VirtualBox Provider' -sidebar_current: 'providers-virtualbox-issues' +layout: docs +page_title: Common Issues - VirtualBox Provider +sidebar_current: providers-virtualbox-issues description: |- This page lists some common issues people run into with Vagrant and VirtualBox as well as solutions for those issues. diff --git a/website/pages/docs/virtualbox/configuration.html.md b/website/pages/docs/virtualbox/configuration.mdx similarity index 90% rename from website/pages/docs/virtualbox/configuration.html.md rename to website/pages/docs/virtualbox/configuration.mdx index 7a3b0121e..706107222 100644 --- a/website/pages/docs/virtualbox/configuration.html.md +++ b/website/pages/docs/virtualbox/configuration.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Configuration - VirtualBox Provider' -sidebar_current: 'providers-virtualbox-configuration' +layout: docs +page_title: Configuration - VirtualBox Provider +sidebar_current: providers-virtualbox-configuration description: |- The VirtualBox provider exposes some additional configuration options that allow you to more finely control your VirtualBox-powered Vagrant @@ -83,11 +83,9 @@ end If you do not want backward compatibility and want to force users to support linked cloning, you can use `Vagrant.require_version` with 1.8. -
- Note: the generated master VMs are currently not removed - automatically by Vagrant. This has to be done manually. However, a master - VM can only be removed when there are no linked clones connected to it. -
+-> **Note:** the generated master VMs are currently not removed +automatically by Vagrant. This has to be done manually. However, a master +VM can only be removed when there are no linked clones connected to it. ## VBoxManage Customizations diff --git a/website/pages/docs/virtualbox/index.html.md b/website/pages/docs/virtualbox/index.mdx similarity index 92% rename from website/pages/docs/virtualbox/index.html.md rename to website/pages/docs/virtualbox/index.mdx index 241c7da51..1b1bd81f1 100644 --- a/website/pages/docs/virtualbox/index.html.md +++ b/website/pages/docs/virtualbox/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'VirtualBox Provider' -sidebar_current: 'providers-virtualbox' +layout: docs +page_title: VirtualBox Provider +sidebar_current: providers-virtualbox description: |- Vagrant comes with support out of the box for VirtualBox, a free, cross-platform consumer virtualization product. diff --git a/website/pages/docs/virtualbox/networking.html.md b/website/pages/docs/virtualbox/networking.mdx similarity index 95% rename from website/pages/docs/virtualbox/networking.html.md rename to website/pages/docs/virtualbox/networking.mdx index 457918859..4de30ee1c 100644 --- a/website/pages/docs/virtualbox/networking.html.md +++ b/website/pages/docs/virtualbox/networking.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Networking - VirtualBox Provider' -sidebar_current: 'providers-virtualbox-networking' +layout: docs +page_title: Networking - VirtualBox Provider +sidebar_current: providers-virtualbox-networking description: |- The Vagrant VirtualBox provider supports using the private network as a VirtualBox internal network. By default, private networks are host-only diff --git a/website/pages/docs/virtualbox/usage.html.md b/website/pages/docs/virtualbox/usage.mdx similarity index 83% rename from website/pages/docs/virtualbox/usage.html.md rename to website/pages/docs/virtualbox/usage.mdx index 01e80cacb..3901e06f9 100644 --- a/website/pages/docs/virtualbox/usage.html.md +++ b/website/pages/docs/virtualbox/usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Usage - VirtualBox Provider' -sidebar_current: 'providers-virtualbox-usage' +layout: docs +page_title: Usage - VirtualBox Provider +sidebar_current: providers-virtualbox-usage description: |- The Vagrant VirtualBox provider is used just like any other provider. Please read the general basic usage page for providers. diff --git a/website/pages/docs/vmware/boxes.html.md b/website/pages/docs/vmware/boxes.mdx similarity index 86% rename from website/pages/docs/vmware/boxes.html.md rename to website/pages/docs/vmware/boxes.mdx index 2118c5021..246f5e083 100644 --- a/website/pages/docs/vmware/boxes.html.md +++ b/website/pages/docs/vmware/boxes.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Box Format - VMware Provider' -sidebar_current: 'providers-vmware-boxes' +layout: docs +page_title: Box Format - VMware Provider +sidebar_current: providers-vmware-boxes description: |- As with every Vagrant provider, the Vagrant VMware providers have a custom box format. @@ -17,13 +17,11 @@ Note that currently you must make these base boxes by hand. A future release of Vagrant will provide additional mechanisms for automatically creating such images. -
- Note: This is a reasonably advanced topic that - a beginning user of Vagrant does not need to understand. If you are - just getting started with Vagrant, skip this and use an available - box. If you are an experienced user of Vagrant and want to create - your own custom boxes, this is for you. -
+-> **Note:** This is a reasonably advanced topic that +a beginning user of Vagrant does not need to understand. If you are +just getting started with Vagrant, skip this and use an available +box. If you are an experienced user of Vagrant and want to create +your own custom boxes, this is for you. Prior to reading this page, please understand the [basics of the box file format](/docs/boxes/format.html). @@ -61,11 +59,9 @@ When bringing up a VMware backed machine, Vagrant copies all of the contents in the box into a privately managed "vmwarevm" folder, and uses the first "vmx" file found to control the machine. -
- Vagrant 1.8 and higher support linked clones. Prior versions - of Vagrant do not support linked clones. For more information on - linked clones, please see the documentation. -
+-> **Vagrant 1.8 and higher support linked clones**. Prior versions +of Vagrant do not support linked clones. For more information on +linked clones, please see the documentation. ## VMX Whitelisting diff --git a/website/pages/docs/vmware/configuration.html.md b/website/pages/docs/vmware/configuration.mdx similarity index 97% rename from website/pages/docs/vmware/configuration.html.md rename to website/pages/docs/vmware/configuration.mdx index a6a406a4b..406bdfa9b 100644 --- a/website/pages/docs/vmware/configuration.html.md +++ b/website/pages/docs/vmware/configuration.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Configuration- VMware Provider' -sidebar_current: 'providers-vmware-configuration' +layout: docs +page_title: Configuration- VMware Provider +sidebar_current: providers-vmware-configuration description: |- While Vagrant VMware providers are a drop-in replacement for VirtualBox, there are some additional features that are exposed that allow you to more finely diff --git a/website/pages/docs/vmware/index.html.md b/website/pages/docs/vmware/index.mdx similarity index 94% rename from website/pages/docs/vmware/index.html.md rename to website/pages/docs/vmware/index.mdx index c8bdbe294..1fa48d92f 100644 --- a/website/pages/docs/vmware/index.html.md +++ b/website/pages/docs/vmware/index.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'VMware Provider' -sidebar_current: 'providers-vmware' +layout: docs +page_title: VMware Provider +sidebar_current: providers-vmware description: |- HashiCorp develops an official VMware Fusion and VMware Workstation provider for Vagrant. This provider allows Vagrant to power VMware based machines and diff --git a/website/pages/docs/vmware/installation.html.md b/website/pages/docs/vmware/installation.mdx similarity index 92% rename from website/pages/docs/vmware/installation.html.md rename to website/pages/docs/vmware/installation.mdx index 475ad1c2a..578b04ea4 100644 --- a/website/pages/docs/vmware/installation.html.md +++ b/website/pages/docs/vmware/installation.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Installation - VMware Provider' -sidebar_current: 'providers-vmware-installation' +layout: docs +page_title: Installation - VMware Provider +sidebar_current: providers-vmware-installation description: |- The Vagrant VMware provider can be installed using the standard plugin installation procedure. @@ -35,11 +35,9 @@ to operate. To purchase a license, please visit the purchasing a license, you will receive a license file in your inbox. Download this file and save it to a temporary location on your computer. -
- Warning! You cannot use your VMware product license as a - Vagrant VMware plugin license. They are separate commercial products, each - requiring their own license. -
+~> **Warning!** You cannot use your VMware product license as a +Vagrant VMware plugin license. They are separate commercial products, each +requiring their own license. After installing the Vagrant VMware Desktop plugin for your system, you will need to install the license: @@ -99,29 +97,29 @@ $ vagrant plugin update vagrant-vmware-desktop ## Frequently Asked Questions -**Q: Can Vagrant VMWare Plugin work without internet?**
+**Q: Can Vagrant VMWare Plugin work without internet?**
No, Vagrant VMWare plugin requires a new license every 6 weeks. Vagrant will try to renew the license automatically. If you are on an environment without internet, after 4 weeks Vagrant will emit a warning, and after 6 weeks, the VMWare plugin will stop working. You can install a new license to reactive vagrant. -**Q: I purchased a Vagrant VMware plugin license, but I did not receive an email?**
+**Q: I purchased a Vagrant VMware plugin license, but I did not receive an email?**
First, please check your JUNK or SPAM folders. Since the license comes from an automated system, it might have been flagged as spam by your email provider. If you do not see the email there, please [contact support](mailto:support@hashicorp.com?subject=License Not Received) and include the original order number. -**Q: Do I need to keep the Vagrant VMware plugin license file on disk?**
+**Q: Do I need to keep the Vagrant VMware plugin license file on disk?**
After you have installed the Vagrant VMware plugin license, it is safe to remove your copy from disk. Vagrant copies the license into its structure for reference on boot. -**Q: I lost my original email, where can I download my Vagrant VMware plugin license again?**
+**Q: I lost my original email, where can I download my Vagrant VMware plugin license again?**
Please [contact support](mailto:support@hashicorp.com?subject=Lost My License&body=Hello support! I seem to have misplaced my Vagrant VMware license. Could you please send it to me? Thanks!). **Note:** please contact support using the email address with which you made the original purchase. If you use an alternate email, you will be asked to verify that you are the owner of the requested license. -**Q: I upgraded my VMware product and now my license is invalid?**
+**Q: I upgraded my VMware product and now my license is invalid?**
The Vagrant VMware plugin licenses are valid for specific VMware product versions at the time of purchase. When new versions of VMware products are released, significant changes to the plugin code are often required to support @@ -134,12 +132,12 @@ Your existing license will continue to work with all previous versions of the VMware products. If you do not wish to update at this time, you can rollback your VMware installation to an older version. -**Q: Why is the Vagrant VMware plugin not working with my trial version of VMware Fusion/Workstation?**
+**Q: Why is the Vagrant VMware plugin not working with my trial version of VMware Fusion/Workstation?**
The Vagrant VMware Fusion and Vagrant VMware Workstation plugins are not compatible with trial versions of the VMware products. We apologize for the inconvenience. -**Q: How do I upgrade my currently installed Vagrant VMware plugin?**
+**Q: How do I upgrade my currently installed Vagrant VMware plugin?**
You can update the Vagrant VMware plugin to the latest version by re-running the install command: diff --git a/website/pages/docs/vmware/kernel-upgrade.html.md b/website/pages/docs/vmware/kernel-upgrade.mdx similarity index 95% rename from website/pages/docs/vmware/kernel-upgrade.html.md rename to website/pages/docs/vmware/kernel-upgrade.mdx index daf77497c..c3d03095a 100644 --- a/website/pages/docs/vmware/kernel-upgrade.html.md +++ b/website/pages/docs/vmware/kernel-upgrade.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Kernel Upgrade - VMware Provider' -sidebar_current: 'providers-vmware-kernel-upgrade' +layout: docs +page_title: Kernel Upgrade - VMware Provider +sidebar_current: providers-vmware-kernel-upgrade description: |- If as part of running your Vagrant environment with VMware, you perform a kernel upgrade, it is likely that the VMware guest tools will stop working. diff --git a/website/pages/docs/vmware/known-issues.html.md b/website/pages/docs/vmware/known-issues.mdx similarity index 92% rename from website/pages/docs/vmware/known-issues.html.md rename to website/pages/docs/vmware/known-issues.mdx index 44a58de09..0c479ebf6 100644 --- a/website/pages/docs/vmware/known-issues.html.md +++ b/website/pages/docs/vmware/known-issues.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Known Issues - VMware Provider' -sidebar_current: 'providers-vmware-known-issues' +layout: docs +page_title: Known Issues - VMware Provider +sidebar_current: providers-vmware-known-issues description: |- This page tracks some known issues or limitations of the VMware provider. Note that none of these are generally blockers to using the provider, but diff --git a/website/pages/docs/vmware/usage.html.md b/website/pages/docs/vmware/usage.mdx similarity index 91% rename from website/pages/docs/vmware/usage.html.md rename to website/pages/docs/vmware/usage.mdx index bc43919ad..40c610286 100644 --- a/website/pages/docs/vmware/usage.html.md +++ b/website/pages/docs/vmware/usage.mdx @@ -1,7 +1,7 @@ --- -layout: 'docs' -page_title: 'Usage - VMware Provider' -sidebar_current: 'providers-vmware-usage' +layout: docs +page_title: Usage - VMware Provider +sidebar_current: providers-vmware-usage description: |- The Vagrant VMware providers are used just like any other provider. Please read the general basic usage page for providers. diff --git a/website/pages/docs/vmware/vagrant-vmware-utility.html.md.erb b/website/pages/docs/vmware/vagrant-vmware-utility.mdx similarity index 87% rename from website/pages/docs/vmware/vagrant-vmware-utility.html.md.erb rename to website/pages/docs/vmware/vagrant-vmware-utility.mdx index c6f8fa981..b6a76cdcb 100644 --- a/website/pages/docs/vmware/vagrant-vmware-utility.html.md.erb +++ b/website/pages/docs/vmware/vagrant-vmware-utility.mdx @@ -1,12 +1,14 @@ --- -layout: "docs" -page_title: "Installation - VMware Provider" -sidebar_current: "providers-vmware-utility" +layout: docs +page_title: Installation - VMware Provider +sidebar_current: providers-vmware-utility description: |- The Vagrant VMware Utility works with the Vagrant VMware Provider to interact with the system VMware installation. --- +import { VMWARE_UTILITY_VERSION } from '../../../data/version' + # Vagrant VMware Utility Installation ## System Packages @@ -15,9 +17,7 @@ The Vagrant VMware Utility is provided as a system package. To install the utility, download and install the correct system package from the downloads page. -
-Download <%= vmware_utility_version %> -
+