| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- ---
- - name: Create shadowsocks service user
- ansible.builtin.user:
- name: "{{ ss_user }}"
- system: yes
- shell: /usr/sbin/nologin
- create_home: no
- - name: Create shadowsocks config directory
- ansible.builtin.file:
- path: "{{ ss_config_path | dirname }}"
- state: directory
- owner: "{{ ss_user }}"
- group: "{{ ss_user }}"
- mode: "0750"
- - name: Download shadowsocks-rust binary
- ansible.builtin.get_url:
- url: "https://github.com/shadowsocks/shadowsocks-rust/releases/download/v{{ ss_version }}/shadowsocks-v{{ ss_version }}.x86_64-unknown-linux-gnu.tar.xz"
- dest: /tmp/shadowsocks.tar.xz
- mode: "0644"
- - name: Extract shadowsocks-rust binary
- ansible.builtin.unarchive:
- src: /tmp/shadowsocks.tar.xz
- dest: /tmp/
- remote_src: yes
- - name: Install ssserver binary
- ansible.builtin.copy:
- src: /tmp/ssserver
- dest: "{{ ss_bin_path }}"
- remote_src: yes
- owner: root
- group: root
- mode: "0755"
- notify: restart shadowsocks
- - name: Clean up downloaded archive
- ansible.builtin.file:
- path: "{{ item }}"
- state: absent
- loop:
- - /tmp/shadowsocks.tar.xz
- - /tmp/ssserver
- - /tmp/sslocal
- - /tmp/ssurl
- - /tmp/ssmanager
- - /tmp/ssservice
- - name: Deploy shadowsocks configuration
- ansible.builtin.template:
- src: ss-config.json.j2
- dest: "{{ ss_config_path }}"
- owner: "{{ ss_user }}"
- group: "{{ ss_user }}"
- mode: "0640"
- notify: restart shadowsocks
- - name: Deploy shadowsocks systemd unit
- ansible.builtin.template:
- src: shadowsocks.service.j2
- dest: /etc/systemd/system/shadowsocks.service
- owner: root
- group: root
- mode: "0644"
- notify: restart shadowsocks
- - name: Enable and start shadowsocks service
- ansible.builtin.systemd:
- name: shadowsocks
- daemon_reload: yes
- enabled: yes
- state: started
|