mirror of
https://git.savannah.gnu.org/git/parallel.git
synced 2024-11-21 21:47:54 +00:00
parallel: Fixed bug #64237: --filter-hosts and VisualHostKey=yes.
This commit is contained in:
parent
7aa3453bdd
commit
aa78d2d42f
|
@ -105,6 +105,7 @@ lbry://@GnuParallel#4/parallel-20210322.tar.bz2
|
|||
. .last-doitag.txt
|
||||
file_path="`pwd`/parallel-$YYYYMMDD.tar.bz2"
|
||||
title="GNU Parallel $YYYYMMDD ('$SPCTAG') [stable]"
|
||||
|
||||
title="GNU Parallel $YYYYMMDD ('$SPCTAG')"
|
||||
name="GNU-Parallel-$YYYYMMDD-$TAG"
|
||||
author="Ole Tange"
|
||||
|
@ -263,38 +264,24 @@ from:tange@gnu.org
|
|||
to:parallel@gnu.org, bug-parallel@gnu.org
|
||||
stable-bcc: Jesse Alama <jessealama@fastmail.fm>
|
||||
|
||||
Subject: GNU Parallel 20230522 ('Charles') released [stable]
|
||||
Subject: GNU Parallel 20230622 ('Tina Turner/Odisha<<>>') released <<[stable]>>
|
||||
|
||||
GNU Parallel 20230522 ('Charles') has been released. It is available for download at: lbry://@GnuParallel:4
|
||||
GNU Parallel 20230622 ('<<>>') has been released. It is available for download at: lbry://@GnuParallel:4
|
||||
|
||||
Quote of the month:
|
||||
|
||||
Recently learned how to use GNU parallel (from ChatGPT, no less!) and I've gone mad with power
|
||||
-- Mark, Anthropomorphic Anuran @reject_resubmit@twitter
|
||||
<<>>
|
||||
|
||||
New in this release:
|
||||
|
||||
* No new features. This is a candidate for a stable release.
|
||||
<<>>
|
||||
|
||||
* Bug fixes and man page updates.
|
||||
|
||||
News about GNU Parallel:
|
||||
http://blog.faucher.net/2023/05/building-evil-android-phone-bot-army.html
|
||||
|
||||
* Introduction to parallel computing https://youtu.be/fvrHXV8yqU4?t=2874
|
||||
|
||||
* Script for summarizing GNU parallel joblog file https://github.com/gavinmdouglas/parallel_joblog_summary
|
||||
|
||||
* How to copy a single file to multiple directories in Linux or Unix https://www.cyberciti.biz/faq/linux-unix-copy-a-file-to-multiple-directories-using-cp-command/
|
||||
|
||||
* Search in your Jupyter notebooks from the CLI, fast. https://dev.to/attilavm/search-in-your-jupyter-notebooks-from-the-cli-fast-1408
|
||||
|
||||
* Parallel Job Orchestration with GNU Parallel https://www.youtube.com/watch?v=2tVpUfND3LI
|
||||
|
||||
* Optional Individual Submission 4 Job Handling 20266001 - GNU Parallel https://www.youtube.com/watch?v=eC_RPuFCcU8
|
||||
|
||||
* DOE Cross-facility Workflows Training - April 12, 2023 https://www.youtube.com/watch?v=Ke3sirM-aQQ
|
||||
|
||||
* How to run MiXCR 4.x on multiple patient samples using GNU Parallel https://www.youtube.com/watch?v=OXg-WHlB_dk
|
||||
<<>>
|
||||
|
||||
|
||||
GNU Parallel - For people who live life in the parallel lane.
|
||||
|
|
|
@ -393,7 +393,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -395,7 +395,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -393,7 +393,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -376,7 +376,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -378,7 +378,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -393,7 +393,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -368,7 +368,7 @@ _parset_main() {
|
|||
fi
|
||||
if [ "$_parset_NAME" = "--version" ] ; then
|
||||
# shellcheck disable=SC2006
|
||||
echo "parset 20230522 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "parset 20230523 (GNU parallel `parallel --minversion 1`)"
|
||||
echo "Copyright (C) 2007-2023 Ole Tange, http://ole.tange.dk and Free Software"
|
||||
echo "Foundation, Inc."
|
||||
echo "License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>"
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
use strict;
|
||||
use Getopt::Long;
|
||||
$Global::progname="niceload";
|
||||
$Global::version = 20230522;
|
||||
$Global::version = 20230523;
|
||||
Getopt::Long::Configure("bundling","require_order");
|
||||
get_options_from_array(\@ARGV) || die_usage();
|
||||
if($opt::version) {
|
||||
|
|
|
@ -2799,7 +2799,7 @@ sub check_invalid_option_combinations() {
|
|||
|
||||
sub init_globals() {
|
||||
# Defaults:
|
||||
$Global::version = 20230522;
|
||||
$Global::version = 20230523;
|
||||
$Global::progname = 'parallel';
|
||||
$::name = "GNU Parallel";
|
||||
$Global::infinity = 2**31;
|
||||
|
@ -5123,6 +5123,8 @@ sub parse_host_filtering() {
|
|||
if(/\t(perl: warning:|LANGUAGE =|LC_ALL =|LANG =|are supported and installed|Disconnected from|Received disconnect from)/
|
||||
or
|
||||
/\tWarning: /
|
||||
or
|
||||
/\t(Host key fingerprint is|\+-.*-\+|\|.*\|)/
|
||||
) {
|
||||
# Skip these (from perl):
|
||||
# perl: warning: Setting locale failed.
|
||||
|
@ -5137,6 +5139,11 @@ sub parse_host_filtering() {
|
|||
# Skip these (from ssh):
|
||||
# Warning: Permanently added * to the list of known hosts.
|
||||
# Warning: Identity file * not accessible: *
|
||||
# (VisualHostKey=yes)
|
||||
# Host key fingerprint is SHA256:...
|
||||
# +--[ED25519 256]--+
|
||||
# | o |
|
||||
# +----[SHA256]-----+
|
||||
} elsif(not defined $nsockets{$col[0]}) {
|
||||
$nsockets{$col[0]} = $col[1];
|
||||
} elsif(not defined $ncores{$col[0]}) {
|
||||
|
|
|
@ -137,7 +137,7 @@ GetOptions(
|
|||
"help" => \$opt::dummy,
|
||||
) || exit(255);
|
||||
$Global::progname = ($0 =~ m:(^|/)([^/]+)$:)[1];
|
||||
$Global::version = 20230522;
|
||||
$Global::version = 20230523;
|
||||
if($opt::version) { version(); exit 0; }
|
||||
# Remove -D and --parallel=N
|
||||
my @s = (grep { ! /^-D$|^--parallel=\S+$/ }
|
||||
|
|
2
src/sql
2
src/sql
|
@ -670,7 +670,7 @@ $Global::Initfile && unlink $Global::Initfile;
|
|||
exit ($err);
|
||||
|
||||
sub parse_options {
|
||||
$Global::version = 20230522;
|
||||
$Global::version = 20230523;
|
||||
$Global::progname = 'sql';
|
||||
|
||||
# This must be done first as this may exec myself
|
||||
|
|
|
@ -134,6 +134,11 @@ par_filter_host_noise() {
|
|||
echo '### bug #63296: --filter-hosts option gets confused by output from SSH command'
|
||||
parallel --ssh "ssh -i id_rsa -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o GlobalKnownHostsFile=/dev/null " -S localhost --nonall --tag --filter-hosts echo OK
|
||||
parallel --ssh "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o GlobalKnownHostsFile=/dev/null " -S localhost --nonall --tag --filter-hosts echo OK
|
||||
echo '### bug #64237: --filter-hosts and VisualHostKey=yes'
|
||||
stdout parallel --ssh "ssh -o VisualHostKey=yes" -S localhost --nonall --tag --filter-hosts echo OK |
|
||||
perl -pe 's/(Host key fingerprint is).*/$1/; s/\t(\+|\|).*\1/\t$1,,,,,,,,,,,,,,,,,$1/;'
|
||||
parallel --ssh "ssh -o VisualHostKey=yes -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o GlobalKnownHostsFile=/dev/null " -S localhost --nonall --tag --filter-hosts echo OK
|
||||
|
||||
}
|
||||
|
||||
export -f $(compgen -A function | grep par_)
|
||||
|
|
|
@ -4,6 +4,22 @@ par_filter_host_noise localhost Warning: Identity file id_rsa not accessible: No
|
|||
par_filter_host_noise localhost Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
par_filter_host_noise localhost
|
||||
par_filter_host_noise localhost OK
|
||||
par_filter_host_noise localhost Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
par_filter_host_noise localhost
|
||||
par_filter_host_noise ### bug #64237: --filter-hosts and VisualHostKey=yes
|
||||
par_filter_host_noise localhost OK
|
||||
par_filter_host_noise localhost Host key fingerprint is
|
||||
par_filter_host_noise localhost +,,,,,,,,,,,,,,,,,+
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost |,,,,,,,,,,,,,,,,,|
|
||||
par_filter_host_noise localhost +,,,,,,,,,,,,,,,,,+
par_filter_host_noise localhost
|
||||
par_filter_host_noise localhost OK
|
||||
par_filter_host_noise localhost Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
par_filter_host_noise localhost
|
||||
par_load_csh ### Gave Word too long.
|
||||
par_load_csh a
|
||||
par_path_remote_bash bug #47695: How to set $PATH on remote? Bash
|
||||
|
|
Loading…
Reference in a new issue