Commit Graph

1579 Commits

Author SHA1 Message Date
Manuel Pégourié-Gonnard
dea700dd38 all.sh: improve wrapper error reporting
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-11-04 11:40:44 +01:00
Manuel Pégourié-Gonnard
d10f42f5e6 Fix making the path of the outcomes file absolute.
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-30 09:52:36 +01:00
Manuel Pégourié-Gonnard
6ffebef9c4 New all.sh wrapper with reduced scope (CI only)
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-29 12:57:24 +01:00
Manuel Pégourié-Gonnard
a93f988779 all.sh: wrapper for both mbedtls and tf-psa-crypto
In order to avoid changing the CI job's definition (which fewer team
members understand, compared to shell scripts), just have a wrapper so
that all.sh does both mbedtls and tf-psa-crypto under the hood for now.

When tf-psa-crypto has its own CI running its own all.sh (with enough
components migrated to get sufficient coverage) we can remove this hack.

Rejected strategy: modify all-core.sh so that when running in mbedtls,
it also sources components-*.sh from tf-psa-crypto, remembers which
components come from Mbed TLS and which come from crypto, and magically
adjust the environment for each component it runs. Rejected because it's
hard to be confident we're adjusting everything that needs adjusting in
the environment. Having separate processes seems much safer.

The downside is we get more complexity around error handling (check for
components requested but not available, --keep-going). When using
--keep-going with failing component(s) in mbedtls and some components in
tf-psa-crypto, the output is not satisfying for humans as we don't have
a nice summary of all errors at the end like we normally would.

IMO this is acceptable since:
- this wrapper is transitional and should be removed in a few months;
- it is mainly for the benefit of the CI; humans can always invoke the
underlying commands directly.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-24 09:51:22 +02:00
Manuel Pégourié-Gonnard
8da0e9eef7 all.sh: rationalize relative path usage
In preparation for adding tf-psa-crypto/test/scripts/all.sh which will
run from tf-psa-crypto.

Use paths relative to the currently sourced file when including common
files (ie, those that will soon be moved to the framework). Otherwise,
use paths relative to the current directory, aka project's root.

Document that test/script/all.sh must be invoked from the project's root
(that was already the case, but implicit so far).

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-23 10:06:38 +02:00
Manuel Pégourié-Gonnard
7b556951f9 all.sh: document new file structure
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-10 10:13:19 +02:00
Manuel Pégourié-Gonnard
1cb8ee81f6 all.sh: move definitions to all-core.sh
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-10 10:13:18 +02:00
Manuel Pégourié-Gonnard
731128ce50 all.sh: wrap main code into main() function
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-10 10:13:17 +02:00
Manuel Pégourié-Gonnard
e953a7adac all.sh: move clang_version() to helpers file
This function is only used in (a few) components, it's not part of the core.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-10 10:13:17 +02:00
Manuel Pégourié-Gonnard
e6df2e4dbc all.sh: move component helpers to separate file
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-10 10:13:16 +02:00
Manuel Pégourié-Gonnard
84649feef5 all.sh: Move some functions to the right section
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-09 12:54:05 +02:00
Manuel Pégourié-Gonnard
8f08bcd603 all.sh: rename a helper function
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-09 12:54:05 +02:00
Manuel Pégourié-Gonnard
73e2b056ca all.sh: extract repeated code to a function
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-09 12:54:05 +02:00
Manuel Pégourié-Gonnard
78c7592755 all.sh: group psasim helpers
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-09 12:54:04 +02:00
Manuel Pégourié-Gonnard
9896e08f5e all.sh: rm obsolete functions
The only occurrences found by git grep were the definitions and the
comment saying these are kept for backwards compatibility.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-09 12:54:04 +02:00
Manuel Pégourié-Gonnard
f7325865bb all.sh: first define functions, then call them.
Don't interleave defining functions with running some code.

