diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..31b7f17 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,24 @@ +--- +language: python +python: "2.7" +env: + - SITE=test.yml +before_install: + - sudo apt-get update -qq +install: + - pip install ansible==1.5.0 +script: + # Check the role/playbook's syntax. + - "ansible-playbook -i tests/inventory tests/$SITE --syntax-check" + + # Run the role/playbook with ansible-playbook. + - "ansible-playbook -i tests/inventory tests/$SITE --connection=local --sudo" + + # Run the role/playbook again, checking to make sure it's idempotent. + - > + ansible-playbook -i tests/inventory tests/$SITE --connection=local --sudo + | grep -q 'changed=0.*failed=0' + && (echo 'Idempotence test: pass' && exit 0) + || (echo 'Idempotence test: fail' && exit 1) + + # TODO - check if mysql is running. \ No newline at end of file diff --git a/README.md b/README.md index 10d8cb4..29009af 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Ansible Role: MySQL +[![Build Status](https://travis-ci.org/geerlingguy/ansible-role-mysql.svg?branch=master)](https://travis-ci.org/geerlingguy/ansible-role-mysql) + Installs MySQL server on RHEL/CentOS or Debian/Ubuntu servers. ## Requirements diff --git a/tests/inventory b/tests/inventory new file mode 100644 index 0000000..2fbb50c --- /dev/null +++ b/tests/inventory @@ -0,0 +1 @@ +localhost diff --git a/tests/test.yml b/tests/test.yml new file mode 100644 index 0000000..e89cdca --- /dev/null +++ b/tests/test.yml @@ -0,0 +1,8 @@ +--- +- hosts: all + vars_files: + - '../vars/main.yml' + tasks: + - include: '../tasks/main.yml' + handlers: + - include: '../handlers/main.yml'