github.com/deemoprobe/k8s-first-commit@v0.0.0-20230430165612-a541f1982be3/src/saltbase/salt/kube-proxy/init.sls (about)

     1  {% set root = '/var/src/kube-proxy' %}
     2  {% set package = 'github.com/GoogleCloudPlatform/kubernetes' %}
     3  {% set package_dir = root + '/src/' + package %}
     4  
     5  {{ package_dir }}:
     6    file.recurse:
     7      - source: salt://kube-proxy/go
     8      - user: root
     9      - group: staff
    10      - dir_mode: 775
    11      - file_mode: 664
    12      - makedirs: True
    13      - recurse:
    14        - user
    15        - group
    16        - mode
    17  
    18  third-party-go:
    19    file.recurse:
    20      - name: {{ root }}/src
    21      - source: salt://third-party/go/src
    22      - user: root
    23      - group: staff
    24      - dir_mode: 775
    25      - file_mode: 664
    26      - makedirs: True
    27      - recurse:
    28        - user
    29        - group
    30        - mode
    31  
    32  kube-proxy-build:
    33    cmd.wait:
    34      - cwd: {{ root }}
    35      - names:
    36        - go build {{ package }}/cmd/proxy
    37      - env:
    38        - PATH: {{ grains['path'] }}:/usr/local/bin
    39        - GOPATH: {{ root }}
    40      - watch:
    41        - file: {{ package_dir }}
    42  
    43  /usr/local/bin/kube-proxy:
    44    file.symlink:
    45      - target: {{ root }}/proxy
    46      - watch:
    47        - cmd: kube-proxy-build
    48  
    49  /etc/init.d/kube-proxy:
    50    file.managed:
    51      - source: salt://kube-proxy/initd
    52      - user: root
    53      - group: root
    54      - mode: 755
    55  
    56  /etc/default/kube-proxy:
    57    file.managed:
    58      - source: salt://kube-proxy/default
    59      - template: jinja
    60      - user: root
    61      - group: root
    62      - mode: 644
    63  
    64  kube-proxy:
    65    group.present:
    66      - system: True
    67    user.present:
    68      - system: True
    69      - gid_from_name: True
    70      - shell: /sbin/nologin
    71      - home: /var/kube-proxy
    72      - require:
    73        - group: kube-proxy
    74    service.running:
    75      - enable: True
    76      - watch:
    77        - cmd: kube-proxy-build
    78        - file: /etc/default/kube-proxy
    79        - file: /etc/init.d/kube-proxy