History log of /llvm-project/libcxx/utils/ssh.py (Results 1 – 25 of 29)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2
# 21f8bc25 25-Sep-2023 Louis Dionne <ldionne.2@gmail.com>

[libc++] Make sure we forward stdin through executors (#67064)

This allows running tests like the ones for std::cin even on SSH
executors. This was originally reported as
https://github.com/llvm/l

[libc++] Make sure we forward stdin through executors (#67064)

This allows running tests like the ones for std::cin even on SSH
executors. This was originally reported as
https://github.com/llvm/llvm-project/pull/66842#issuecomment-1728701639.

show more ...


# 2ab31b6b 21-Sep-2023 Louis Dionne <ldionne.2@gmail.com>

[libc++] When run in verbose mode, ssh.py should print to stderr, not stdout

Otherwise this can mess up the test results which inspect stdout.


# 1ce70139 21-Sep-2023 Louis Dionne <ldionne.2@gmail.com>

[libc++] Simplify ssh.py by not passing args everywhere


# d2b71c7a 21-Sep-2023 Louis Dionne <ldionne.2@gmail.com>

[libc++] Fix how we run codesign in the test suite when --codesign_identity is provided


# 77d8ce5b 21-Sep-2023 Louis Dionne <ldionne.2@gmail.com>

[libc++] Add a --verbose option to ssh.py to help debug failures


Revision tags: llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5
# 7bfaa0f0 17-May-2023 Tobias Hieta <tobias@hieta.se>

[NFC][Py Reformat] Reformat python files in libcxx/libcxxabi

This is an ongoing series of commits that are reformatting our
Python code.

Reformatting is done with `black`.

If you end up having pro

[NFC][Py Reformat] Reformat python files in libcxx/libcxxabi

This is an ongoing series of commits that are reformatting our
Python code.

Reformatting is done with `black`.

If you end up having problems merging this commit because you
have made changes to a python file, the best way to handle that
is to run git checkout --ours <yourfile> and then reformat it
with black.

If you run into any problems, post to discourse about it and
we will try to help.

RFC Thread below:

https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style

Reviewed By: #libc, kwk, Mordante

Differential Revision: https://reviews.llvm.org/D150763

show more ...


Revision tags: llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2
# ba3bddb6 14-Apr-2023 Martin Storsjö <martin@martin.st>

[libcxx] [test] Prepend to PATH instead of overriding it

On Windows, the PATH env variable is used for locating dynamically
linked librarys, akin to LD_LIBRARY_PATH on Linux.

The tests that run wit

[libcxx] [test] Prepend to PATH instead of overriding it

On Windows, the PATH env variable is used for locating dynamically
linked librarys, akin to LD_LIBRARY_PATH on Linux.

The tests that run with a dynamically linked libc++ used "--env
PATH=%{lib}" in the test config. This had the unfortunate side effect
of making other tools from PATH unavailable during the runtime of the
tests; in particular, it caused the "executor-has-no-bash" flag to be
set for all those Windows test configs (with the clang-cl static config
being the only one lacking it).

Thus, this increases the number of tests actually included in the
clang-cl dll and all mingw test configs by 9 tests.

The clang-cl static test configuration has been executing those tests
since the "--env PATH=%{lib}" was removed from that test config in
e78223e79efc886ef6f0ea5413deab3737d6d63b. (For mingw we haven't had a
need to split the test config between shared and static, which means
that the mingw static test config previously ran with --env PATH
needlessly.)

This increases the test coverage for patches like D146398 which
can't be executed in the executor-has-no-bash configs.

Change the default value of the arg.env to an empty array; when we do
pass values to the option, they get passed as an array of strings,
so make sure the variable behaves consistently when no arguments
have been passed.

Differential Revision: https://reviews.llvm.org/D148324

show more ...


# eb5f9a5a 27-Apr-2023 Martin Storsjö <martin@martin.st>

[libcxx] [test] Unbreak passing multiple env variables in ssh.py

No test actually does this, but this makes the option behave like
the corresponding one in run.py.

This was broken by commit b8b23aa

[libcxx] [test] Unbreak passing multiple env variables in ssh.py

No test actually does this, but this makes the option behave like
the corresponding one in run.py.

This was broken by commit b8b23aa80eefe84187d6ba364d06496c90c53bdb
(https://reviews.llvm.org/D99242) which introduced quoting; instead
of quoting the whole space separated list, quote each individual
argument.

Differential Revision: https://reviews.llvm.org/D149319

show more ...


Revision tags: llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1
# f46f93b4 12-Nov-2021 Alfsonso Gregory <gfunni234@gmail.com>

[libc++][NFC] Resolve Python 2 FIXME

We don't use Python 2 anymore, so let us do the recommended fix instead
of using the workaround made for Python 2.

Differential Revision: https://reviews.llvm.o

[libc++][NFC] Resolve Python 2 FIXME

We don't use Python 2 anymore, so let us do the recommended fix instead
of using the workaround made for Python 2.

Differential Revision: https://reviews.llvm.org/D107715

show more ...


Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3
# b8b23aa8 04-Mar-2021 Martin Storsjö <martin@martin.st>

[libcxx] [test] Quote env variables that are set with a shell "export" in ssh.py

This safeguards against cases if some of the env vars contain chars
that are problematic for shells, e.g. if called w

[libcxx] [test] Quote env variables that are set with a shell "export" in ssh.py

This safeguards against cases if some of the env vars contain chars
that are problematic for shells, e.g. if called with --env "X=Y;Z".

(In cases of cross testing for windows, the PATH variable can end up
specified with semicolon separators - even if specifying a PATH when
cross testing in such differing environments might not make sense or
do anything - but this makes ssh.py not break on such a variable.)

Differential Revision: https://reviews.llvm.org/D99242

show more ...


Revision tags: llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1
# 232fec94 20-Oct-2020 Martin Storsjö <martin@martin.st>

[libcxx] [test] Add an option to ssh.py for using a different temp path

If cross testing on Windows via WSL (at least with WSL 1), the Windows
executables can't be executed if they are in WSL specif

[libcxx] [test] Add an option to ssh.py for using a different temp path

If cross testing on Windows via WSL (at least with WSL 1), the Windows
executables can't be executed if they are in WSL specific directories
(like /tmp).

Differential Revision: https://reviews.llvm.org/D98028

show more ...


Revision tags: llvmorg-11.0.0, llvmorg-11.0.0-rc6
# 04f908b9 06-Oct-2020 Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>

[libcxx][lit] Add support for custom ssh/scp flags in ssh.py

In our CHERI Jenkins CI we need to pass `-F <custom_config_file>` to each
ssh/scp command to set various arguments such as the localhost

[libcxx][lit] Add support for custom ssh/scp flags in ssh.py

In our CHERI Jenkins CI we need to pass `-F <custom_config_file>` to each
ssh/scp command to set various arguments such as the localhost port, usage
of controlmaster, etc. to speed up connections to our emulated QEMU systems.

For our specific use-case I could have also added a single --ssh-config-file
argument that can be used for both the scp and ssh commands, but being able
to pass arbitrary extra flags for both commands seems more flexible.

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D84097

show more ...


Revision tags: llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1
# 3980e895 21-Jul-2020 Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>

[libcxx][lit] Simplify parsing of trailing executor arguments

Adding a positional argparse.ONE_OR_MORE arguments will correctly remove
the "--" separator after --env and parse only the command. This

[libcxx][lit] Simplify parsing of trailing executor arguments

Adding a positional argparse.ONE_OR_MORE arguments will correctly remove
the "--" separator after --env and parse only the command. This also has
the advantage that misspelled flags raise an argparse error rather than
silently being added to the command to be executed.

I discovered this while adding a new commandline option to ssh.py to allow
passing additional arguments to the scp/ssh commands since this is required
for our CHERI CI where we need to pass `-F <custom_config_file>` to each
ssh/scp command to set various arguments such as the localhost port, usage
of controlmaster, etc. to speed up connections to our emulated QEMU systems.

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D84096

show more ...


Revision tags: llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2
# f998e0d6 12-Jun-2020 Louis Dionne <ldionne@apple.com>

[libc++] Make executor scripts executable

This allows running the scripts directly, without running them through
Python.


# 1fc5010d 10-Jun-2020 Louis Dionne <ldionne@apple.com>

[libc++] Consider everything inside %T to be a dependency of each test

Instead of passing file dependencies individually, assume that the
whole content of the unique test directory is a dependency.

[libc++] Consider everything inside %T to be a dependency of each test

Instead of passing file dependencies individually, assume that the
whole content of the unique test directory is a dependency. This
simplifies the test harness significantly, by making %T the directory
that contains everything required to run a test. This also removes the
need for the %{file_dependencies} substitution, which is removed by this
patch.

Furthermore, this patch also changes the harness to execute tests locally
inside %T, so as to avoid creating a separate directory for no purpose.

show more ...


Revision tags: llvmorg-10.0.1-rc1
# d98b9a41 06-May-2020 Louis Dionne <ldionne@apple.com>

[libc++] NFC: Do not print the environment on remote hosts

Running `export` when there is no environment variable to export will
cause the environment on the remote host to be printed. We don't want

[libc++] NFC: Do not print the environment on remote hosts

Running `export` when there is no environment variable to export will
cause the environment on the remote host to be printed. We don't want
that, so don't run any `export` command on the host when there's no env.

show more ...


# 7f482461 24-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] Quietly scp tarballs over with the remote executor

Otherwise, the progress-meter is printed.


# 5eb8d45a 17-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] Use proper shell escaping in the executors

This was originally committed as f8452ddfcc33 and reverted in 7cb1aa9d9368.
The issue was that shell builtins were being escaped too, and apparent

[libc++] Use proper shell escaping in the executors

This was originally committed as f8452ddfcc33 and reverted in 7cb1aa9d9368.
The issue was that shell builtins were being escaped too, and apparently
Bash won't execute a builtin when it is quoted e.g. '!'. Instead, it
thinks it's a command and it can't find it.

Re-committing the change with that issue fixed.

show more ...


# 7cb1aa9d 17-Apr-2020 Louis Dionne <ldionne@apple.com>

Revert "[libc++] Use proper shell escaping in the executors"

This reverts f8452ddfcc, which broke some bots. I'll figure out what's
wrong and commit it again.


# f8452ddf 17-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] Use proper shell escaping in the executors


# b00a874b 06-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] SSH: Fix tarring of dependencies on Windows

On Windows, we must make sure to close the temporary tar file before we
try to scp it.

This is an alternative approach to https://reviews.llvm.o

[libc++] SSH: Fix tarring of dependencies on Windows

On Windows, we must make sure to close the temporary tar file before we
try to scp it.

This is an alternative approach to https://reviews.llvm.org/D77500.

show more ...


# ceb58ad6 03-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] Lit: Add default values for most arguments of test executors


# 92e563bc 01-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] SSH: Create a tarball of dependencies and scp that instead

The benefit of doing this is that we can now handle directories that
contain symlinks and other arbitrary things, such as the stat

[libc++] SSH: Create a tarball of dependencies and scp that instead

The benefit of doing this is that we can now handle directories that
contain symlinks and other arbitrary things, such as the static_test_env
required by filesystem tests.

As a fly-by fix, we also accumulate several commands to perform over SSH
and execute them at once instead of SSHing several times. This should be
faster on average.

show more ...


# 160b01c9 01-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] SSH: Use -p when scp'ing to preserve modes and modification times


# 0489d39e 01-Apr-2020 Louis Dionne <ldionne@apple.com>

[libc++] SSH: Properly handle test-executables that are not the first argument

If a ShTest has for example another command in front of the test
executable it wants to execute, ssh.py needs to proper

[libc++] SSH: Properly handle test-executables that are not the first argument

If a ShTest has for example another command in front of the test
executable it wants to execute, ssh.py needs to properly translate
the path of that test executable to the executable on the remote host.
For example, running '%{exec} ! %t.exe', we can't assume that the
test-executable is the first argument after '%{exec}'.

show more ...


12