Thu, 15 Jun 2017 20:52:21 -0400
edit
17 | 1 | --- |
2 | # Create/update my user, don't clobber my extra groups. | |
3 | - name: User setup | |
4 | user: | |
57 | 5 | name: "{{user_name}}" |
6 | comment: "{{user_comment}}" | |
17 | 7 | shell: /bin/zsh |
8 | groups: sudo | |
9 | append: true | |
10 | register: user | |
11 | tags: user | |
12 | ||
29 | 13 | - name: "ssh : Pubkey for user" |
17 | 14 | authorized_key: |
15 | manage_dir: true | |
57 | 16 | user: "{{user_name}}" |
17 | 17 | key: "{{item}}" |
18 | with_file: | |
57 | 19 | - public_keys/{{user_name}} |
17 | 20 | tags: user, ssh |
21 | ||
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
22 | - name: Clone dotfiles |
69 | 23 | become: true |
24 | become_user: "{{user_name}}" | |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
25 | shell: > |
54
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
26 | hg clone -U {{dotfiles_default | quote}} _dotfiles_ |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
27 | && mv _dotfiles_/.hg . |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
28 | && rmdir _dotfiles_ |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
29 | && hg -R ~ update -C master |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
30 | args: |
69 | 31 | chdir: "{{user.home}}" |
32 | creates: "{{user.home}}/.hg" | |
63 | 33 | tags: user, dotfiles |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
34 | |
54
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
35 | - name: Assert hg sources |
69 | 36 | become: true |
37 | become_user: "{{user_name}}" | |
54
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
38 | ini_file: |
69 | 39 | dest: "{{user.home}}/.hg/hgrc" |
54
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
40 | section: paths |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
41 | option: "{{item.name}}" |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
42 | value: "{{item.url}}" |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
43 | mode: 0640 |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
44 | create: no |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
45 | with_items: |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
46 | - {name: 'default', url: "{{dotfiles_default}}"} |
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
47 | - {name: 'default-push', url: "{{dotfiles_default_push}}"} |
63 | 48 | tags: user, dotfiles |
54
2a04e6d7bfcc
rig to pull public dotfiles
Meredith Howard <mhoward@roomag.org>
parents:
50
diff
changeset
|
49 | |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
50 | - name: Update dotfiles |
69 | 51 | become: true |
52 | become_user: "{{user_name}}" | |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
53 | command: hg pull -u |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
54 | args: |
69 | 55 | chdir: "{{user.home}}" |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
56 | register: update_dotfiles |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
57 | changed_when: update_dotfiles.stdout | match("added|updated") |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
58 | failed_when: update_dotfiles.rc > 1 |
63 | 59 | tags: user, dotfiles |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
60 | |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
61 | - name: Run bin/homedir-setup |
69 | 62 | become: true |
63 | become_user: "{{user_name}}" | |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
64 | shell: bin/homedir-setup |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
65 | args: |
69 | 66 | chdir: "{{user.home}}" |
50
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
67 | register: homedir_setup |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
68 | changed_when: homedir_setup.stdout | match("Updating|Cloning") |
8be666ca059e
Move dotfiles setup back into user role
Meredith Howard <mhoward@roomag.org>
parents:
36
diff
changeset
|
69 | failed_when: homedir_setup.rc != 0 |
63 | 70 | tags: user, dotfiles |