]> git.friedersdorff.com Git - max/saltfiles.git/blob - states/git/init.sls
Configure some moar
[max/saltfiles.git] / states / git / init.sls
1 include:
2   - git.{{ grains['os'] | lower }}
3
4
5 {% set git_confs = {
6   'color.ui': 'true',
7   'color.branch': 'always',
8   'color.status': 'always',
9   'color.interactive': 'always',
10   'color.diff': 'true',
11   'user.name': 'Maximilian Friedersdorff',
12   'user.email': 'max@friedersdorff.com',
13   'user.signingkey': 'F5E7FCB3',
14   'core.editor': 'vim',
15   'core.excludesfile': '/home/' + grains['user'] + '/.gitignore',
16   'merge.tool': 'diffuse',
17   'merge.ff': 'true',
18   'pull.rebase': 'false',
19   'push.default': 'simple',
20   'alias.lg': 'log --graph --pretty=format:\'%Cred%h%Creset %G? %ad %s %C(bold blue)<%an>%Creset %C(yellow)%d%Creset\' --date=short',
21   'alias.hist': 'log --graph --full-history --all --pretty=format:\'%Cred%h%Creset %G? %ad %s %C(bold blue)<%an>%Creset %C(yellow)%d%Creset\' --date=short',
22   'alias.struct': 'log --graph --full-history --all --pretty=format:\'%ad %s %Creset %C(yellow)%d%Creset\' --date=short --simplify-by-decoration',
23   'alias.co': 'checkout',
24   'alias.ci': 'commit',
25   'alias.st': 'status',
26   'alias.vh': 'verify-commit HEAD',
27   'alias.vc': 'verify-commit',
28   'alias.vt': 'tag -v',
29   'alias.tag': 'tag -s',
30   'alias.t': 'tag -s',
31   'alias.alias': '!req=$\'\\033[0;31m=\\033[0m\'; git config --get-regexp ^alias\. | sed -e s/^alias\.// -e "s/\ /\t$req\ /"',
32   'alias.r': 'rebase',
33   'alias.m': 'merge',
34   'alias.pa': '!git remote | xargs -L1 git push --all',
35   'sendemail.smtpserver': 'mail.friedersdorff.com',
36   'sendemail.smtpuser': 'max',
37   'sendemail.smtpencryption': 'tls',
38   'sendemail.smtpserverport': '587',
39 }
40 %}
41
42 {% for var,val in git_confs.items() %}
43 {{ var }}:
44   git.config_set:
45     - value: >-
46         {{ val }}
47     - global: True
48     - user: {{ grains['user'] }}
49 {% endfor %}
50
51 {% if grains['host'] in ["barium"] %}
52 work_email:
53   git.config_set:
54     - name: user.email
55     - value: >-
56         maximilian.friedersdorff@envsys.co.uk
57     - global: True
58     - user: {{ grains['user'] }}
59
60 work_gpg:
61   git.config_set:
62     - name: user.signingkey
63     - value: >-
64         B3030EB2
65     - global: True
66     - user: {{ grains['user'] }}
67 {% endif %}
68
69 global gitignore:
70   file.managed:
71     - name: {{ grains['homedir'] }}/.gitignore
72     - source: {{ grains['stateroot'] }}/git/files/gitignore
73     - mode: 644
74     - user: {{ grains['user'] }}
75     - group: {{ grains['user'] }}
76
77 git-prompt:
78   file.managed:
79     - name: {{ grains['homedir'] }}/.git-prompt.sh
80     - source: https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt.sh
81     - mode: 644
82     - user: {{ grains['user'] }}
83     - group: {{ grains['user'] }}
84     - skip_verify: True
85
86