serverwatcher 5.14.1__tar.gz → 5.16__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. {serverwatcher-5.14.1/src/serverwatcher.egg-info → serverwatcher-5.16}/PKG-INFO +1 -1
  2. {serverwatcher-5.14.1 → serverwatcher-5.16}/pyproject.toml +1 -1
  3. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/configclasses/config.py +2 -0
  4. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/configclasses/messages.py +3 -0
  5. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/configclasses/watcher.py +4 -0
  6. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/defaultconfigs/messages.yaml +1 -0
  7. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/watcher.py +18 -27
  8. {serverwatcher-5.14.1 → serverwatcher-5.16/src/serverwatcher.egg-info}/PKG-INFO +1 -1
  9. {serverwatcher-5.14.1 → serverwatcher-5.16}/LICENSE +0 -0
  10. {serverwatcher-5.14.1 → serverwatcher-5.16}/README.md +0 -0
  11. {serverwatcher-5.14.1 → serverwatcher-5.16}/setup.cfg +0 -0
  12. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/__init__.py +0 -0
  13. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/__main__.py +0 -0
  14. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/configclasses/__init__.py +0 -0
  15. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/defaultconfigs/config.yaml +0 -0
  16. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/defaultconfigs/watcher.yaml +0 -0
  17. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher/validator.py +0 -0
  18. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher.egg-info/SOURCES.txt +0 -0
  19. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher.egg-info/dependency_links.txt +0 -0
  20. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher.egg-info/requires.txt +0 -0
  21. {serverwatcher-5.14.1 → serverwatcher-5.16}/src/serverwatcher.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: serverwatcher
3
- Version: 5.14.1
3
+ Version: 5.16
4
4
  Summary: A HungerLib-powered Minecraft server automation engine.
5
5
  Author: iFamished
6
6
  License: GPL-3.0
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
7
7
 
8
8
  [project]
9
9
  name = "serverwatcher"
10
- version = "5.14.1"
10
+ version = "5.16"
11
11
  description = "A HungerLib-powered Minecraft server automation engine."
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.14"
@@ -2,6 +2,8 @@ from hungerlib import datamap, datamap_api
2
2
 
3
3
  @datamap(syntax=datamap_api.braces, mode="config")
4
4
  class GlobalConfig:
5
+ __config_path__ = "/defaultconfigs/config.yaml"
6
+
5
7
  timezone: str = "timezone"
6
8
 
7
9
  panel_name: str = "panel.name"
@@ -2,6 +2,8 @@ from hungerlib import datamap, datamap_api
2
2
 
3
3
  @datamap(syntax=datamap_api.braces, mode="config")
4
4
  class MessagesConfig:
5
+ __config_path__ = "/defaultconfigs/messages.yaml"
6
+
5
7
  prefix: str = "prefix"
6
8
  bullet: str = "bullet"
7
9
 
@@ -26,6 +28,7 @@ class MessagesConfig:
26
28
  second_2: str = "broadcast_seconds.2"
27
29
  second_1: str = "broadcast_seconds.1"
28
30
 
31
+ startup: str = "logging.startup"
29
32
  status_check: str = "logging.status_check"
30
33
  validation_fail: str = "logging.validation_fail"
31
34
  validation_ok: str = "logging.validation_ok"
@@ -2,6 +2,8 @@ from hungerlib import datamap, datamap_api
2
2
 
3
3
  @datamap(syntax=datamap_api.braces, mode="config")
4
4
  class WatcherConfig:
5
+ __config_path__ = "/defaultconfigs/watcher.yaml"
6
+
5
7
  watch_interval: int = "watch_interval"
6
8
  schedule_control: bool = "schedule_control.enabled"
7
9
  restart_soon_id: int = "schedule_control.restart_soon_id"
@@ -26,3 +28,5 @@ class WatcherConfig:
26
28
  restart_wait_seconds: int = "restart.wait_seconds"
27
29
  restart_timeout: int = "restart.online_timeout"
28
30
  restart_online_interval: int = "restart.online_interval"
31
+
32
+ mapit("<green>[%hh%:%mm%]: ", [ASCII_COLOR_MAP])
@@ -7,6 +7,7 @@ broadcast_minutes: {}
7
7
  broadcast_seconds: {}
