Initial commit
This commit is contained in:
58
roles/system/README.md
Normal file
58
roles/system/README.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# `flyoverhead.openwrt.system`
|
||||
|
||||
OpenWRT `system` configuration
|
||||
- configure system settings
|
||||
|
||||
## Role Variables
|
||||
|
||||
| Variable | Descritpion | Status | Type | Example |
|
||||
| :--- | :--- | :--- | :--- | :--- |
|
||||
| `system` | System settings configuration | | `dictionary` | |
|
||||
|  `system_hostname` | Device hostname | `required` | `string` | `OpenWrt` |
|
||||
|  `system_description` | Short device description | `optional` | `string` | `OpenWrt device` |
|
||||
|  `system_klogconloglevel` | Maximum log level for kernel messages | `optional` | `integer` | `7` |
|
||||
|  `system_log_file` | Path to file to write log messages to | `optional` | `string` | `/var/log/messages` |
|
||||
|  `system_log_ip` | IP address of a remote syslog server to which the log messages should be sent | `optional` | `string` | `192.168.1.1` |
|
||||
|  `system_log_port` | Port number of a remote syslog server | `optional` | `integer` | `514` |
|
||||
|  `system_log_proto` | Protocol used for the connection with a remote syslog server | `optional` | `string` | `udp` |
|
||||
|  `system_log_remote` | Enable remote logging | `optional` | `boolean` | `1` |
|
||||
|  `system_log_size` | Size of the file based log buffer in KiB | `optional` | `integer` | `64` |
|
||||
|  `system_log_type` | Log type (`circular` or `file`) | `optional` | `string` | `circular` |
|
||||
|  `system_timezone` | POSIX.1 format system timezone | `required` | `string` | `UTC` |
|
||||
|  `system_zonename` | IANA/Olson format system timezone | `required` | `string` | `UTC` |
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Name | Description |
|
||||
| :--- | :--- |
|
||||
| `Ansible Role: openwrt` | [Ansible role by gekmihesg](https://github.com/gekmihesg/ansible-openwrt) for managing OpenWRT and derivatives |
|
||||
|
||||
## Example Playbook
|
||||
|
||||
```yaml
|
||||
- hosts: openwrt
|
||||
roles:
|
||||
- role: flyoverhead.openwrt.system
|
||||
```
|
||||
|
||||
## Example Vars
|
||||
|
||||
```yaml
|
||||
system:
|
||||
hostname: "mikrotik"
|
||||
description: "MikroTik hAP ac2"
|
||||
timezone: UTC"
|
||||
zonename: "UTC"
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
[GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
|
||||
## Author Information
|
||||
|
||||
fly0v3rH34D
|
||||
|
||||
## References
|
||||
|
||||
- https://openwrt.org/docs/guide-user/base-system/system_configuration
|
||||
15
roles/system/defaults/main.yml
Normal file
15
roles/system/defaults/main.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
# system section
|
||||
system:
|
||||
hostname: ""
|
||||
description: ""
|
||||
klogconloglevel: ""
|
||||
log_file: ""
|
||||
log_ip: ""
|
||||
log_port: ""
|
||||
log_proto: ""
|
||||
log_remote: ""
|
||||
log_size: ""
|
||||
log_type: ""
|
||||
timezone: ""
|
||||
zonename: ""
|
||||
6
roles/system/handlers/main.yml
Normal file
6
roles/system/handlers/main.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
# Reload system service
|
||||
- name: Reload system
|
||||
ansible.builtin.service:
|
||||
name: system
|
||||
state: reloaded
|
||||
12
roles/system/meta/main.yml
Normal file
12
roles/system/meta/main.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: flyoverhead
|
||||
description: Configure system settings
|
||||
license: GPL-3.0
|
||||
min_ansible_version: "2.13"
|
||||
platforms:
|
||||
- name: OpenWrt
|
||||
versions: ["22.03"]
|
||||
galaxy_tags: ["openwrt", "system"]
|
||||
dependencies:
|
||||
- role: gekmihesg.openwrt
|
||||
17
roles/system/tasks/main.yml
Normal file
17
roles/system/tasks/main.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
# Configure system section
|
||||
- name: Configure system section
|
||||
ansible.builtin.include_tasks: system.yml
|
||||
|
||||
# Apply changes and reload system service
|
||||
- name: Apply changes and reload system
|
||||
block:
|
||||
# Commit changes
|
||||
- name: Commit changes
|
||||
uci:
|
||||
command: commit
|
||||
notify: Reload system
|
||||
|
||||
# Reload system service
|
||||
- name: Reload system service
|
||||
ansible.builtin.meta: flush_handlers
|
||||
22
roles/system/tasks/system.yml
Normal file
22
roles/system/tasks/system.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
# Configure system settings
|
||||
- name: Configure system settings
|
||||
uci:
|
||||
command: "set"
|
||||
config: "system"
|
||||
section: "@system[0]"
|
||||
type: "system"
|
||||
value:
|
||||
hostname: "{{ system.hostname | default(omit) }}"
|
||||
description: "{{ system.description | default(omit) }}"
|
||||
klogconloglevel: "{{ system.klogconloglevel | default(omit) }}"
|
||||
log_file: "{{ system.log_file | default(omit) }}"
|
||||
log_hostname: "{{ system.log_hostname | default(omit) }}"
|
||||
log_ip: "{{ system.log_ip | default(omit) }}"
|
||||
log_port: "{{ system.log_port | default(omit) }}"
|
||||
log_proto: "{{ system.log_proto | default(omit) }}"
|
||||
log_remote: "{{ system.log_remote | default(omit) }}"
|
||||
log_size: "{{ system.log_size | default(omit) }}"
|
||||
log_type: "{{ system.log_type | default(omit) }}"
|
||||
timezone: "{{ system.timezone | default(omit) }}"
|
||||
zonename: "{{ system.zonename | default(omit) }}"
|
||||
Reference in New Issue
Block a user