175 lines
4.6 KiB
YAML
Raw Normal View History

---
# Nanominer from nanopool.org
# Good documentation that might help with how to do variables.
# https://docs.ansible.com/ansible/latest/user_guide/playbooks_tests.html
## Installation ##
2021-02-15 18:23:03 -06:00
- name: Miner | Software | Nanominer | Installation | Create Home
shell: "mkdir -p {{ nanominer_home }}"
become_user: mfn
2021-02-15 18:23:03 -06:00
- name: Miner | Software | Nanominer | Installation | Download Tarball
2021-02-15 18:11:48 -06:00
shell: "scp {{ file_server }}:{{ nanominer_tar_remote }} {{ nanominer_tar_local }}; chown mfn {{ nanominer_tar_local }}"
2021-02-15 18:23:03 -06:00
- name: Miner | Software | Nanominer | Installation | Extract Tarball
shell: "tar -xvf {{ nanominer_tar_local }}"
args:
chdir: "{{ nanominer_home }}"
become_user: mfn
## Configuration ##
# Delete Old Config #
2021-02-15 18:23:03 -06:00
- name: Miner | Software | Nanominer | Configuration | Reset
shell: "mv {{ nanominer_config }} ~/TRASH/"
2021-02-15 18:03:09 -06:00
ignore_errors: yes
# CPU #
- name: Miner | Software | Nanominer | Configuration | CPU | Header Info
blockinfile:
path: "{{ nanominer_config }}"
block: |
[{{ item.algorithm }}]
wallet = {{ item.wallet }}
watchdog = true
rigName = {{ ansible_hostname }}
logpath = {{ nanominer_logs }}
webPassword = {{ ansible_hostname }}
useSSL = true
marker: ';{mark} MANAGED BY ANSIBLE - CPU Headers'
marker_begin: ';;;;;;;;;;;; BEGIN'
marker_end: ' END'
state: "{{ item.state }}"
create: yes
loop:
- { "algorithm": "RandomX", "wallet": '{{ wallet_xmr }}', "state": "{{ (nanominer_cpu == 'xmr') | ternary('present', 'absent') }}"}
become_user: mfn
when: nanominer_cpu is defined
- name: Miner | Software | Nanominer | Configuration | CPU | Add Pools
lineinfile:
path: "{{ nanominer_config }}"
line: "pool{{item.priority}} = {{ item.name }}"
state: present
2021-02-15 18:23:03 -06:00
create: no
loop: "{{ cpu_pool }}"
become_user: mfn
when: nanominer_cpu is defined
- name: Miner | Software | Nanominer | Configuration | CPU | End Section
lineinfile:
path: "{{ nanominer_config }}"
line: ";;;;;;;;;;;;; END CPU"
state: present
create: no
become_user: mfn
when: nanominer_cpu is defined
2021-02-15 18:23:03 -06:00
# Add Spacing #
- name: Miner | Software | Nanominer | Configuration | Spacing
blockinfile:
path: "{{ nanominer_config }}"
block: |
;
;
;
2021-02-15 18:23:03 -06:00
marker: ';'
2021-02-15 18:25:24 -06:00
state: present
2021-02-15 18:23:03 -06:00
create: no
become_user: mfn
when: nanominer_config is file
# GPU #
- name: Miner | Software | Nanominer | Configuration | GPU | Header Info
blockinfile:
path: "{{ nanominer_config }}"
block: |
[{{ item.algorithm }}]
wallet = {{ item.wallet }}
watchdog = true
rigName = {{ ansible_hostname }}
logpath = {{ nanominer_logs }}
webPassword = {{ ansible_hostname }}
devices = {{ nanominer_gpus }}
useSSL = true
marker: ';{mark} MANAGED BY ANSIBLE - GPU Headers'
marker_begin: ';;;;;;;;;;;; BEGIN'
marker_end: ' END'
state: "{{ item.state }}"
create: yes
loop:
- { "algorithm": "Ethash", "wallet": '{{ wallet_eth }}', "state": "{{ (nanominer_gpu == 'eth') | ternary('present', 'absent') }}"}
become_user: mfn
when: nanominer_gpu is defined
- name: Miner | Software | Nanominer | Configuration | GPU | Add Pools
lineinfile:
path: "{{ nanominer_config }}"
line: "pool{{item.priority}} = {{ item.name }}"
state: present
2021-02-15 18:23:03 -06:00
create: no
loop: "{{ gpu_pool }}"
become_user: mfn
when: nanominer_gpu is defined
- name: Miner | Software | Nanominer | Configuration | GPU | End Section
lineinfile:
path: "{{ nanominer_config }}"
line: ";;;;;;;;;;;;; END GPU"
state: present
create: no
become_user: mfn
when: nanominer_gpu is defined
## Executable ##
- name: Miner | Software | Nanominer | Executable | Reset
shell: "mv {{ nanominer_script }} ~/TRASH/"
ignore_errors: yes
2021-02-15 18:23:03 -06:00
- name: Miner | Software | Nanominer | Executable | Create
blockinfile:
path: "{{ nanominer_script }}"
block: |
# 2021-02-15 - Automate nanominer script creation.
date
whoami
pwd
{{ check_alive_start }}{{ nanominer_script }}{{ check_alive_end }} {
time {{ nanominer_exec }} {{ nanominer_config }}
}
marker: '{mark}'
2021-02-15 19:31:28 -06:00
marker_begin: "#!{{ bash_exec.stdout }} -x"
marker_end: "exit 0"
state: present
create: yes
become_user: mfn
## Permissions ##
2021-02-15 18:23:03 -06:00
- name: Miner | Software | Nanominer | Permissions
shell: "chmod -R 755 {{ user_mfn.home }}/nanominer*"
become_user: mfn
## Reload ##
- name: Miner | Software | Nanominer | Reload
shell: "killall {{ nanominer_script }}; killall {{ nanominer_exec }}; killall nanominer"
become_user: mfn
ignore_errors: yes