* [gentoo-commits] proj/catalyst:master commit in: targets/support/, catalyst/base/
@ 2015-09-02 21:25 Richard Farina
0 siblings, 0 replies; 4+ messages in thread
From: Richard Farina @ 2015-09-02 21:25 UTC (permalink / raw
To: gentoo-commits
commit: cec4889344a5c5de7fa02ade0253808dc73f3008
Author: Rick Farina (Zero_Chaos) <zerochaos <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 2 21:22:38 2015 +0000
Commit: Richard Farina <zerochaos <AT> gentoo <DOT> org>
CommitDate: Wed Sep 2 21:22:38 2015 +0000
URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=cec48893
Revert "fix minor typo"
This reverts commit da114f314109977bca344179ed7c3aa648837afd.
bad commit
catalyst/base/stagebase.py | 2 +-
targets/support/chroot-functions.sh | 9 ++++++---
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index 23491aa..c0bafc2 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -1097,7 +1097,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
myusevars.extend(self.settings["use"])
if myusevars:
- myf.write("# These are the USE and USE_EXPAND flags that were used for\n# building in addition to what is provided by the profile.\n")
+ myf.write("# These are the USE and USE_EXPAND flags that were used for\n# buidling in addition to what is provided by the profile.\n")
myusevars = sorted(set(myusevars))
myf.write('USE="'+string.join(myusevars)+'"\n')
if '-*' in myusevars:
diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
index 5dd542e..5e046cb 100755
--- a/targets/support/chroot-functions.sh
+++ b/targets/support/chroot-functions.sh
@@ -166,9 +166,6 @@ setup_gcc(){
}
setup_pkgmgr(){
- # Set bindist USE flag if clst_BINDIST is set
- [ -e "${clst_make_conf}" ] && [ -n "${clst_BINDIST}" ] && echo "USE=\"\${USE} bindist\"" >> "${clst_make_conf}"
-
# We need to merge our package manager with USE="build" set in case it is
# portage to avoid frying our /etc/portage/make.conf file. Otherwise, we could
# just let emerge @system could merge it.
@@ -271,6 +268,9 @@ run_merge() {
export EPAUSE_IGNORE=0
export CONFIG_PROTECT="-*"
+ # Set bindist USE flag if clst_BINDIST is set
+ [ -e "${clst_make_conf}" ] && [ -n "${clst_BINDIST}" ] && echo "USE=\"\${USE} bindist\"" >> "${clst_make_conf}"
+
if [ -n "${clst_VERBOSE}" ]
then
echo "ROOT=${ROOT} emerge ${clst_myemergeopts} -pt $@" || exit 1
@@ -287,6 +287,9 @@ run_merge() {
echo "emerge ${clst_myemergeopts} $@" || exit 1
emerge ${clst_myemergeopts} $@ || exit 1
+
+ # Clean-up USE again
+ sed -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
}
show_debug() {
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] proj/catalyst:master commit in: targets/support/, catalyst/base/
@ 2015-09-02 21:25 Richard Farina
0 siblings, 0 replies; 4+ messages in thread
From: Richard Farina @ 2015-09-02 21:25 UTC (permalink / raw
To: gentoo-commits
commit: da114f314109977bca344179ed7c3aa648837afd
Author: Rick Farina (Zero_Chaos) <zerochaos <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 2 21:22:01 2015 +0000
Commit: Richard Farina <zerochaos <AT> gentoo <DOT> org>
CommitDate: Wed Sep 2 21:22:01 2015 +0000
URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=da114f31
fix minor typo
catalyst/base/stagebase.py | 2 +-
targets/support/chroot-functions.sh | 9 +++------
2 files changed, 4 insertions(+), 7 deletions(-)
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index c0bafc2..23491aa 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -1097,7 +1097,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
myusevars.extend(self.settings["use"])
if myusevars:
- myf.write("# These are the USE and USE_EXPAND flags that were used for\n# buidling in addition to what is provided by the profile.\n")
+ myf.write("# These are the USE and USE_EXPAND flags that were used for\n# building in addition to what is provided by the profile.\n")
myusevars = sorted(set(myusevars))
myf.write('USE="'+string.join(myusevars)+'"\n')
if '-*' in myusevars:
diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
index 5e046cb..5dd542e 100755
--- a/targets/support/chroot-functions.sh
+++ b/targets/support/chroot-functions.sh
@@ -166,6 +166,9 @@ setup_gcc(){
}
setup_pkgmgr(){
+ # Set bindist USE flag if clst_BINDIST is set
+ [ -e "${clst_make_conf}" ] && [ -n "${clst_BINDIST}" ] && echo "USE=\"\${USE} bindist\"" >> "${clst_make_conf}"
+
# We need to merge our package manager with USE="build" set in case it is
# portage to avoid frying our /etc/portage/make.conf file. Otherwise, we could
# just let emerge @system could merge it.
@@ -268,9 +271,6 @@ run_merge() {
export EPAUSE_IGNORE=0
export CONFIG_PROTECT="-*"
- # Set bindist USE flag if clst_BINDIST is set
- [ -e "${clst_make_conf}" ] && [ -n "${clst_BINDIST}" ] && echo "USE=\"\${USE} bindist\"" >> "${clst_make_conf}"
-
if [ -n "${clst_VERBOSE}" ]
then
echo "ROOT=${ROOT} emerge ${clst_myemergeopts} -pt $@" || exit 1
@@ -287,9 +287,6 @@ run_merge() {
echo "emerge ${clst_myemergeopts} $@" || exit 1
emerge ${clst_myemergeopts} $@ || exit 1
-
- # Clean-up USE again
- sed -i "/USE=\"\${USE} bindist\"/d" "${clst_make_conf}"
}
show_debug() {
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] proj/catalyst:master commit in: targets/support/, catalyst/base/
@ 2020-10-30 22:41 Matt Turner
0 siblings, 0 replies; 4+ messages in thread
From: Matt Turner @ 2020-10-30 22:41 UTC (permalink / raw
To: gentoo-commits
commit: f7fe02da2825122eb6347e569170e34515f112e3
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 22 18:19:09 2020 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Fri Oct 30 22:40:52 2020 +0000
URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=f7fe02da
catalyst: Remove kill_support_pids()
mount_namespaces(7) says
A mount ceases to be a member of a peer group when either the
mount is explicitly unmounted, or when the mount is implicitly
unmounted because a mount namespace is removed (because it has
no more member processes).
Now that the build sequence is executed in its own mount namespace, the
mounts are implicitly unmounted when the last process in the namespace
dies, meaning we don't need to try any funny business around cleaning up
processes in order to unmount.
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
catalyst/base/stagebase.py | 30 +++---------------
targets/support/kill-chroot-pids.sh | 62 -------------------------------------
2 files changed, 4 insertions(+), 88 deletions(-)
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index caec5935..bd5ba8d0 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -638,17 +638,6 @@ class StageBase(TargetBase, ClearBase, GenBase):
assert self.settings[verify] == "blake2"
self.settings.setdefault("gk_mainargs", []).append("--b2sum")
- def kill_chroot_pids(self):
- log.info('Checking for processes running in chroot and killing them.')
-
- # Force environment variables to be exported so script can see them
- self.setup_environment()
-
- killcmd = normpath(self.settings["sharedir"] +
- self.settings["shdir"] + "/support/kill-chroot-pids.sh")
- if os.path.exists(killcmd):
- cmd([killcmd], env=self.env)
-
def mount_safety_check(self):
"""
Check and verify that none of our paths in mypath are mounted. We don't
@@ -920,18 +909,10 @@ class StageBase(TargetBase, ClearBase, GenBase):
try:
cxt = libmount.Context(target=str(target))
cxt.umount()
- except OSError:
- log.warning('First attempt to unmount failed: %s', target)
- log.warning('Killing any pids still running in the chroot')
-
- self.kill_chroot_pids()
-
- try:
- cxt.umount()
- except OSError as e:
- umount_failed = True
- log.warning("Couldn't umount: %s, %s", target,
- e.strerror)
+ except OSError as e:
+ log.warning("Couldn't umount: %s, %s", target,
+ e.strerror)
+ umount_failed = True
if umount_failed:
# if any bind mounts really failed, then we need to raise
@@ -1382,9 +1363,6 @@ class StageBase(TargetBase, ClearBase, GenBase):
def run(self):
self.chroot_lock.write_lock()
- # Kill any pids in the chroot
- self.kill_chroot_pids()
-
# Check for mounts right away and abort if we cannot unmount them
self.mount_safety_check()
diff --git a/targets/support/kill-chroot-pids.sh b/targets/support/kill-chroot-pids.sh
deleted file mode 100755
index ea8ee402..00000000
--- a/targets/support/kill-chroot-pids.sh
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/bash
-# Script to kill processes found running in the chroot.
-
-if [ "${clst_chroot_path}" == "/" ]
-then
- echo "Aborting .... clst_chroot_path is set to /"
- echo "This is very dangerous"
- exit 1
-fi
-
-if [ "${clst_chroot_path}" == "" ]
-then
- echo "Aborting .... clst_chroot_path is NOT set"
- echo "This is very dangerous"
- exit 1
-fi
-
-j=0
-declare -a pids
-# Get files and dirs in /proc
-for i in `ls /proc`
-do
- # Test for directories
- if [ -d /proc/$i ]
- then
- # Search for exe containing string inside ${clst_chroot_path}
- ls -la --color=never /proc/$i 2>&1 |grep exe|grep ${clst_chroot_path} > /dev/null
-
- # If found
- if [ $? == 0 ]
- then
- # Assign the pid into the pids array
- pids[$j]=$i
- j=$(($j+1))
- fi
- fi
-done
-
-if [ ${j} -gt 0 ]
-then
- echo
- echo "Killing process(es)"
- echo "pid: process name"
- for pid in ${pids[@]}
- do
- P_NAME=$(ls -la --color=never /proc/${pid} 2>&1 |grep exe|grep ${clst_chroot_path}|awk '{print $11}')
- echo ${pid}: ${P_NAME}
- done
- echo
- echo "Press Ctrl-C within 10 seconds to abort"
-
- sleep 10
-
- for pid in ${pids[@]}
- do
- kill -9 ${pid}
- done
-
- # Small sleep here to give the process(es) a chance to die before running unbind again.
- sleep 5
-
-fi
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] proj/catalyst:master commit in: targets/support/, catalyst/base/
2021-01-28 1:54 [gentoo-commits] proj/catalyst:pending/mattst88 " Matt Turner
@ 2021-01-23 16:22 ` Matt Turner
0 siblings, 0 replies; 4+ messages in thread
From: Matt Turner @ 2021-01-23 16:22 UTC (permalink / raw
To: gentoo-commits
commit: a500400592aaa309602331705b27cdbee8ae58c4
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 18 03:09:30 2021 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 16:19:07 2021 +0000
URL: https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=a5004005
catalyst: Call config_profile_link for all targets
This reverts the following two commits, which have no documented
rationale.
Revert "Set the profile by calling eselect."
This reverts commit 90c03f9dc255ba89849e46490f9ead7ab3921950.
Revert "Drop config_profile_link from the action_sequence for the generic stage."
This reverts commit 3bd10159bf7cfe14b6d8a8218b94eca73be4c997.
Doing so improves the code in two ways:
1) it makes prepare_sequence identical across all targets, which will
allow deduplicating some code
2) it no longer calls eselect profile each time chroot-functions.sh
is sourced (even for those targets that were still calling
config_profile_link)
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
catalyst/base/stagebase.py | 3 ++-
targets/support/chroot-functions.sh | 3 ---
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py
index 447e073d..53b0a224 100644
--- a/catalyst/base/stagebase.py
+++ b/catalyst/base/stagebase.py
@@ -500,6 +500,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
"""Set basic stage1, 2, 3 action sequences"""
self.prepare_sequence.extend([
self.unpack,
+ self.config_profile_link,
self.setup_confdir,
self.portage_overlay,
])
@@ -771,7 +772,7 @@ class StageBase(TargetBase, ClearBase, GenBase):
log.info('Configuring profile link...')
make_profile = Path(self.settings['chroot_path'] + self.settings['port_conf'],
'make.profile')
- make_profile.unlink()
+ make_profile.unlink(missing_ok=True)
make_profile.symlink_to(Path('../..' + self.settings['repo_basedir'],
self.settings['repo_name'],
'profiles',
diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh
index 2aec018e..88465c31 100755
--- a/targets/support/chroot-functions.sh
+++ b/targets/support/chroot-functions.sh
@@ -1,8 +1,5 @@
#!/bin/bash
-# Set the profile
-eselect profile set ${clst_target_profile}
-
# Trap these signals and kill ourselves if received
# Force ourselves to die if any of these signals are received
# most likely our controlling terminal is gone
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-01-23 16:23 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-02 21:25 [gentoo-commits] proj/catalyst:master commit in: targets/support/, catalyst/base/ Richard Farina
-- strict thread matches above, loose matches on Subject: below --
2021-01-28 1:54 [gentoo-commits] proj/catalyst:pending/mattst88 " Matt Turner
2021-01-23 16:22 ` [gentoo-commits] proj/catalyst:master " Matt Turner
2020-10-30 22:41 Matt Turner
2015-09-02 21:25 Richard Farina
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox