From b5b31cffd382f74490c618df0f715af7baeb7beb Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Thu, 12 Feb 2015 08:29:14 +0100 Subject: [PATCH 1/8] Updates license --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index da606c6..2d5a369 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2013-2014 Tiziano Perrucci @ StarterSquad +Copyright (c) 2013-2015 Tiziano Perrucci @ StarterSquad Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal From 62525beafdd25954b5bba101d1cfedb936533bee Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Thu, 12 Feb 2015 08:29:48 +0100 Subject: [PATCH 2/8] Improves comment --- prudentia/cli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prudentia/cli.py b/prudentia/cli.py index 793f8bb..1b78310 100644 --- a/prudentia/cli.py +++ b/prudentia/cli.py @@ -56,7 +56,7 @@ def do_use(self, env, *args): # If this function was called inside a cmd loop the return values indicates whether execution will be terminated # returning False will cause interpretation to continue. - # Otherwise the return value is the result of the provisioning command. + # Otherwise the return value is the result of the 'provision' action. return False if self.parent_loop else result def do_EOF(self, line): From 3aa5bea1d0c5cd5d99c38e0c51633dbd7df8d25e Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Thu, 12 Feb 2015 08:30:26 +0100 Subject: [PATCH 3/8] Adds example of provisioning vagrant vm using here doc --- examples/provision-vagrant-vm.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100755 examples/provision-vagrant-vm.sh diff --git a/examples/provision-vagrant-vm.sh b/examples/provision-vagrant-vm.sh new file mode 100755 index 0000000..5f3d2ae --- /dev/null +++ b/examples/provision-vagrant-vm.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +prudentia vagrant <<-EOF + register + ${PWD}/boxes/tasks.yml + mybox + 10.0.0.17 + 1 + + provision mybox +EOF From 6ad466dc6ff8a2ce94f15b391d564020bc8ef512 Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Thu, 12 Feb 2015 09:06:02 +0100 Subject: [PATCH 4/8] Fixes tor task --- prudentia/files/tor/apt-source | 1 + prudentia/tasks/tor.yml | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 prudentia/files/tor/apt-source diff --git a/prudentia/files/tor/apt-source b/prudentia/files/tor/apt-source new file mode 100644 index 0000000..9c06e4c --- /dev/null +++ b/prudentia/files/tor/apt-source @@ -0,0 +1 @@ +deb http://deb.torproject.org/torproject.org precise main \ No newline at end of file diff --git a/prudentia/tasks/tor.yml b/prudentia/tasks/tor.yml index cbac9fb..55f61ed 100644 --- a/prudentia/tasks/tor.yml +++ b/prudentia/tasks/tor.yml @@ -6,10 +6,11 @@ command: test -x /usr/sbin/tor when: ansible_system == "Linux" register: tor_present + ignore_errors: yes tags: tor - name: Tor | Add apt repository - copy: src={{prudentia_dir}}/components/worky/files/tor-apt-source dest=/etc/apt/sources.list.d/tor.list mode=644 + copy: src={{prudentia_dir}}/files/tor/apt-source dest=/etc/apt/sources.list.d/tor.list mode=644 when: ansible_os_family == "Debian" and tor_present|failed tags: tor sudo: yes From 11f6d31c551c66773fa716fc6d62873eeaf1f402 Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Sun, 15 Feb 2015 18:25:02 +0100 Subject: [PATCH 5/8] Upgrades Digital Ocean default Ubuntu image --- prudentia/digital_ocean.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prudentia/digital_ocean.py b/prudentia/digital_ocean.py index c481ec0..36c7634 100644 --- a/prudentia/digital_ocean.py +++ b/prudentia/digital_ocean.py @@ -21,7 +21,7 @@ def __init__(self): class DigitalOceanProvider(FactoryProvider): NAME = 'digital-ocean' - DEFAULT_IMAGE_ID = 6918990 # Ubuntu 14.04 x64 + DEFAULT_IMAGE_ID = 9801950 # Ubuntu 14.04 x64 DEFAULT_SIZE_ID = 63 # 1GB DEFAULT_REGION_ID = 5 # Amsterdam 2 From 2f3cddc721865bc9afb0a25a3f4911f8c0f01214 Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Sun, 15 Feb 2015 18:25:31 +0100 Subject: [PATCH 6/8] Improves ssh key task --- prudentia/tasks/ssh-key.yml | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/prudentia/tasks/ssh-key.yml b/prudentia/tasks/ssh-key.yml index b986206..170690a 100644 --- a/prudentia/tasks/ssh-key.yml +++ b/prudentia/tasks/ssh-key.yml @@ -7,7 +7,7 @@ # key_name - name: SSH | Create .ssh directory - file: dest={{ssh_dir}}/.ssh state=directory mode=700 owner={{ssh_user}} group={{ssh_group}} + file: path={{ssh_dir}}/.ssh state=directory mode=700 owner={{ssh_user}} group={{ssh_group}} sudo: yes tags: ssh @@ -21,12 +21,7 @@ sudo: yes tags: ssh - - name: SSH | Touch known_hosts - command: touch {{ssh_dir}}/.ssh/known_hosts - sudo: yes - tags: ssh - - - name: SSH | Set permission known_hosts - file: path={{ssh_dir}}/.ssh/known_hosts mode=644 state=file owner={{ssh_user}} group={{ssh_group}} + - name: SSH | Touch and set permission of known_hosts + file: path={{ssh_dir}}/.ssh/known_hosts state=touch mode=644 owner={{ssh_user}} group={{ssh_group}} sudo: yes tags: ssh From 90d1be072b83cbe6d9274d176ef75869464f2f43 Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Sun, 15 Feb 2015 19:00:32 +0100 Subject: [PATCH 7/8] Improves postgresql and sbt tasks, making them accept the version to install as parameter. Avoids unnecessary postgresql apt source file. --- prudentia/files/postgres/apt-source | 1 - .../{postgres_9.3.yml => postgresql.yml} | 22 ++++++++++++------- prudentia/tasks/{sbt_0.13.yml => sbt.yml} | 15 ++++++++----- prudentia/vars/global.yml | 9 ++++++++ 4 files changed, 32 insertions(+), 15 deletions(-) delete mode 100644 prudentia/files/postgres/apt-source rename prudentia/tasks/{postgres_9.3.yml => postgresql.yml} (59%) rename prudentia/tasks/{sbt_0.13.yml => sbt.yml} (68%) diff --git a/prudentia/files/postgres/apt-source b/prudentia/files/postgres/apt-source deleted file mode 100644 index 994385f..0000000 --- a/prudentia/files/postgres/apt-source +++ /dev/null @@ -1 +0,0 @@ -deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main \ No newline at end of file diff --git a/prudentia/tasks/postgres_9.3.yml b/prudentia/tasks/postgresql.yml similarity index 59% rename from prudentia/tasks/postgres_9.3.yml rename to prudentia/tasks/postgresql.yml index 8b35075..f39a4ef 100644 --- a/prudentia/tasks/postgres_9.3.yml +++ b/prudentia/tasks/postgresql.yml @@ -1,6 +1,10 @@ --- # Parameters: # prudentia_dir (provided) + # postgresql_apt_key_id (provided) + # postgresql_apt_key_url (provided) + # postgresql_apt_repository (provided) + # postgresql_version (provided) - name: PostgreSQL | Check if is installed command: test -x /usr/bin/psql @@ -9,27 +13,29 @@ ignore_errors: yes tags: psql - - name: PostgreSQL | Add GPG key to apt keyring - shell: wget -q -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - + - name: PostgreSQL | Add apt repository key + apt_key: id={{postgresql_apt_key_id}} url={{postgresql_apt_key_url}} state=present when: ansible_os_family == "Debian" when: psql_present|failed - tags: psql sudo: yes + tags: psql - name: PostgreSQL | Add apt repository - copy: src={{prudentia_dir}}/files/postgres/apt-source dest=/etc/apt/sources.list.d/postgresql.list mode=644 + apt_repository: repo="{{postgresql_apt_repository}}" state=present when: ansible_os_family == "Debian" - tags: psql when: psql_present|failed sudo: yes + tags: psql - name: PostgreSQL | Install apt: update-cache=yes force=yes state=present pkg={{item}} - when: ansible_os_family == "Debian" with_items: - - postgresql-9.3 - libpq-dev - python-psycopg2 - sudo: yes + - postgresql-{{postgresql_version}} + - postgresql-client-{{postgresql_version}} + - postgresql-contrib-{{postgresql_version}} + when: ansible_os_family == "Debian" when: psql_present|failed + sudo: yes tags: psql diff --git a/prudentia/tasks/sbt_0.13.yml b/prudentia/tasks/sbt.yml similarity index 68% rename from prudentia/tasks/sbt_0.13.yml rename to prudentia/tasks/sbt.yml index 3933a97..5f57c92 100644 --- a/prudentia/tasks/sbt_0.13.yml +++ b/prudentia/tasks/sbt.yml @@ -1,6 +1,9 @@ --- # Parameters: # prudentia_dir (provided) + # sbt_base_url (provided) + # sbt_version (provided) + # sbt_artifact (provided) - include: "{{prudentia_dir}}/tasks/java7.yml" tags: sbt @@ -12,20 +15,20 @@ register: sbt_present tags: sbt - - name: SBT | Download 0.13.5 - get_url: url=http://scalasbt.artifactoryonline.com/scalasbt/sbt-native-packages/org/scala-sbt/sbt/0.13.5/sbt.deb dest=/opt/sbt.0.13.5.deb + - name: SBT | Download + get_url: url={{sbt_base_url}}/{{sbt_artifact}} dest=/opt/{{sbt_artifact}} when: ansible_os_family == "Debian" and sbt_present|failed - tags: sbt sudo: yes + tags: sbt - name: SBT | Install - command: dpkg -i /opt/sbt.0.13.5.deb + command: dpkg -i /opt/{{sbt_artifact}} when: ansible_os_family == "Debian" and sbt_present|failed - tags: sbt sudo: yes + tags: sbt - name: SBT | Remove installer - file: path=/opt/sbt.0.13.5.deb state=absent + file: path=/opt/{{sbt_artifact}} state=absent when: ansible_os_family == "Debian" and sbt_present|failed tags: sbt sudo: yes diff --git a/prudentia/vars/global.yml b/prudentia/vars/global.yml index ea7ff5d..62ae58d 100644 --- a/prudentia/vars/global.yml +++ b/prudentia/vars/global.yml @@ -1,6 +1,15 @@ --- testing: "{{ ansible_user_id == 'vagrant' }}" + sbt_base_url: https://dl.bintray.com/sbt/debian + sbt_version: 0.13.7 + sbt_artifact: sbt-{{sbt_version}}.deb + nvm_version: v0.22.0 node_version: v0.10.35 node_path: '{{ansible_env.HOME}}/.nvm/{{node_version}}' + + postgresql_apt_key_id: ACCC4CF8 + postgresql_apt_key_url: "https://www.postgresql.org/media/keys/{{postgresql_apt_key_id}}.asc" + postgresql_apt_repository: 'deb http://apt.postgresql.org/pub/repos/apt/ {{ansible_distribution_release}}-pgdg main' + postgresql_version: 9.4 From ec1148175c2f70fb25d19a12d25e5f4c03302b0d Mon Sep 17 00:00:00 2001 From: Tiziano Perrucci Date: Sun, 15 Feb 2015 19:17:29 +0100 Subject: [PATCH 8/8] Bumps version to 0.8.1 --- prudentia/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prudentia/__init__.py b/prudentia/__init__.py index 36477ec..1769c4f 100644 --- a/prudentia/__init__.py +++ b/prudentia/__init__.py @@ -1,4 +1,4 @@ -__version__ = '0.8' +__version__ = '0.8.1' __author__ = 'Tiziano Perrucci'