Skip to content
This repository was archived by the owner on Jan 5, 2020. It is now read-only.

Commit a5c6731

Browse files
committed
Add mackerel role
1 parent 7370950 commit a5c6731

File tree

9 files changed

+103
-4
lines changed

9 files changed

+103
-4
lines changed

.mackerel-app-activity.json

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"ApiKey": "",
3+
"ServiceName": "Work",
4+
"MetricPrefix": "work.activity.types",
5+
"NameMapping": {
6+
"slackmacapp": "Slack"
7+
},
8+
"PostIntervalMinutes": 1
9+
}

main.yml

+12
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,15 @@
44
connection: local
55
vars_files:
66
- vars/main.yml
7+
8+
vars_prompt:
9+
- name: env
10+
prompt: private or work
11+
default: private
12+
private: no
13+
- name: mackerel_api_key
14+
prompt: Mackerel API key
15+
private: yes
716
roles:
817
- role: mac
918
tags:
@@ -41,3 +50,6 @@
4150
- role: fish
4251
tags:
4352
- fish
53+
- role: mackerel
54+
tags:
55+
- mackerel

roles/mac/vars/main.yml

-4
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ homebrew_taps:
77
- neovim/neovim
88
- go-delve/delve
99
- c-bata/kube-prompt
10-
- aereal/mackerelappactivity
11-
- mackerelio/mackerel-agent
1210

1311
homebrew_packages:
1412
- bash-completion
@@ -32,7 +30,6 @@ homebrew_packages:
3230
- kubernetes-helm
3331
- nkf
3432
- less
35-
- mackerel-agent
3633
- neovim
3734
- peco
3835
- pip-completion
@@ -62,7 +59,6 @@ homebrew_cask_packages:
6259
- google-chrome
6360
- google-cloud-sdk
6461
- inkdrop
65-
- mackerelappactivity
6662
- mplayerx
6763
- music-manager
6864
- quicklook-csv

roles/mackerel/tasks/darwin.yml

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
- name: Update homebrew
3+
homebrew:
4+
update_homebrew: yes
5+
6+
- name: Add mackerel tap
7+
homebrew_tap:
8+
tap: "{{ item }}"
9+
state: present
10+
with_items:
11+
- mackerelio/mackerel-agent
12+
- aereal/mackerelappactivity
13+
14+
- name: Install mackerel-agent
15+
homebrew:
16+
name: mackerel-agent
17+
state: latest
18+
19+
- name: Install mackerel app activity
20+
homebrew_cask:
21+
name: mackerelappactivity
22+
state: present
23+
ignore_errors: yes
24+
25+
- name: Check config file
26+
stat:
27+
path: "{{ darwin_agent_config_path }}"
28+
register: config
29+
30+
- name: Initialize config file
31+
shell: "mackerel-agent init -apikey={{ mackerel_api_key }} -conf {{ agent_config_path }}"
32+
when: (not mackerel_api_key) and (not config.stat.exists)
33+
34+
- name: copy MackerelAppActivity config file
35+
template:
36+
src: ../templates/.mackerel-app-activity.json.j2
37+
dest: "{{ ansible_user_dir }}/.mackerel-app-activity.json"
38+
when: not mackerel_api_key
39+
40+
- name: Start mackerel-agent service
41+
shell: brew services restart mackerel-agent

roles/mackerel/tasks/main.yml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
- include_tasks: darwin.yml
3+
when: ansible_os_family == "Darwin"
4+
5+
- include_tasks: ubuntu.yml
6+
when: ansible_os_family = "Debian"

roles/mackerel/tasks/ubuntu.yml

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
- name: import mackerel GPG key
3+
apt_key:
4+
url: https://mackerel.io/assets/files/GPG-KEY-mackerel
5+
state: present
6+
7+
- name: add repository 'mackerel'
8+
apt_repository:
9+
repo: deb http://apt.mackerel.io/debian/ mackerel contrib
10+
state: present
11+
update_cache: yes
12+
13+
- name: install mackerel-agent
14+
apt:
15+
name: mackerel-agent
16+
state: latest
17+
update_cache: yes
18+
19+
- name: copy config file
20+
template:
21+
src: ../templates/mackerel-agent.conf.j2
22+
dest: "{{ ubuntu_agent_config_path }}"
23+
when: not mackerel_api_key
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"ApiKey": "{{ mackerel_api_key }}",
3+
"ServiceName": "{{ env }}",
4+
"MetricPrefix": "{{ env }}.activity.types",
5+
"NameMapping": {
6+
"slackmacapp": "Slack"
7+
},
8+
"PostIntervalMinutes": 1
9+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
apikey = "{{ mackerel_api_key }}"

roles/mackerel/vars/main.yml

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
darwin_agent_config_path: /usr/local/etc/mackerel-agent.conf
2+
ubuntu_agent_config_path: /etc/mackerel-agent/mackerel-agent.conf

0 commit comments

Comments
 (0)