commit 343af3228d29b1a73bf618c38e450a6a33e2b382 Author: bertieb <7524620+bertiebaggio@users.noreply.github.com> Date: Thu Jul 16 16:54:22 2020 +0100 Example used to setup gitea at git.bertieb.org Only db password in vars/main.yml needs to be changed, works as-is diff --git a/createdb/handlers/main.yml b/createdb/handlers/main.yml new file mode 100644 index 0000000..fd00ca2 --- /dev/null +++ b/createdb/handlers/main.yml @@ -0,0 +1,4 @@ +--- + +- name: restart postgresql + service: name=postgresql state=restarted diff --git a/createdb/tasks/main.yml b/createdb/tasks/main.yml new file mode 100644 index 0000000..2282f81 --- /dev/null +++ b/createdb/tasks/main.yml @@ -0,0 +1,47 @@ +--- +- name: Ensure bash, OpenSSl, and libssl are the latest versions + apt: + pkg: + - bash + - openssl + - libssl-dev + - libssl-doc + state: latest + tags: packages + +- name: Install PostgreSQL + apt: + pkg: + - postgresql + - postgresql-contrib + - libpq-dev + - python3-psycopg2 + state: present + tags: packages + +- name: Ensure the PostgreSQL service is running + service: name=postgresql state=started enabled=yes + +- name: Ensure database is created + become: yes + become_user: postgres + postgresql_db: name={{ db_name }} + encoding='UTF-8' + template='template0' + state=present + +- name: Ensure user has access to the database + become: yes + become_user: postgres + postgresql_user: db={{ db_name }} + name={{ db_user }} + password={{ db_password }} + priv=ALL + state=present + +- name: Ensure user does not have unnecessary privileges + become: yes + become_user: postgres + postgresql_user: name={{ db_user }} + role_attr_flags=NOSUPERUSER,NOCREATEDB + state=present diff --git a/setup.yml b/setup.yml new file mode 100644 index 0000000..179988c --- /dev/null +++ b/setup.yml @@ -0,0 +1,9 @@ +--- +- name: Create a PostgreSQL DB server + hosts: all + remote_user: postgres + vars_files: + - vars/main.yml + + roles: + - createdb diff --git a/vars/main.yml b/vars/main.yml new file mode 100644 index 0000000..d2e4bab --- /dev/null +++ b/vars/main.yml @@ -0,0 +1,4 @@ +--- +db_user: postgres +db_name: gitea +db_password: CHANGEME