From: Matt Turner <mattst88@gentoo.org>
To: gentoo-catalyst@lists.gentoo.org
Cc: Matt Turner <mattst88@gentoo.org>
Subject: [gentoo-catalyst] [PATCH 04/37] catalyst: Add and use sanitize_name() function
Date: Tue, 20 Oct 2020 17:23:11 -0700 [thread overview]
Message-ID: <20201021002344.378131-4-mattst88@gentoo.org> (raw)
In-Reply-To: <20201021002344.378131-1-mattst88@gentoo.org>
Will be used in an additional place in a follow-on commit.
Signed-off-by: Matt Turner <mattst88@gentoo.org>
---
catalyst/base/stagebase.py | 10 +++++-----
catalyst/support.py | 9 +++++++++
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index 6f5aa23a..1ccc9f04 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -16,7 +16,8 @@ from DeComp.compress import CompressMap
from catalyst import log
from catalyst.defaults import (confdefaults, MOUNT_DEFAULTS, PORT_LOGDIR_CLEAN)
from catalyst.support import (CatalystError, file_locate, normpath,
- cmd, read_makeconf, ismount, file_check)
+ cmd, read_makeconf, ismount, file_check,
+ sanitize_name)
from catalyst.base.targetbase import TargetBase
from catalyst.base.clearbase import ClearBase
from catalyst.base.genbase import GenBase
@@ -1314,10 +1315,9 @@ class StageBase(TargetBase, ClearBase, GenBase):
for opt in self.settings[x]:
self.env['clst_' + opt.upper()] = "true"
continue
- # Sanitize var names by doing "s|/-.|_|g"
- varname = "clst_" + x.replace("/", "_")
- varname = varname.replace("-", "_")
- varname = varname.replace(".", "_")
+
+ varname = 'clst_' + sanitize_name(x)
+
if isinstance(self.settings[x], str):
# Prefix to prevent namespace clashes
if "path" in x:
diff --git a/catalyst/support.py b/catalyst/support.py
index a6a6854a..f49315a5 100644
--- a/catalyst/support.py
+++ b/catalyst/support.py
@@ -256,3 +256,12 @@ def normpath(mypath):
if TrailingSlash:
newpath = newpath+'/'
return newpath
+
+
+def sanitize_name(name: str) -> str:
+ """
+ Normalize name by replacing [.-/] with _, so it may be used as a
+ variable name in bash
+ """
+ table = str.maketrans(".-/", "___")
+ return name.translate(table)
--
2.26.2
next prev parent reply other threads:[~2020-10-21 0:24 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-21 0:23 [gentoo-catalyst] [PATCH 01/37] catalyst: Use early return to unindent code Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 02/37] catalyst: Drop outdated comment Matt Turner
2020-10-21 3:01 ` Brian Dolbec
2020-10-21 3:31 ` Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 03/37] catalyst: Fix obvious logic error Matt Turner
2020-10-21 0:23 ` Matt Turner [this message]
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 05/37] catalyst: Sanitize variable kernel name before giving it to bash Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 06/37] targets: Fix filtered_kname Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 07/37] targets: Consolidate evals using filtered_kname Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 08/37] targets: Remove filtered_kname Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 09/37] targets: Remove useless sleep 0 Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 10/37] targets: Remove trivial build_kernel() function Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 11/37] targets: Remove some disabled debugging messages Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 12/37] targets: Remove some unnecessary exports Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 13/37] targets: Remove more clst_ prefixes Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 14/37] targets: Remove some comments whose meanings have been lost Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 15/37] targets: Use pkgcache for kernel sources Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 16/37] targets: Remove a bunch of stray newlines Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 17/37] targets: Delete some more dead code Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 18/37] targets: Remove bizarre make_destpath() call Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 19/37] targets: Remove unnecessary unset USE Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 20/37] targets: Remove wrong make.conf munging Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 21/37] targets: Use USE=symlink when emerging kernel sources Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 22/37] targets: Emerge kernel sources with --update Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 23/37] targets: Default to sys-kernel/gentoo-sources directly Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 24/37] targets: Rewrite hppa pre-kmerge check Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 25/37] targets: Use full 'sys-kernel/genkernel' package name Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 26/37] targets: Explicitly set RUN_DEFAULT_FUNCS="yes" Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 27/37] targets: Inline run_default_funcs() function Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 28/37] targets: Move create_handbook_icon() to its use Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 29/37] targets: Drop warning about no cdtar Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 30/37] targets: Remove post-kmerge Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 31/37] targets: Remove unnecessary unset PACKAGES Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 32/37] targets: Delete never-used packages.txt code Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 33/37] targets: Remove kernelpkgs.txt generation Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 34/37] targets: Merge setup_gk_args() and genkernel_compile() Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 35/37] targets: Reimplement kerncache support Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 36/37] targets: Remove unnecessary CONFIG_PROTECT assignment Matt Turner
2020-10-21 0:23 ` [gentoo-catalyst] [PATCH 37/37] targets: Use double-brackets in kmerge.sh Matt Turner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201021002344.378131-4-mattst88@gentoo.org \
--to=mattst88@gentoo.org \
--cc=gentoo-catalyst@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox