1
0
mirror of https://github.com/CMiksche/gitea-auto-update synced 2025-12-10 16:07:23 +01:00

8 Commits

Author SHA1 Message Date
Christoph Miksche
8b30f0b9d5 feat: add timeout
Add a timeout for the requests.
2022-09-04 16:07:41 +02:00
Christoph Daniel Miksche
6f85b5b0a3 docs: add badges
Add badges for license and twitter
2022-09-04 15:59:28 +02:00
Christoph Daniel Miksche
50586a33a3 docs: add xz as dependency
Add the missing dependency `xz`
2022-06-17 13:56:47 +02:00
Christoph Daniel Miksche
576f7454c1 Merge pull request #28 from BadCo-NZ/patch-1
Update README.md
2022-06-14 11:16:32 +02:00
BadCo-NZ
7379ad56ce Update README.md
Fixed code block error
2022-06-14 01:55:30 +00:00
BadCo-NZ
2740dcb1b8 Updated dependencies
Reworded Dependencies section
2022-06-14 01:53:27 +00:00
BadCo-NZ
92cefe029a Update README.md
Added dependencies section
2022-05-22 11:15:55 +00:00
Christoph Miksche
c2da136d7e fix: update if sha doesn't exists
Still update if there is no sha which we can check
2022-02-01 13:19:42 +01:00
4 changed files with 18 additions and 7 deletions

View File

@@ -3,8 +3,11 @@
[![Build Status](https://cloud.drone.io/api/badges/CMiksche/gitea-auto-update/status.svg)](https://cloud.drone.io/CMiksche/gitea-auto-update) [![Build Status](https://cloud.drone.io/api/badges/CMiksche/gitea-auto-update/status.svg)](https://cloud.drone.io/CMiksche/gitea-auto-update)
[![PyPI version](https://badge.fury.io/py/gitea-auto-update.svg)](https://badge.fury.io/py/gitea-auto-update) [![PyPI version](https://badge.fury.io/py/gitea-auto-update.svg)](https://badge.fury.io/py/gitea-auto-update)
[![Downloads](https://pepy.tech/badge/gitea-auto-update)](https://pepy.tech/project/gitea-auto-update) [![Downloads](https://pepy.tech/badge/gitea-auto-update)](https://pepy.tech/project/gitea-auto-update)
![GitHub](https://img.shields.io/github/license/cmiksche/gitea-auto-update?style=flat)
[![Twitter Follow](https://img.shields.io/twitter/follow/cmiksche?style=social)](https://twitter.com/cmiksche)
[![Mastodon Follow](https://img.shields.io/mastodon/follow/106336578279256330?domain=https%3A%2F%2Fmastodon.social&style=social)](https://mastodon.social/@cmiksche)
Script for a automatic update of gitea. Should be run locally on the gitea server. Has options for updating via new binary file or build from source. Script for an automatic update of gitea. Should be run locally on the gitea server. Has options for updating via new binary file or build from source.
## Procedure ## Procedure
* Get Gitea Version from the Gitea CLI and if that fails from the Gitea API * Get Gitea Version from the Gitea CLI and if that fails from the Gitea API
@@ -28,6 +31,10 @@ Author: Christoph Daniel Miksche (m5e.de)
Uses python version 3 Uses python version 3
## Dependencies
Ensure `pip3`, `setuptools`, `xz-utils` and `wheel` dependencies are installed on the system you are running this script in. (Most Linux OS like Ubuntu or Debian come with these pre-installed)
## Installation ## Installation
Create a settings.ini file on your system. Example: Create a settings.ini file on your system. Example:

View File

@@ -24,14 +24,18 @@ def download(url, file_name):
# open in binary mode # open in binary mode
with open(file_name, "wb") as file: with open(file_name, "wb") as file:
# get request # get request
response = requests.get(url) response = requests.get(url, timeout=3600)
# write to file # write to file
file.write(response.content) file.write(response.content)
def sha_check(): def sha_check():
"""Check sha for gitea file""" """Check sha for gitea file"""
return os.system("sha256sum -c gitea.xz.sha256 > /dev/null") == 0 sha_path = 'gitea.xz.sha256'
if os.path.exists(sha_path):
return os.system("sha256sum -c "+sha_path+" > /dev/null") == 0
# return true because we don't have a sha file to check
return True
class Download: class Download:

View File

@@ -14,7 +14,7 @@ import requests
def get_github_version_tag(api_url): def get_github_version_tag(api_url):
"""Get the version from github""" """Get the version from github"""
version_tag = requests.get(api_url).json()['tag_name'] version_tag = requests.get(api_url, timeout=30).json()['tag_name']
logging.info('Version: github_version_tag = %s', version_tag) logging.info('Version: github_version_tag = %s', version_tag)
return version_tag return version_tag
@@ -49,7 +49,7 @@ class Version:
except IOError: except IOError:
# Get the version via the web api if the file does fail # Get the version via the web api if the file does fail
try: try:
current_version = requests.get(self.gt_site).json()['version'] current_version = requests.get(self.gt_site, timeout=30).json()['version']
if current_version.status_code != 200: if current_version.status_code != 200:
raise RuntimeError("Could not download version.") from None raise RuntimeError("Could not download version.") from None
except RuntimeError: except RuntimeError:

View File

@@ -8,12 +8,12 @@ License: GNU General Public License
''' '''
import setuptools import setuptools
with open("README.md", "r") as fh: with open("README.md", "r", encoding='utf8') as fh:
LONG_DESCRIPTION = fh.read() LONG_DESCRIPTION = fh.read()
setuptools.setup( setuptools.setup(
name='gitea_auto_update', name='gitea_auto_update',
version='2.0.10', version='2.0.11',
description='A script which can update gitea to a new version.', description='A script which can update gitea to a new version.',
long_description=LONG_DESCRIPTION, long_description=LONG_DESCRIPTION,
long_description_content_type="text/markdown", long_description_content_type="text/markdown",