Allow to set parameter using environment variables PLUGIN_* or APTLY_*
This commit is contained in:
parent
4529061bc4
commit
59214019ba
1 changed files with 21 additions and 13 deletions
|
@ -16,28 +16,36 @@ from urllib3.util import Retry
|
||||||
from debian_parser import PackagesParser
|
from debian_parser import PackagesParser
|
||||||
|
|
||||||
|
|
||||||
|
def from_env(name, default=None):
|
||||||
|
""" Retrieve a parameter from environment """
|
||||||
|
for var in (f'PLUGIN_{name}', f'APTLY_{name}'):
|
||||||
|
if var in os.environ:
|
||||||
|
return os.environ[var]
|
||||||
|
return default
|
||||||
|
|
||||||
|
|
||||||
# Handle parameters from environment
|
# Handle parameters from environment
|
||||||
API_URL = os.environ.get('PLUGIN_API_URL', None)
|
API_URL = from_env('API_URL', None)
|
||||||
if not API_URL:
|
if not API_URL:
|
||||||
print('API URL not provided')
|
print('API URL not provided')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
API_USERNAME = os.environ.get('PLUGIN_API_USERNAME', None)
|
API_USERNAME = from_env('API_USERNAME', None)
|
||||||
if not API_USERNAME:
|
if not API_USERNAME:
|
||||||
print('API username not provided')
|
print('API username not provided')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
API_PASSWORD = os.environ.get('PLUGIN_API_PASSWORD', None)
|
API_PASSWORD = from_env('API_PASSWORD', None)
|
||||||
if not API_PASSWORD:
|
if not API_PASSWORD:
|
||||||
print('API password not provided')
|
print('API password not provided')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
MAX_RETRY = os.environ.get('PLUGIN_MAX_RETRIES', None)
|
MAX_RETRY = from_env('MAX_RETRIES', None)
|
||||||
|
|
||||||
REPO_NAME = os.environ.get('PLUGIN_REPO_NAME', 'stable')
|
REPO_NAME = from_env('REPO_NAME', 'stable')
|
||||||
REPO_COMPONENT = os.environ.get('PLUGIN_REPO_COMPONENT', 'main')
|
REPO_COMPONENT = from_env('REPO_COMPONENT', 'main')
|
||||||
DIST = os.environ.get('PLUGIN_PATH', 'dist')
|
INPUT_PATH = from_env('PATH', 'dist')
|
||||||
SOURCE_NAME = os.environ.get('PLUGIN_SOURCE_PACKAGE_NAME', None)
|
SOURCE_NAME = from_env('SOURCE_PACKAGE_NAME', None)
|
||||||
|
|
||||||
# List changes files
|
# List changes files
|
||||||
changes_files_regex = (
|
changes_files_regex = (
|
||||||
|
@ -48,21 +56,21 @@ changes_files_regex = (
|
||||||
)
|
)
|
||||||
changes_files = []
|
changes_files = []
|
||||||
try:
|
try:
|
||||||
for filename in os.listdir(DIST):
|
for filename in os.listdir(INPUT_PATH):
|
||||||
filepath = os.path.join(DIST, filename)
|
filepath = os.path.join(INPUT_PATH, filename)
|
||||||
if not os.path.isfile(filepath):
|
if not os.path.isfile(filepath):
|
||||||
continue
|
continue
|
||||||
if changes_files_regex.match(filename):
|
if changes_files_regex.match(filename):
|
||||||
changes_files.append(filepath)
|
changes_files.append(filepath)
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
print(f'Specified directory path "{DIST}" not found')
|
print(f'Specified directory path "{INPUT_PATH}" not found')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
except NotADirectoryError:
|
except NotADirectoryError:
|
||||||
print(f'Specified path "{DIST}" is not a directory')
|
print(f'Specified path "{INPUT_PATH}" is not a directory')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
if not changes_files:
|
if not changes_files:
|
||||||
print(f'No changes file found in {DIST}')
|
print(f'No changes file found in {INPUT_PATH}')
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue