2023-11-11 00:25:45 +00:00
|
|
|
"""GitMon"""
|
2023-11-11 03:46:54 +00:00
|
|
|
import time
|
|
|
|
from loguru import logger
|
2023-11-11 00:25:45 +00:00
|
|
|
from gitmon.api import GitHubApi
|
2023-11-11 03:33:08 +00:00
|
|
|
from gitmon.logger import setup_logger
|
2023-11-11 00:25:45 +00:00
|
|
|
|
2023-11-11 04:43:25 +00:00
|
|
|
try:
|
|
|
|
from config import token
|
|
|
|
except ModuleNotFoundError:
|
|
|
|
token = None
|
2023-11-11 02:33:57 +00:00
|
|
|
|
2023-11-11 00:25:45 +00:00
|
|
|
|
2023-11-11 03:46:54 +00:00
|
|
|
def log_event(event):
|
2023-11-11 01:26:21 +00:00
|
|
|
event_type = event.get('type')
|
|
|
|
repo = event.get('repo')
|
|
|
|
actor = event.get('actor')
|
|
|
|
|
2023-11-11 04:37:22 +00:00
|
|
|
if event_type == 'DeleteEvent':
|
2023-11-11 04:39:06 +00:00
|
|
|
logger.error(f'{event_type}:\thttps://github.com/{repo["name"]}, {actor["login"]}')
|
2023-11-11 04:37:22 +00:00
|
|
|
else:
|
2023-11-11 04:39:06 +00:00
|
|
|
logger.info(f'{event_type}:\thttps://github.com/{repo["name"]}, {actor["login"]}')
|
2023-11-11 01:26:21 +00:00
|
|
|
|
|
|
|
|
2023-11-11 00:25:45 +00:00
|
|
|
def main():
|
|
|
|
"""Main entry point."""
|
2023-11-11 03:33:08 +00:00
|
|
|
setup_logger()
|
2023-11-11 02:33:57 +00:00
|
|
|
api = GitHubApi(token)
|
2023-11-11 00:25:45 +00:00
|
|
|
|
2023-11-11 03:46:54 +00:00
|
|
|
while True:
|
|
|
|
events = api.get_events()
|
|
|
|
for event in events:
|
2023-11-11 04:20:43 +00:00
|
|
|
if event['type'] in ['CreateEvent', 'DeleteEvent']:
|
2023-11-11 03:46:54 +00:00
|
|
|
log_event(event)
|
|
|
|
|
2023-11-11 04:37:22 +00:00
|
|
|
time.sleep(5)
|
2023-11-11 00:25:45 +00:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
main()
|