Update after @sbutcher-arm comments

1. Move the scripts to test/git-scripts folder
2. Support the script to run independant, not only with git
3. modify Readme accordingly
This commit is contained in:
Ron Eldor 2017-07-23 15:25:32 +03:00 committed by Simon Butcher
parent 50bdf74b5c
commit d731eb8f55
2 changed files with 15 additions and 4 deletions

View file

@ -4,11 +4,13 @@ git has a way to run scripts, which are invoked by specific git commands.
The git hooks are located in `<mbed TLS root>/.git/hooks`, and as such are not under version control The git hooks are located in `<mbed TLS root>/.git/hooks`, and as such are not under version control
for more information, see the [git documentation](https://git-scm.com/docs/githooks). for more information, see the [git documentation](https://git-scm.com/docs/githooks).
The mbed TLS git hooks are located in `<mbed TLS root>/git_hooks` directory, and one must create a soft link from `<mbed TLS root>/.git/hooks` to `<mbed TLS root>/git_hooks`, in order to make the hook scripts successfully work. The mbed TLS git hooks are located in `<mbed TLS root>/test/git-scripts` directory, and one must create a soft link from `<mbed TLS root>/.git/hooks` to `<mbed TLS root>/test/git-scripts`, in order to make the hook scripts successfully work.
Example: Example:
Execute the following command to create a link on linux from the mbed TLS `.git/hooks` directory: Execute the following command to create a link on linux from the mbed TLS `.git/hooks` directory:
`ln -s ../../git_hooks/pre-push pre-push` `ln -s ../../test/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!** **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.

View file

@ -1,7 +1,15 @@
#!/bin/sh #!/bin/sh
# pre-push.sh
#
# This file is part of mbed TLS (https://tls.mbed.org)
#
# Copyright (c) 2017, ARM Limited, All Rights Reserved
#
# Purpose
#
# Called by "git push" after it has checked the remote status, but before anything has been # 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. # 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: # This hook is called with the following parameters:
# #
@ -15,7 +23,6 @@
# #
# <local ref> <local sha1> <remote ref> <remote sha1> # <local ref> <local sha1> <remote ref> <remote sha1>
# #
set -eu
REMOTE="$1" REMOTE="$1"
URL="$2" URL="$2"
@ -23,6 +30,8 @@ URL="$2"
echo "REMOTE is $REMOTE" echo "REMOTE is $REMOTE"
echo "URL is $URL" echo "URL is $URL"
set -eu
run_test() run_test()
{ {
TEST=$1 TEST=$1