[Kimchi-devel] [PATCH] Fix issue #617: Base URL may be an empty string when updating YUM repo
Daniel Henrique Barboza
dhbarboza82 at gmail.com
Fri Mar 20 18:44:13 UTC 2015
Reviewed-by: Daniel Barboza <dhbarboza82 at gmail.com>
On 03/19/2015 07:00 PM, Aline Manera wrote:
> Signed-off-by: Aline Manera <alinefm at linux.vnet.ibm.com>
> ---
> src/kimchi/i18n.py | 2 +-
> src/kimchi/repositories.py | 16 +++++++++++-----
> 2 files changed, 12 insertions(+), 6 deletions(-)
>
> diff --git a/src/kimchi/i18n.py b/src/kimchi/i18n.py
> index df5422f..e4e1a89 100644
> --- a/src/kimchi/i18n.py
> +++ b/src/kimchi/i18n.py
> @@ -298,7 +298,7 @@ messages = {
> "KCHREPOS0010E": _("GPG key must be a URL pointing to the ASCII-armored file."),
> "KCHREPOS0011E": _("Could not update repository %(repo_id)s."),
> "KCHREPOS0012E": _("Repository %(repo_id)s does not exist."),
> - "KCHREPOS0013E": _("Specify repository base URL or mirror list in order to create a YUM repository."),
> + "KCHREPOS0013E": _("Specify repository base URL or mirror list in order to create or update a YUM repository."),
> "KCHREPOS0014E": _("Repository management tool was not recognized for your system."),
> "KCHREPOS0015E": _("Repository %(repo_id)s is already enabled."),
> "KCHREPOS0016E": _("Repository %(repo_id)s is already disabled."),
> diff --git a/src/kimchi/repositories.py b/src/kimchi/repositories.py
> index f826ac9..f1e1eb3 100644
> --- a/src/kimchi/repositories.py
> +++ b/src/kimchi/repositories.py
> @@ -1,7 +1,7 @@
> #
> # Project Kimchi
> #
> -# Copyright IBM, Corp. 2014
> +# Copyright IBM, Corp. 2014-2015
> #
> # This library is free software; you can redistribute it and/or
> # modify it under the terms of the GNU Lesser General Public
> @@ -269,19 +269,25 @@ class YumRepo(object):
> if repo_id not in repos.repos.keys():
> raise NotFoundError("KCHREPOS0012E", {'repo_id': repo_id})
>
> - config = params.get('config', {})
> entry = repos.getRepo(repo_id)
>
> baseurl = params.get('baseurl', None)
> + config = params.get('config', {})
> mirrorlist = config.get('mirrorlist', None)
>
> + if len(baseurl.strip()) == 0:
> + baseurl = None
> +
> + if len(mirrorlist.strip()) == 0:
> + mirrorlist = None
> +
> + if baseurl is None and mirrorlist is None:
> + raise MissingParameter("KCHREPOS0013E")
> +
> if baseurl is not None:
> validate_repo_url(baseurl)
> entry.baseurl = baseurl
>
> - if mirrorlist == '':
> - mirrorlist = None
> -
> if mirrorlist is not None:
> validate_repo_url(mirrorlist)
> entry.mirrorlist = mirrorlist
More information about the Kimchi-devel
mailing list