Properly download and set repositories's gpg keys
This commit is contained in:
@@ -46,11 +46,7 @@ def pre_pref(self, apt_packages):
|
||||
else:
|
||||
wo_mysql_repo_conf = WOVar.wo_mysql_repo
|
||||
# APT repositories
|
||||
WORepo.add(self, repo_url=wo_mysql_repo_conf)
|
||||
WORepo.add_key(self, '0xcbcb082a1bb943db',
|
||||
keyserver='keyserver.ubuntu.com')
|
||||
WORepo.add_key(self, '0xF1656F24C74CD1D8',
|
||||
keyserver='keyserver.ubuntu.com')
|
||||
WORepo.add(self, repo_url=wo_mysql_repo_conf, repo_name="mariadb")
|
||||
if ("mariadb-server" in apt_packages and
|
||||
not os.path.exists('/etc/mysql/conf.d/my.cnf')):
|
||||
# generate random 24 characters root password
|
||||
@@ -77,13 +73,10 @@ def pre_pref(self, apt_packages):
|
||||
WORepo.add(self, ppa=WOVar.wo_nginx_repo)
|
||||
Log.debug(self, 'Adding ppa for Nginx')
|
||||
else:
|
||||
if not WOFileUtils.grepcheck(
|
||||
self, '/etc/apt/sources.list/wo-repo.list',
|
||||
'WordOps'):
|
||||
if not os.path.exists('/etc/apt/sources.list.d/wordops.list'):
|
||||
Log.info(self, "Adding repository for NGINX, please wait...")
|
||||
Log.debug(self, 'Adding repository for Nginx')
|
||||
WORepo.add(self, repo_url=WOVar.wo_nginx_repo)
|
||||
WORepo.add_key(self, WOVar.wo_nginx_key)
|
||||
WORepo.add(self, repo_url=WOVar.wo_nginx_repo, repo_name="wordops")
|
||||
|
||||
# add php repository
|
||||
if (('php7.3-fpm' in apt_packages) or
|
||||
@@ -108,34 +101,15 @@ def pre_pref(self, apt_packages):
|
||||
'PHP.pref', mode='w',
|
||||
encoding='utf-8') as php_pref_file:
|
||||
php_pref_file.write(php_pref)
|
||||
if not WOFileUtils.grepcheck(
|
||||
self, '/etc/apt/sources.list.d/wo-repo.list',
|
||||
'packages.sury.org'):
|
||||
if not os.path.exists('/etc/apt/sources.list.d/php.list'):
|
||||
Log.debug(self, 'Adding repo_url of php for debian')
|
||||
Log.info(self, "Adding repository for PHP, please wait...")
|
||||
WORepo.add(self, repo_url=WOVar.wo_php_repo)
|
||||
Log.debug(self, 'Adding deb.sury GPG key')
|
||||
WORepo.add_key(self, WOVar.wo_php_key)
|
||||
WORepo.add(self, repo_url=WOVar.wo_php_repo, repo_name="php")
|
||||
|
||||
# add redis repository
|
||||
if set(WOVar.wo_redis).issubset(set(apt_packages)):
|
||||
if not WOFileUtils.grepcheck(
|
||||
self, '/etc/apt/sources.list/wo-repo.list',
|
||||
'redis.io') and not (WOVar.wo_platform_codename == 'noble'):
|
||||
Log.info(self, "Adding repository for Redis, please wait...")
|
||||
WORepo.add(self, repo_url=WOVar.wo_redis_repo)
|
||||
WORepo.download_key(self, WOVar.wo_redis_key_url)
|
||||
|
||||
# nano
|
||||
if 'nano' in apt_packages:
|
||||
if WOVar.wo_platform_codename == 'buster':
|
||||
if (not WOFileUtils.grepcheck(
|
||||
self, '/etc/apt/sources.list/wo-repo.list',
|
||||
'WordOps')):
|
||||
Log.info(self,
|
||||
"Adding repository for Nano, please wait...")
|
||||
Log.debug(self, 'Adding repository for Nano')
|
||||
WORepo.add_key(self, WOVar.wo_nginx_key)
|
||||
WORepo.add(self, repo_url=WOVar.wo_nginx_repo)
|
||||
if not os.path.exists('/etc/apt/sources.list.d/redis.list'):
|
||||
WORepo.add(self, repo_url=WOVar.wo_redis_repo, repo_name="redis")
|
||||
|
||||
|
||||
def post_pref(self, apt_packages, packages, upgrade=False):
|
||||
|
||||
@@ -13,7 +13,7 @@ class WORepo():
|
||||
"""Initialize """
|
||||
pass
|
||||
|
||||
def add(self, repo_url=None, ppa=None):
|
||||
def add(self, repo_url=None, ppa=None, repo_name=None):
|
||||
"""
|
||||
This function used to add apt repositories and or ppa's
|
||||
If repo_url is provided adds repo file to
|
||||
@@ -24,8 +24,9 @@ class WORepo():
|
||||
"""
|
||||
|
||||
if repo_url is not None:
|
||||
repo_file_path = ("/etc/apt/sources.list.d/" +
|
||||
WOVar().wo_repo_file)
|
||||
if repo_name is not None:
|
||||
repo_file_path = ("/etc/apt/sources.list.d/" +
|
||||
f"{repo_name}.list")
|
||||
try:
|
||||
if not os.path.isfile(repo_file_path):
|
||||
with open(repo_file_path,
|
||||
|
||||
@@ -118,10 +118,7 @@ class WOVar():
|
||||
# Nginx repo and packages
|
||||
if wo_distro == 'ubuntu':
|
||||
wo_nginx_repo = "ppa:wordops/nginx-wo"
|
||||
wo_extra_repo = (
|
||||
"deb http://download.opensuse.org"
|
||||
"/repositories/home:/virtubox:"
|
||||
"/WordOps/xUbuntu_{0}/ /".format(wo_platform_version))
|
||||
|
||||
else:
|
||||
if wo_distro == 'debian':
|
||||
if wo_platform_codename == 'buster':
|
||||
@@ -138,10 +135,10 @@ class WOVar():
|
||||
elif wo_platform_codename == 'bookworm':
|
||||
wo_deb_repo = "Raspbian_12"
|
||||
# debian/raspbian nginx repository
|
||||
wo_nginx_repo = ("deb http://download.opensuse.org"
|
||||
"/repositories/home:"
|
||||
"/virtubox:/WordOps/{0}/ /"
|
||||
.format(wo_deb_repo))
|
||||
wo_nginx_repo = ("deb [signed-by=/usr/share/keyrings/wordops-archive-keyring.gpg] "
|
||||
"http://download.opensuse.org"
|
||||
f"/repositories/home:/virtubox:/WordOps/{wo_deb_repo}/ /")
|
||||
wo_nginx_key = (f"https://download.opensuse.org/repositories/home:virtubox:WordOps/{wo_deb_repo}/Release.key")
|
||||
|
||||
wo_nginx = ["nginx-custom", "nginx-wo"]
|
||||
wo_nginx_key = 'FB898660'
|
||||
@@ -190,24 +187,23 @@ class WOVar():
|
||||
wo_clamav = ["clamav", "clamav-freshclam"]
|
||||
|
||||
# APT repositories
|
||||
wo_mysql_repo = ("deb [arch=amd64,arm64,ppc64el] "
|
||||
wo_mysql_repo = ("deb [signed-by=/etc/apt/keyrings/mariadb-keyring.pgp] "
|
||||
"http://mariadb.mirrors.ovh.net/MariaDB/repo/"
|
||||
"{version}/{distro} {codename} main"
|
||||
.format(version=mariadb_ver,
|
||||
distro=wo_distro,
|
||||
codename=wo_platform_codename))
|
||||
f"{mariadb_ver}/{wo_distro} {wo_platform_codename} main")
|
||||
mariadb_repo_key = "https://mariadb.org/mariadb_release_signing_key.pgp"
|
||||
if wo_distro == 'ubuntu':
|
||||
wo_php_repo = "ppa:ondrej/php"
|
||||
wo_goaccess_repo = ("ppa:alex-p/goaccess")
|
||||
|
||||
else:
|
||||
wo_php_repo = (
|
||||
"deb https://packages.sury.org/php/ {codename} main"
|
||||
.format(codename=wo_platform_codename))
|
||||
"deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] "
|
||||
f"https://packages.sury.org/php/ {wo_platform_codename} main")
|
||||
wo_php_key = '95BD4743'
|
||||
wo_redis_key_url = "https://packages.redis.io/gpg"
|
||||
wo_redis_repo = ("deb https://packages.redis.io/deb {codename} main"
|
||||
.format(codename=wo_platform_codename))
|
||||
wo_redis_repo = (
|
||||
"deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] "
|
||||
f"https://packages.redis.io/deb {wo_platform_codename} main")
|
||||
|
||||
wo_redis = ['redis-server']
|
||||
|
||||
|
||||
Reference in New Issue
Block a user