45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
import os
|
|
import sys
|
|
import requests
|
|
import git
|
|
import shutil
|
|
|
|
current_version = []
|
|
new_version = []
|
|
|
|
def get_latest_release(owner, repo):
|
|
url = f"http://gitlab.stines.de/api/v1/repos/sebastian.serfling/Agents/releases/latest"
|
|
response = requests.get(url)
|
|
response.raise_for_status()
|
|
release_info = response.json()
|
|
return release_info['name']
|
|
|
|
new_version = get_latest_release("","")
|
|
current_version = open("version", "r").read()
|
|
print(current_version)
|
|
|
|
if current_version != new_version:
|
|
try:
|
|
git.Repo.clone_from("http://172.17.1.251/sebastian.serfling/Agents.git",get_latest_release("",""))
|
|
except:
|
|
next
|
|
if os.path.isdir(f"{new_version}"):
|
|
try:
|
|
shutil.move("latest", f"{current_version}")
|
|
except:
|
|
print("folder not Found")
|
|
os.rename(f"{new_version}", "latest")
|
|
|
|
|
|
|
|
|
|
|
|
# Get Current Version of Files -> Verionfile txt on /opt/agents/version.txt
|
|
|
|
# Check Verison on Github by Curl http://172.17.1.251/sebastian.serfling/Agents/src/branch/main/version
|
|
|
|
# IF Version same -> close
|
|
|
|
# IF not same -> Update, restart service
|
|
|