From 0344c602eadc0802776b65ff90f0a02c856cf53c Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Tue, 8 Oct 2024 13:56:50 -0600 Subject: Squashed 'lib/mbedtls/external/mbedtls/' content from commit 2ca6c285a0dd git-subtree-dir: lib/mbedtls/external/mbedtls git-subtree-split: 2ca6c285a0dd3f33982dd57299012dacab1ff206 --- tests/git-scripts/README.md | 16 ++++++++++++++++ tests/git-scripts/pre-push.sh | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 tests/git-scripts/README.md create mode 100755 tests/git-scripts/pre-push.sh (limited to 'tests/git-scripts') diff --git a/tests/git-scripts/README.md b/tests/git-scripts/README.md new file mode 100644 index 00000000000..23db168c37e --- /dev/null +++ b/tests/git-scripts/README.md @@ -0,0 +1,16 @@ +README for git hooks script +=========================== +git has a way to run scripts, which are invoked by specific git commands. +The git hooks are located in `/.git/hooks`, and as such are not under version control +for more information, see the [git documentation](https://git-scm.com/docs/githooks). + +The Mbed TLS git hooks are located in `/tests/git-scripts` directory, and one must create a soft link from `/.git/hooks` to `/tests/git-scripts`, in order to make the hook scripts successfully work. + +Example: + +Execute the following command to create a link on Linux from the Mbed TLS `.git/hooks` directory: +`ln -s ../../tests/git-scripts/pre-push.sh pre-push` + +**Note: Currently the Mbed TLS git hooks work only on a GNU platform. If using a non-GNU platform, don't enable these hooks!** + +These scripts can also be used independently. diff --git a/tests/git-scripts/pre-push.sh b/tests/git-scripts/pre-push.sh new file mode 100755 index 00000000000..9192678a5c1 --- /dev/null +++ b/tests/git-scripts/pre-push.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# pre-push.sh +# +# Copyright The Mbed TLS Contributors +# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later +# +# Purpose +# +# Called by "git push" after it has checked the remote status, but before anything has been +# pushed. If this script exits with a non-zero status nothing will be pushed. +# This script can also be used independently, not using git. +# +# This hook is called with the following parameters: +# +# $1 -- Name of the remote to which the push is being done +# $2 -- URL to which the push is being done +# +# If pushing without using a named remote those arguments will be equal. +# +# Information about the commits which are being pushed is supplied as lines to +# the standard input in the form: +# +# +# + +REMOTE="$1" +URL="$2" + +echo "REMOTE is $REMOTE" +echo "URL is $URL" + +set -eu + +tests/scripts/all.sh -q -k 'check_*' -- cgit v1.2.3