The only exception is calling shopt, which needs to come first as it
affects how the following function definitions are parsed.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2024-10-09 12:54:04 +02:00
Tom Cosgrove
195e1647b2
Merge pull request #9427 from valeriosetti/psasim-small-fixes
psasim: small fixes to all.sh and test bash scripts
2024-08-07 13:13:46 +00:00
Tom Cosgrove
2d5b17be03
Merge pull request #8609 from tom-daubney-arm/standardise_proj_detection
Standardise Project Detection in Shell Scripts
2024-08-07 07:18:36 +00:00
Thomas Daubney
b55679736b Move some proj detection code inside pre_check_environment
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-08-06 17:35:38 +01:00
Valerio Setti
2016d66741 psasim: small fixes to all.sh and test bash scripts
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2024-08-06 11:52:00 +02:00
Minos Galanakis
ce466f019a all.sh: Updated the component sourcing logic.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 19:38:47 +01:00
Minos Galanakis
dc0f73a5e2 components-configuration-crypto:Added component_test_no_rsa_key_pair_generation.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 19:08:58 +01:00
Minos Galanakis
96bf1822bf Extract psasim components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 19:08:58 +01:00
Minos Galanakis
ada21b09b5 Separate all.sh from components.
Signed-off-by: David Horstmann <david.horstmann@arm.com>
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 18:44:47 +01:00
Minos Galanakis
6aab5b7109 Created placeholder component files.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 18:44:47 +01:00
Thomas Daubney
bda3e46846 Check for file at script startup
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-07-30 15:52:58 +01:00
Thomas Daubney
b991ac2d90 Remove suprious whitespace
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-07-29 12:10:27 +01:00
Thomas Daubney
5e9ffa9096 Redirect error message to stderr
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-07-29 12:09:57 +01:00
Thomas Daubney
6a864dc5fe Add check for existence of project name file
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-07-26 17:31:46 +01:00
Ronald Cron
7262b47d79 all.sh: psasim: Start server in tf-psa-crypto/tests
Start a server in tf-psa-crypto/tests in addition to
tests to be able to run test suites from
tf-psa-crypto/tests.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-22 12:29:23 +02:00
Ronald Cron
0b796a42e6 psasim: Rename kill_server.sh to kill_servers.sh
Rename kill_server.sh to kill_servers.sh as it
kills all started PSA servers.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-22 12:29:23 +02:00
Ronald Cron
e0e26f7d8e psasim: Move file clean-up to all.sh
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-22 12:29:23 +02:00
Ronald Cron
635a2beb74 Adapt all.sh
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-19 10:07:27 +02:00
Ronald Cron
9027955afc all.sh: Move definitions of PSA core and builtin source paths
Move the definitions of PSA core and builtin
source paths to pre_initialize_variables
where they are merged with the definition
of the configuration file paths.

Add the 3.6 case by the way as
pre_initialize_variables is planned to
be in the all.sh part that will land in
mbedtls-framework at some point.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-10 08:10:40 +02:00
Ronald Cron
f37ff7f988 Adapt all.sh cleanup
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-10 08:10:40 +02:00
Ronald Cron
8280398095 Adapt all.sh cleanup
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-10 08:10:40 +02:00
Ronald Cron
5b41a655d5 all.sh: Update paths to PSA core modules and objects
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-10 08:10:40 +02:00
Ronald Cron
709bbf0ede all.sh: Update paths to builtin driver modules and objects
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-10 08:10:40 +02:00
Thomas Daubney
5edad7f89f Remove MBEDTLS_DHM_ALT
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-07-05 14:35:10 +01:00
Valerio Setti
d8b59373a0 all.sh: psasim helper functions renaming
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2024-07-02 15:45:55 +02:00
Valerio Setti
1a49383694 all.sh: exclude some extra slow test suites from psasim testing
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2024-07-02 15:45:55 +02:00
Valerio Setti
e134d0962a all.sh: remove old tests components on CRYPTO_CLIENT
Now that we have PSASIM we can really test CRYPTO_CLIENT
functionality and those functions are not needed anymore.

Moreover new test suites that are going to rely on
CRYPTO_CLIENT && !CRYPTO_C would be tested from
test_default_psa_crypto_client_without_crypto_provider()
leading to failures due to stub functions being empty.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2024-07-02 15:45:55 +02:00
Valerio Setti
9022f718b1 all.sh: add new component to run test suites with psasim
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2024-07-02 15:45:55 +02:00
Tom Cosgrove
c4dfc08464
Merge pull request #9310 from valeriosetti/psasim_more_aut_tests
psasim: complete support of PSA functions in `psasim` and add basic "smoke test" applications
2024-06-26 11:46:25 +00:00
Ronald Cron
f0481f562a
Merge pull request #9258 from tom-daubney-arm/drop_padlock_support
Drop support for VIA Padlock
2024-06-26 07:36:04 +00:00
Valerio Setti
5beb236835 psasim: merge all AUT programs into a single executable
This makes both building and testing much faster.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2024-06-25 14:15:30 +02:00
Ronald Cron
0417a2c746 Adapt component_test_when_no_ciphersuites_have_mac
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-06-19 09:45:01 +02:00
Ronald Cron
cd33cd6abf test_when_no_ciphersuites_have_mac: Fix logs
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-06-19 09:24:32 +02:00
Ronald Cron
cfce75f4c4 Remove component_test_full_no_bignum
Remove test_full_no_bignum as duplicate
of the test of the reference config
confgi-symmetric-only.h and
component_test_psa_crypto_config_accel_ecc_no_bignum().
Specifically, component_test_full_no_bignum was
added as part of preparation work for that component.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-06-19 09:24:32 +02:00
Ronald Cron
8dbea48958 Adapt test_full_no_cipher_ components
Adapt test_full_no_cipher_ components with
MBEDTLS_PSA_CRYPTO_CONFIG enabled.

Remove the component with no PSA crypto and
the one with MBEDTLS_PSA_CRYPTO_CONFIG disabled.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-06-19 09:13:52 +02:00