Add ansible provisioning (#122)
* first ansible skeleton * first commit of ansible installation of vulnwhisperer outside docker * first ansible skeleton * first commit of ansible installation of vulnwhisperer outside docker * refactor the ansible role a bit * update readme, add fail validation step to provision.yml and fix typo when calling a logging funciton
This commit is contained in:

committed by
Quim Montal

parent
a8671a7303
commit
3a09f60543
124
ansible/roles/elastic.elasticsearch/.kitchen.yml
Normal file
124
ansible/roles/elastic.elasticsearch/.kitchen.yml
Normal file
@ -0,0 +1,124 @@
|
||||
---
|
||||
driver:
|
||||
name: docker
|
||||
|
||||
provisioner:
|
||||
name: ansible_playbook
|
||||
hosts: localhost
|
||||
roles_path: ../
|
||||
require_ansible_repo: false
|
||||
require_ansible_omnibus: false
|
||||
require_ansible_source: false
|
||||
require_pip: true
|
||||
ansible_version: 2.4.3.0
|
||||
http_proxy: <%= ENV['HTTP_PROXY'] %>
|
||||
https_proxy: <%= ENV['HTTPS_PROXY'] %>
|
||||
no_proxy: localhost,127.0.0.1
|
||||
ignore_extensions_from_root: [".git",".idea",".kitchen.yml"]
|
||||
ignore_paths_from_root: [".git",".idea",".kitchen"]
|
||||
<% if ENV['VERSION'] %>
|
||||
attributes:
|
||||
extra_vars:
|
||||
es_major_version: "<%= ENV['VERSION'] %>"
|
||||
<% if ENV['VERSION'] == '5.x' %>
|
||||
es_version: '5.6.11'
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
transport:
|
||||
max_ssh_sessions: 6
|
||||
|
||||
platforms:
|
||||
- name: ubuntu-14.04
|
||||
driver_config:
|
||||
image: dliappis/ubuntu-devopsci:14.04
|
||||
privileged: true
|
||||
provision_command:
|
||||
- apt-get update && apt-get install -y software-properties-common && add-apt-repository -y ppa:ansible/ansible
|
||||
- apt-get update && apt-get -y -q install python-apt python-pycurl python-pip python-openssl
|
||||
- pip install jmespath pyOpenSSL ndg-httpsclient
|
||||
- pip uninstall -y ansible
|
||||
use_sudo: false
|
||||
volume:
|
||||
- <%=ENV['ES_XPACK_LICENSE_FILE']%>:/tmp/license.json
|
||||
- /etc # This fixes certain java file actions that check the mount point. Without this adding users fails for some docker storage drivers
|
||||
- name: ubuntu-16.04
|
||||
driver_config:
|
||||
image: dliappis/ubuntu-devopsci:16.04
|
||||
privileged: true
|
||||
provision_command:
|
||||
- apt-get update && apt-get install -y software-properties-common && add-apt-repository -y ppa:ansible/ansible
|
||||
- apt-get install -y -q net-tools
|
||||
- apt-get update && apt-get -y -q install python-apt python-pycurl python-pip
|
||||
- pip install jmespath
|
||||
- pip uninstall -y ansible
|
||||
use_sudo: false
|
||||
volume:
|
||||
- <%=ENV['ES_XPACK_LICENSE_FILE']%>:/tmp/license.json
|
||||
- /etc # This fixes certain java file actions that check the mount point. Without this adding users fails for some docker storage drivers
|
||||
run_command: "/sbin/init"
|
||||
- name: debian-8
|
||||
driver_config:
|
||||
image: dliappis/debian-devopsci:8
|
||||
privileged: true
|
||||
provision_command:
|
||||
- apt-get update && apt-get -y install python python-dev python-pip build-essential libyaml-dev python-yaml curl wget
|
||||
- apt-get install -y -q net-tools
|
||||
- sed -ri 's/^#?PermitRootLogin .*/PermitRootLogin yes/' /etc/ssh/sshd_config
|
||||
- sed -ri 's/^#?PasswordAuthentication .*/PasswordAuthentication yes/' /etc/ssh/sshd_config
|
||||
- sed -ri 's/^#?UsePAM .*/UsePAM no/' /etc/ssh/sshd_config
|
||||
- pip install jmespath
|
||||
- pip uninstall -y ansible
|
||||
volume:
|
||||
- <%=ENV['ES_XPACK_LICENSE_FILE']%>:/tmp/license.json
|
||||
- /etc # This fixes certain java file actions that check the mount point. Without this adding users fails for some docker storage drivers
|
||||
use_sudo: false
|
||||
run_command: "/sbin/init"
|
||||
- name: centos-7
|
||||
driver_config:
|
||||
image: dliappis/centos-devopsci:7
|
||||
provision_command:
|
||||
- sed -ri 's/^#?PermitRootLogin .*/PermitRootLogin yes/' /etc/ssh/sshd_config
|
||||
- sed -ri 's/^#?PasswordAuthentication .*/PasswordAuthentication yes/' /etc/ssh/sshd_config
|
||||
- sed -ri 's/^#?UsePAM .*/UsePAM no/' /etc/ssh/sshd_config
|
||||
- rm /etc/yum.repos.d/epel*repo /etc/yum.repos.d/puppetlabs-pc1.repo
|
||||
- yum -y install initscripts
|
||||
- yum -y remove ansible
|
||||
- yum clean all
|
||||
- pip install jmespath
|
||||
volume:
|
||||
- <%=ENV['ES_XPACK_LICENSE_FILE']%>:/tmp/license.json
|
||||
- /etc # This fixes certain java file actions that check the mount point. Without this adding users fails for some docker storage drivers
|
||||
run_command: "/usr/sbin/init"
|
||||
privileged: true
|
||||
use_sudo: false
|
||||
|
||||
suites:
|
||||
- name: oss
|
||||
provisioner:
|
||||
idempotency_test: true
|
||||
playbook: test/integration/oss.yml
|
||||
- name: oss-upgrade
|
||||
provisioner:
|
||||
playbook: test/integration/oss-upgrade.yml
|
||||
idempotency_test: false
|
||||
- name: oss-to-xpack-upgrade
|
||||
provisioner:
|
||||
playbook: test/integration/oss-to-xpack-upgrade.yml
|
||||
idempotency_test: false
|
||||
- name: xpack
|
||||
provisioner:
|
||||
playbook: test/integration/xpack.yml
|
||||
idempotency_test: true
|
||||
- name: xpack-upgrade
|
||||
provisioner:
|
||||
playbook: test/integration/xpack-upgrade.yml
|
||||
idempotency_test: false
|
||||
- name: multi
|
||||
provisioner:
|
||||
playbook: test/integration/multi.yml
|
||||
idempotency_test: true
|
||||
- name: issue-test
|
||||
provisioner:
|
||||
playbook: test/integration/issue-test.yml
|
||||
idempotency_test: false
|
Reference in New Issue
Block a user