Commit Graph

46 Commits

Author SHA1 Message Date
Seth Vargo 5093f3120e Merge docs and www into a single static site
This is a big commit, and I apologize in advance for the future
git-blames all pointing to me. This commit does a few things:

1.  Merges the website/docs and website/www repo into a single website repo
    to be in line with other HashiCorp projects
2.  Updates to use middleman-hashicorp
3.  Converts less to scss to be in line with other projects
4.  Updates page styles to be in line with other projects
5.  Optimizes images
6.  Prepare for S3 + Fastly deployment with scripts, etc.
7.  Removes blog posts (they have been transferred to hashicorp.com with
    redirects in place
8.  Updated sitemap generation script for better SEO
9.  Fixed many broken links
10. Add description to all fields
2016-01-19 14:35:05 -05:00
Gilles Cornu a3c077cbe0 Merge branch 'gildegoma/ansible-force-ssh-user'
Resolved conflicts in
  plugins/provisioners/ansible/config.rb
  plugins/provisioners/ansible/provisioner.rb
  test/unit/plugins/provisioners/ansible/provisioner_test.rb
  website/docs/source/v2/provisioning/ansible.html.md

ref #6348
2015-11-08 14:01:23 +01:00
Gilles Cornu 9bfdaf7e75 provisioners/ansible: introduce ansible_local
With this change, the existing host-based Ansible provisioner is
refactored to share a maximum of code with this new guest-based Ansible
provisioner.

At this stage of development, the existing unit tests are intentionally
modified as little as possible, to keep safe the existing funtionalities.

Other issues resolved by this changeset:
 - Display a warning when running from a Windows host [GH-5292]
 - Do not run `ansible-playbook` in verbose mode when the `verbose` option
   is set to an empty string.
2015-11-08 10:42:48 +01:00
Gilles Cornu dde94a3ce7 provisioners/ansible: add force_remote_user option
The benefits of the following "breaking change" are the following:
- default behaviour naturally fits with most common usage (i.e. always
  connect with Vagrant SSH settings)
- the autogenerated inventory is more consistent by providing both the
  SSH username and private key.
- no longer needed to explain how to override Ansible `remote_user` parameters

Important: With the `force_remote_user` option, people still can fall
back to the former behavior (prior to Vagrant 1.8.0), which means that
Vagrant integration capabilities are still quite open and flexible.
2015-11-02 09:03:15 +01:00
Gilles Cornu 247fe72068 docs: update ansible provisioner guide [GH-5765]
[ci skip]
2015-07-10 17:36:05 +02:00
Gilles Cornu df4b74ee54 provisioners/ansible: update doc for GH-5765 (wip) 2015-07-10 08:51:17 +02:00
follower 21538fd64f Fix known/kownn typo 2015-03-16 03:17:56 +13:00
Gilles Cornu 5b716d1623 provisioners/ansible: fix lines lengths in docs
[ci skip]
2015-01-13 19:18:32 +01:00
Gilles Cornu 00b848fd71 provisioners/ansible: improve inventory docs
Related to a question asked in the mailing list:
https://groups.google.com/forum/#!topic/vagrant-up/OwkR04u4MA4

[ci skip]
2015-01-13 19:18:23 +01:00
Gilles Cornu fafaa00391 doc: update ansible parallel provisioning tip
As of Vagrant 1.7+, the ansible parallel provisioning trick is easier to
be implemented with `config.ssh.insert_key=false` (fallback to previous
behaviour).

Close #5048

[ci skip]
2015-01-12 10:29:58 +01:00
Gilles Cornu f96636587a provisioners/ansible: don't read/write known_hosts
Like Vagrant's default SSH behaviors (e.g ssh or ssh-config commands),
the Ansible provisioner should by default not modify or read the user
known host file (e.g. ~/.ssh/known_hosts).

Given that `UserKnownHostsFile=/dev/null` SSH option is usually combined
with `StrictHostKeyChecking=no`, it seems quite reasonable to bind the
activation/disactivation of both options to `host_key_checking`
provisioner attribute.

For the records, a discussion held in Ansible-Development mailing list
clearly confirmed that there is no short-term plan to adapt Ansible to
offer an extra option or change the behavior of
ANSIBLE_HOST_KEY_CHECKING. For this reason, the current implementation
seems reasonable and should be stable on the long run.

Close #3900

Related References:

- https://groups.google.com/forum/#!msg/ansible-devel/iuoZs1oImNs/6xrj5oa1CmoJ
- https://github.com/ansible/ansible/issues/9442
2014-11-30 09:55:48 +01:00
Gilles Cornu 178942cf27 provisioners/ansible: change arguments arrangement
- force `--connection=ssh` (any other modes like paramiko or smart are not
  supported)
- give the highest priority to `raw_arguments` for sake of simplicity (in
  usage, in code and in documentation)
- fix position of the `--limit` argument (the generated inventory could be
  shadowed by `raw_arguments`, while ansible.limit was able to override
  `raw_arguments`

ref #3396
2014-11-30 09:50:50 +01:00
Gilles Cornu 306c4f7eda provisioners/ansible: force --connection=ssh
When `--connection` argument is not specified, Ansible will use the
'smart' mode, which can either use `ssh` or `paramiko` transports,
depending of the version of OpenSSH available. If OpenSSH version is new
enough to support ControlPersist technology, `ssh` will be used.
See also http://docs.ansible.com/intro_configuration.html#transport.

In order to support some advanced features of Vagrant (e.g. multiple ssh
private key identities or ssh forwarding), the Ansible provisioner
already must force `ssh` connection mode.

Having to deal with the possible fallback to `paramiko` increase the
burden of special cases that Ansible provisioner must handle, without
any added value, as Vagrant is based on OpenSSH and its users are
usually using modern operating systems.

With this change, the Ansible provisioner will officially only support
`ssh`. It will still be possible to switch to another connection mode
via `raw_arguments`, but it will breach the "contract", and no
(community) support can be expected in such use case.

ref #3900, #3396
2014-11-30 09:50:50 +01:00
Mark Whelan b22259107b fix typos 2014-09-23 14:38:26 -04:00
Emilien Kenler dd06dffe85 Ansible Vault support
Add the following options to the Ansible provisioner:
- ask_vault_pass
- vault_password_file
2014-04-21 13:56:15 -07:00
follower 24e551a1dc Document solution for wrong SSH user with Ansible
As per: https://github.com/mitchellh/vagrant/pull/2710#issuecomment-32192976
2014-04-03 03:17:36 +13:00
Jaik Dean e8c7468885 Minor grammar corrections to Ansible provisioning documentation 2014-03-27 15:06:52 +00:00
jjshoe 9cdcdeb42a Nit-picky grammer making it easier to read. 2014-03-10 17:26:48 -05:00
Gilles Cornu 1d09fc4a79 provisioners/ansible: add new option raw_ssh_args
Since the Ansible provisioner now potentially exports ANSIBLE_SSH_ARGS
variable, it is fair to allow to extend the content of this environment
variable (`ssh_args` parameters from ansible.cfg file have lower
priority)
2014-03-09 22:47:24 +01:00
Gilles Cornu c39912287d website/docs: remove unwanted brackets (typo) 2014-03-06 23:57:47 +01:00
Gilles Cornu 1d328f7021 provisioners/ansible: Disable host key checking
Close #3060
2014-03-06 23:55:08 +01:00
Gilles Cornu 49b5b6515d Ansible Docs: Tip about wrong remote user
Hint motivated by misleading situations reported in #2710.
2014-02-25 06:59:39 +01:00
Gilles Cornu 84eb0d972c Ansible Docs: Tip to ship a local `ansible.cfg`
Hint motivated by misleading situations reported in #2302.
2014-02-25 06:57:10 +01:00
Gilles Cornu f83f863d4d website/docs: Update Ansible URLs 2014-02-24 17:02:39 +01:00
Gilles Cornu 1cd2fe56a0 ansible: generate inventory in .vagrant/... 2014-02-24 16:52:38 +01:00
Gilles Cornu d5055c6252 provisioners/ansible: improve `inventory_path` doc
Related to discussion held in #3004.
2014-02-24 16:47:10 +01:00
Gilles Cornu 74c4ae06c1 Ansible Docs: Tip about Parallel Multi-Machine 2014-02-17 22:36:46 +01:00
Gilles Cornu 17a4d75fd5 Ansible: Try to document the limit breaking change 2014-02-17 22:34:38 +01:00
Gilles Cornu c2663f5d30 provisioners/ansible: Fix Group Management
- Support arbitrary depth of "groups of groups of ... groups"
- Skip ':vars' suffix, but allow group names with ':' (yes, Ansible
  accepts this character)
- Like for groups of machines, groups of groups can result "empty", but
  it is not an issue for Ansible. Recursive filter on the group tree is
  a bit hard to implement, and don't brind real added value at Vagrant
  level.
2014-02-16 11:20:00 +01:00
Gilles Cornu b723f0d43d provisioners/ansible: Document new default limit
- explain new default ansible.limit
- shift `ansible.groups` part to Inventory section
- change/add inventory examples
2014-02-03 11:45:03 +01:00
Mark Aaron Shirley 3bf5032d4b Update Ansible provisioner to only create a single inventory file
The Ansible provisioner will now only create a single inventory file named,
"vagrant_ansible_inventory". All defined Vagrant machines will be added to
this inventory file. Provisioning will now include a "--limit=#{machine}"
option to scope Ansible provisioning tasks to just the current machine. Setting
the Ansible provisioner's "limit" config option will override the new default
limit. Ansible provisioning scripts will now have access to all other defined
machines and what groups they reside in.
2014-02-01 13:04:20 -08:00
Mitchell Hashimoto 5c4973beb8 Merge pull request #2658 from gildegoma/ansible_doc_small_improvements
website/docs: cosmetic improvements on Ansible
2014-01-07 14:07:57 -08:00
Gilles Cornu e5f45e2b79 Ansible: Fix a bug in `raw_arguments` option
Without this change, it is not possible to pass more than one "raw"
argument, which was not the expected behavior. In addition to Array
format, String (for a single argument) is still accepted (for sake of
"backward compatibility" and ease of use).

Note: Due to low/expert usage of this option, I think that it is not
necessary to add more robust validation on this parameter (e.g. Array
of String type checking or argument syntax pattern matching). Use it at
your own risk ;-)
2013-12-16 21:20:10 +01:00
Gilles Cornu d584a56ac2 Ansible Docs: Display multiline examples in block 2013-12-14 16:14:20 +01:00
Mark Aaron Shirley 7dc660fd7f Add Ansible groups docs. 2013-12-08 23:33:51 -08:00
Gilles Cornu 5aff4a1f20 Ansible: Improvements for 'extra_vars' argument
`extra_vars` argument can now:
- contains a hierarchical set of parameters (instead of flat Key-Value Pairs)
- alternatively refers to a configuration file (instead of embedded Hash)

See Ansible Documentation for version requirement details:
http://www.ansibleworks.com/docs/playbooks_variables.html#passing-variables-on-the-command-line
2013-10-12 00:29:39 +02:00
Matthew Johnson eb5fc9d261 remove extra alias for vvv verbosity 2013-10-04 15:29:26 -04:00
Matthew Johnson e5a2f1e8b7 fix ansible-playbook runs when verbosity is not specified 2013-10-04 02:58:49 -04:00
Matthew Johnson 131ce4fc97 add ansible.host_key_checking configuration parameter 2013-09-13 22:48:12 -04:00
Mitchell Hashimoto 9e878b3bfb Merge pull request #2153 from gildegoma/ansible-docs-cleanup-and-vv
provisioners/ansible: Update documentation, Code Cleanup (and Extend Log Verbosity option)
2013-09-07 17:46:28 -07:00
Gilles Cornu eb5b6a8bf6 Ansible Docs: Add beginner warning
Apply the same warning as in Chef or Puppet pages
2013-09-07 15:58:11 +02:00
Gilles Cornu ce4f2824f4 Ansible: Support three available verbosity levels 2013-09-07 15:17:43 +02:00
Gilles Cornu 8a925e3461 Ansible: code cleanup and documentation update
Clean Up (code logic is kept unmodified):
* Remove repetition around `ansible.limit` option (merge conflict issue)
* Re-add missing comments from GH-1697 (merge conflict issue)
* Reorder instructions

Documentation for following changes:
* [GH-1697] add more options
* [GH-1979] extra verbosity option
2013-09-07 14:49:12 +02:00
Mitchell Hashimoto b5fd021694 website/docs: page titles on everything, cover more info 2013-09-06 09:50:43 -07:00
Mitchell Hashimoto 72b6fe6167 website/docs: bring in changes from docs.vagrantup.com 2013-09-03 11:59:49 -07:00
Mitchell Hashimoto d03110eaa3 website: add docs back to the main Vagrant repo 2013-09-03 11:08:28 -07:00