Skip to content

Commit b110d30

Browse files
committed
renewal
1 parent b50b09e commit b110d30

File tree

3 files changed

+55
-267
lines changed

3 files changed

+55
-267
lines changed

README.md

Lines changed: 2 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,5 @@
11
# setup
22

3-
## preparation
4-
5-
### install homebrew
6-
7-
[link](https://brew.sh)
8-
9-
### install ansible
10-
11-
```
12-
brew install ansible
13-
```
14-
15-
### setup ssh
16-
17-
do something
18-
19-
### clone setup repository
20-
21-
```
22-
git clone [email protected]:sakihet/setup.git
23-
```
24-
25-
## setup by ansible
26-
27-
```
28-
ansible-playbook -i hosts localhost.yml -v
29-
30-
# options
31-
ansible-playbook -i hosts localhost.yml --tags "ruby"
32-
ansible-playbook -i hosts localhost.yml --tags "node"
33-
ansible-playbook -i hosts localhost.yml --skip-tags "cask"
34-
ansible-playbook -i hosts localhost.yml --tags "osx_defaults"
35-
```
36-
37-
## change default shell
38-
```
39-
sudo vim /etc/shells
40-
chsh -s /usr/local/bin/zsh
3+
```sh
4+
./setup.sh
415
```

localhost.yml

Lines changed: 37 additions & 229 deletions
Original file line numberDiff line numberDiff line change
@@ -1,234 +1,42 @@
11
- hosts: localhost
22
connection: local
33
vars:
4-
node_version: 12.18.3
5-
ruby_version: 2.7.2
64
tasks:
7-
8-
# homebrew
5+
# ansible community.general.homebrew module
96
# https://docs.ansible.com/ansible/latest/collections/community/general/homebrew_module.html
10-
11-
- name: brew update
12-
community.general.homebrew:
13-
update_homebrew: yes
14-
15-
- name: brew upgrade
16-
community.general.homebrew:
17-
upgrade_all: yes
18-
19-
- name: brew tap
20-
homebrew_tap:
21-
tap: "{{ item }}"
22-
state: present
23-
loop:
24-
- homebrew/cask
25-
- homebrew/cask-versions
26-
- homebrew/cask-drivers
27-
28-
- name: brew install
29-
community.general.homebrew:
30-
name: "{{ item }}"
31-
state: present
32-
loop:
33-
- ansible
34-
- coreutils
35-
- emacs
36-
- ghq
37-
- git
38-
- go
39-
- jq
40-
- nodenv
41-
- mas
42-
- mysql
43-
- peco
44-
- postgresql
45-
- rbenv
46-
- redis
47-
- ruby-build
48-
- tmux
49-
- tree
50-
- zsh
51-
- zsh-completions
52-
53-
# node
54-
55-
- name: check node version
56-
shell: node --version
57-
register: user_node_version
58-
ignore_errors: yes
59-
tags:
60-
- never
61-
- node
62-
63-
- name: show node version
64-
debug:
65-
var: user_node_version.stdout
66-
tags:
67-
- never
68-
- node
69-
70-
- name: install node & set global node version
71-
shell: nodenv install {{ node_version }} && nodenv global {{ node_version }}
72-
when: user_node_version.stdout is not search(node_version)
73-
tags:
74-
- never
75-
- node
76-
77-
# ruby
78-
79-
- name: check ruby version
80-
shell: ruby --version
81-
register: user_ruby_version
82-
ignore_errors: yes
83-
tags:
84-
- never
85-
- ruby
86-
87-
- name: show ruby version
88-
debug:
89-
var: user_ruby_version.stdout
90-
tags:
91-
- never
92-
- ruby
93-
94-
- name: install ruby & set global ruby version
95-
shell: rbenv install {{ ruby_version }} && rbenv global {{ ruby_version }}
96-
when: user_ruby_version.stdout is not search(ruby_version)
97-
tags:
98-
- never
99-
- ruby
100-
101-
# homebrew_cask
102-
103-
- name: brew cask install
104-
ignore_errors: yes
105-
community.general.homebrew_cask:
106-
name: "{{ item }}"
107-
state: present
108-
loop:
109-
- atom
110-
- dash
111-
- discord
112-
- docker
113-
- enpass
114-
- firefox
115-
- github
116-
- google-backup-and-sync
117-
- google-chrome
118-
- intellij-idea-ce
119-
- iterm2
120-
- kap
121-
- karabiner-elements
122-
- microsoft-edge
123-
- notion
124-
- sequel-pro
125-
- slack
126-
- spectacle
127-
- spotify
128-
- vagrant
129-
- virtualbox
130-
- visual-studio-code
131-
tags:
132-
- cask
133-
134-
- name: brew cask install games
135-
ignore_errors: yes
136-
community.general.homebrew_cask:
137-
name: "{{ item }}"
138-
state: present
139-
loop:
140-
- steam
141-
tags:
142-
- never
143-
- game
144-
145-
- name: brew cask install drivers
146-
community.general.homebrew_cask:
147-
name: "{{ item }}"
148-
state: present
149-
loop:
150-
- logitech-options
151-
tags:
152-
- cask
153-
154-
# gem
155-
156-
- name: install gem
157-
gem:
158-
name: tmuxinator
159-
state: latest
160-
tags:
161-
- never
162-
- gem
163-
164-
# npm
165-
166-
- name: install npm
167-
npm:
168-
name: '@vue/cli'
169-
state: latest
170-
global: yes
171-
tags:
172-
- never
173-
- npm
174-
175-
# osx_defaults
176-
177-
## safari
178-
179-
- name: enable debug on safari
180-
osx_defaults:
181-
domain: com.apple.Safari
182-
key: IncludeInternalDebugMenu
183-
type: bool
184-
value: true
185-
state: present
186-
tags:
187-
- osx_defaults
188-
189-
## dock
190-
191-
- name: dock orientation
192-
osx_defaults:
193-
domain: com.apple.dock
194-
key: orientation
195-
type: string
196-
value: left
197-
tags:
198-
- osx_defaults
199-
200-
- name: hide dock
201-
osx_defaults:
202-
domain: com.apple.dock
203-
key: autohide
204-
type: bool
205-
value: true
206-
tags:
207-
- osx_defaults
208-
209-
## finder
210-
211-
- name: finder status bar
212-
osx_defaults:
213-
domain: com.apple.finder
214-
key: ShowStatusBar
215-
type: bool
216-
value: true
217-
tags:
218-
- osx_defaults
219-
220-
- name: finder path bar
221-
osx_defaults:
222-
domain: com.apple.finder
223-
key: ShowPathbar
224-
type: bool
225-
value: true
226-
tags:
227-
- osx_defaults
228-
229-
# misc
230-
231-
- name: clone dotfiles
232-
git:
233-
repo: [email protected]:sakihet/dotfiles.git
234-
dest: ~/src/github.com/sakihet/dotfiles
7+
- name: brew update
8+
community.general.homebrew:
9+
update_homebrew: yes
10+
- name: brew upgrade
11+
community.general.homebrew:
12+
upgrade_all: yes
13+
- name: brew install
14+
community.general.homebrew:
15+
name: "{{ item }}"
16+
state: present
17+
loop:
18+
- emacs
19+
- fzf
20+
- git
21+
- tmux
22+
- asdf
23+
- mas
24+
- tree
25+
- gh
26+
- ghq
27+
- visual-studio-code
28+
- visual-studio-code@insiders
29+
- google-chrome
30+
- firefox
31+
- spotify
32+
- slack
33+
- docker
34+
- karabiner-elements
35+
- name: make .ssh dir
36+
ansible.builtin.file:
37+
path: ~/.ssh
38+
state: directory
39+
- name: generate ssh keys
40+
community.crypto.openssh_keypair:
41+
path: ~/.ssh/id_ed25519
42+
type: ed25519

setup.sh

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
if command -v brew >/dev/null 2>&1; then
2+
echo "brew found"
3+
else
4+
echo "install homebrew"
5+
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
6+
fi
7+
8+
if command -v ansible >/dev/null 2>&1; then
9+
echo "ansible found"
10+
else
11+
echo "install ansible"
12+
brew install ansible
13+
fi
14+
15+
echo "run ansible"
16+
ansible-playbook -i hosts localhost.yml -v

0 commit comments

Comments
 (0)