8
8
 
9
9
  logging:
10
+ startup: 'ServerWatcher is running!'
10
11
  status_check: 'Checking server status...'
11
12
  validation_fail: 'Validation FAILED.'
12
13
  validation_ok: 'All validation checks succeeded.'
@@ -12,23 +12,9 @@ from serverwatcher.configclasses.watcher import WatcherConfig
12
12
 
13
13
  class ServerWatcher:
14
14
  def __init__(self):
15
- self.config = loadConfig(
16
- "config/config.yaml",
17
- "/defaultconfigs/config.yaml",
18
- GlobalConfig
19
- )
20
-
21
- self.messages = loadConfig(
22
- "config/messages.yaml",
23
- "/defaultconfigs/messages.yaml",
24
- MessagesConfig
25
- )
26
-
27
- self.watcherconfig = loadConfig(
28
- "config/watcher.yaml",
29
- "/defaultconfigs/watcher.yaml",
30
- WatcherConfig
31
- )
15
+ self.config = loadConfig(GlobalConfig)
16
+ self.messages = loadConfig(MessagesConfig)
17
+ self.watcherconfig = loadConfig(WatcherConfig)
32
18
 
33
19
  datamap_api.setGlobalMaps(
34
20
  utils.ASCII_COLOR_MAP,
@@ -67,10 +53,10 @@ class ServerWatcher:
67
53
  Servers=[self.server],
68
54
  log_path=self.config.log_path,
69
55
 
70
- origin_maps = [utils.ASCII_COLOR_MAP],
71
- destination_maps = [utils.ASCII_COLOR_MAP],
72
- broadcast_maps = [utils.MC_COLOR_MAP],
73
- file_maps = [utils.STRIP_COLOR_MAP],
56
+ origin_maps = [utils.ASCII_COLOR_MAP, self.config, self.messages, self.watcherconfig],
57
+ destination_maps = [utils.ASCII_COLOR_MAP, self.config, self.messages, self.watcherconfig],
58
+ broadcast_maps = [utils.MC_COLOR_MAP, self.config, self.messages, self.watcherconfig],
59
+ file_maps = [utils.STRIP_COLOR_MAP, self.config, self.messages, self.watcherconfig],
74
60
 
75
61
  info_prefix=self.config.info_prefix,
76
62
  warn_prefix=self.config.warn_prefix,
@@ -115,19 +101,19 @@ class ServerWatcher:
115
101
 
116
102
  minute_callbacks = {
117
103
  int(k.split("_")[1]): (
118
- lambda msg=getattr(self.messages, k):
119
- self.router.broadcast(msg)
104
+ lambda raw=self.messages.as_map()[k]:
105
+ self.router.broadcast(mapit(raw))
120
106
  )
121
- for k in vars(self.messages)
107
+ for k in self.messages.as_map()
122
108
  if k.startswith("minute_")
123
109
  }
124
110
 
125
111
  second_callbacks = {
126
112
  int(k.split("_")[1]): (
127
- lambda msg=getattr(self.messages, k):
128
- self.router.broadcast(msg)
113
+ lambda raw=self.messages.as_map()[k]:
114
+ self.router.broadcast(mapit(raw))
129
115
  )
130
- for k in vars(self.messages)
116
+ for k in self.messages.as_map()
131
117
  if k.startswith("second_")
132
118
  }
133
119
 
@@ -138,7 +124,12 @@ class ServerWatcher:
138
124
  )
139
125
 
140
126
  def evaluate(self):
127
+ # Lets Pterodactyl know the server is online, then clears terminal and uses user-defined startup key
141
128
  self.router.info("ServerWatcher is running!")
129
+ utils.clearTerminal()
130
+
131
+ # Configurable start message
132
+ self.router.info(self.messages.startup)
142
133
 
143
134
  if not utils.validateAll(self.panel, self.server):
144
135
  self.router.error(self.messages.validation_fail)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: serverwatcher
3
- Version: 5.14.1
3
+ Version: 5.16
4
4
  Summary: A HungerLib-powered Minecraft server automation engine.
5
5
  Author: iFamished
6
6
  License: GPL-3.0
File without changes
File without changes
File without changes