From e33b9e4bed0d49c42a9c78f47a869699e23e9d32 Mon Sep 17 00:00:00 2001 From: Ben Dixon Date: Sun, 22 Mar 2020 11:35:40 +0000 Subject: [PATCH] adds: role for dnsmasq --- ansible_osx.yml | 10 ++++--- roles/dnsmasq/tasks/main.yml | 32 +++++++++++++++++++++++ roles/dnsmasq/templates/dnsmasq.conf.j2 | 2 ++ roles/dnsmasq/templates/local-resolver.j2 | 1 + 4 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 roles/dnsmasq/tasks/main.yml create mode 100644 roles/dnsmasq/templates/dnsmasq.conf.j2 create mode 100644 roles/dnsmasq/templates/local-resolver.j2 diff --git a/ansible_osx.yml b/ansible_osx.yml index 4ed9237..288b55a 100644 --- a/ansible_osx.yml +++ b/ansible_osx.yml @@ -4,6 +4,10 @@ - name: Install homebrew shell: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" + - name: Setup dnsmasq + include_role: dnsmasq + become: true + - name: 'add custom homebrew repos' homebrew_tap: name: [ @@ -13,7 +17,6 @@ adoptopenjdk/openjdk, weaveworks/tap, fishtown-analytics/dbt - ] - name: Install core packages via brew casks @@ -60,6 +63,7 @@ 'coreutils', 'curl', 'dbt', + 'dnsmasq', 'erlang', 'fzf', 'gnu-time', @@ -81,7 +85,7 @@ 'rcm', 'readline', 'redis', - 'sqllite3', + 'sqlite3', 'sshfs', 'tmux', 'terraform', @@ -256,4 +260,4 @@ src: templates/vscode-settings.json.j2 dest: /Users/{{ lookup('env', 'USER') }}/Library/Application Support/Code/User/settings.json owner: "{{ lookup('env', 'USER') }}" - force: no \ No newline at end of file + force: no diff --git a/roles/dnsmasq/tasks/main.yml b/roles/dnsmasq/tasks/main.yml new file mode 100644 index 0000000..9b9ab6d --- /dev/null +++ b/roles/dnsmasq/tasks/main.yml @@ -0,0 +1,32 @@ +- name: "Install homebrew packages" + homebrew: + name: [ dnsmasq ] + state: present + update_homebrew: true + +- name: "Get config directory" + shell: + cmd: echo "$(brew --prefix)/etc/" + register: config_directory + +- name: Create config directory + file: + path: "{{ config_directory.stdout | trim }}" + state: directory + +- name: Create config + template: + src: dnsmasq.conf.j2 + dest: "{{ config_directory.stdout | trim }}/dnsmasq.conf" + +- name: Create resolvers directory + file: + path: /etc/resolver/ + state: directory + become: true + +- name: Create resolver + template: + src: local-resolver.j2 + dest: /etc/resolver/localhost + become: true diff --git a/roles/dnsmasq/templates/dnsmasq.conf.j2 b/roles/dnsmasq/templates/dnsmasq.conf.j2 new file mode 100644 index 0000000..e18eb4b --- /dev/null +++ b/roles/dnsmasq/templates/dnsmasq.conf.j2 @@ -0,0 +1,2 @@ +address=/.localhost/127.0.0.1 +port=53 \ No newline at end of file diff --git a/roles/dnsmasq/templates/local-resolver.j2 b/roles/dnsmasq/templates/local-resolver.j2 new file mode 100644 index 0000000..143c252 --- /dev/null +++ b/roles/dnsmasq/templates/local-resolver.j2 @@ -0,0 +1 @@ +nameserver 127.0.0.1 \ No newline at end of file