mirror of
https://github.com/ansible/awx.git
synced 2026-01-11 10:00:01 -03:30
Vagrant Local Development
This commit adds playbooks and files necessary to do local development from within Vagrant. These playbooks start with a fresh Ubuntu 12.04 machine and: - Install Ansible - Install the Tower nightly - Install all components to exactly mirror production, except Apache - Install uwsgi and nginx for local development (since Apache lacks a working auto-reload) This isn't entirely perfect -- in particular, developing on task code is probably challenging until I figure out how to get celery not to read from the install, but it is a very easy way to get 90% of the way there very, very quickly.
This commit is contained in:
parent
25abbc1c16
commit
dd5fcbbfbd
3
.gitignore
vendored
3
.gitignore
vendored
@ -30,6 +30,5 @@ pep8.txt
|
||||
nohup.out
|
||||
reports
|
||||
package.json
|
||||
Vagrantfile
|
||||
ansible.cfg
|
||||
tools/vagrant/local.yml
|
||||
*~
|
||||
|
||||
41
Vagrantfile
vendored
Normal file
41
Vagrantfile
vendored
Normal file
@ -0,0 +1,41 @@
|
||||
# -*- mode: ruby -*-
|
||||
# vi: set ft=ruby :
|
||||
|
||||
Vagrant.require_version '>= 1.5.1'
|
||||
|
||||
Vagrant.configure('2') do |config|
|
||||
config.vm.define 'tower-precise', primary: true do |precise|
|
||||
precise.vm.box = "precise-server-cloudimg-amd64"
|
||||
precise.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/precise/current/precise-server-cloudimg-amd64-vagrant-disk1.box"
|
||||
|
||||
precise.vm.hostname = 'tower-precise'
|
||||
|
||||
precise.vm.network :private_network, ip: '33.33.33.13'
|
||||
precise.vm.network :forwarded_port, guest: 80, host: 8013
|
||||
precise.vm.network :forwarded_port, guest: 8080, host: 8080
|
||||
precise.vm.network :forwarded_port, guest: 15672, host: 15013
|
||||
precise.vm.network :forwarded_port, guest: 24013, host: 24013
|
||||
|
||||
precise.vm.synced_folder '.', '/var/ansible/tower/',
|
||||
:mount_options => [ 'gid=5853', 'dmode=2775' ]
|
||||
|
||||
precise.vm.provider :virtualbox do |vb|
|
||||
vb.customize ["modifyvm", :id, "--memory", "512"]
|
||||
end
|
||||
end
|
||||
|
||||
config.ssh.forward_agent = true
|
||||
|
||||
config.vm.provision 'ansible' do |ansible|
|
||||
ansible.extra_vars = {
|
||||
'development' => true,
|
||||
'target_hosts' => 'vagrant',
|
||||
'target_user' => 'vagrant',
|
||||
'vagrant' => true,
|
||||
'vagrant_host_user' => ENV['USER'],
|
||||
}
|
||||
ansible.inventory_path = 'tools/vagrant/inventory'
|
||||
ansible.playbook = 'tools/vagrant/playbook.yml'
|
||||
ansible.verbose = 'v'
|
||||
end
|
||||
end
|
||||
15
ansible.cfg
Normal file
15
ansible.cfg
Normal file
@ -0,0 +1,15 @@
|
||||
[defaults]
|
||||
|
||||
# Connections
|
||||
host_key_checking = False
|
||||
record_host_keys = False
|
||||
pipelining = True
|
||||
|
||||
|
||||
# Command-line specific
|
||||
module_name = shell
|
||||
|
||||
|
||||
# Paths
|
||||
roles_path = setup/roles:tools/vagrant/roles
|
||||
|
||||
@ -47,6 +47,9 @@ if 'django_jenkins' in INSTALLED_APPS:
|
||||
JSHINT_CHECKED_FILES = [os.path.join(BASE_DIR, 'ui/static/js'),
|
||||
os.path.join(BASE_DIR, 'ui/static/lib/ansible'),]
|
||||
|
||||
# If there is an `/etc/awx/settings.py`, include it.
|
||||
include(optional('/etc/awx/settings.py'), scope=locals())
|
||||
|
||||
# If any local_*.py files are present in awx/settings/, use them to override
|
||||
# default settings for development. If not present, we can still run using
|
||||
# only the defaults.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user