blob: 120084293740028e650af668b8b74cadd8f2b535 [file] [log] [blame]
Ron Eldorbf007d22016-12-15 14:42:37 +02001#!/bin/sh
Ron Eldord731eb82017-07-23 15:25:32 +03002# pre-push.sh
3#
Ron Eldord731eb82017-07-23 15:25:32 +03004# Copyright (c) 2017, ARM Limited, All Rights Reserved
Bence Szépkútif744bd72020-06-05 13:02:18 +02005# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
6#
7# This file is provided under the Apache License 2.0, or the
8# GNU General Public License v2.0 or later.
9#
10# **********
11# Apache License 2.0:
Bence Szépkúti51b41d52020-05-26 01:54:15 +020012#
13# Licensed under the Apache License, Version 2.0 (the "License"); you may
14# not use this file except in compliance with the License.
15# You may obtain a copy of the License at
16#
17# http://www.apache.org/licenses/LICENSE-2.0
18#
19# Unless required by applicable law or agreed to in writing, software
20# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
21# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22# See the License for the specific language governing permissions and
23# limitations under the License.
24#
Bence Szépkútif744bd72020-06-05 13:02:18 +020025# **********
26#
27# **********
28# GNU General Public License v2.0 or later:
29#
30# This program is free software; you can redistribute it and/or modify
31# it under the terms of the GNU General Public License as published by
32# the Free Software Foundation; either version 2 of the License, or
33# (at your option) any later version.
34#
35# This program is distributed in the hope that it will be useful,
36# but WITHOUT ANY WARRANTY; without even the implied warranty of
37# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
38# GNU General Public License for more details.
39#
40# You should have received a copy of the GNU General Public License along
41# with this program; if not, write to the Free Software Foundation, Inc.,
42# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
43#
44# **********
45#
Bence Szépkúti51b41d52020-05-26 01:54:15 +020046# This file is part of Mbed TLS (https://tls.mbed.org)
Ron Eldord731eb82017-07-23 15:25:32 +030047#
48# Purpose
49#
Ron Eldorbf007d22016-12-15 14:42:37 +020050# Called by "git push" after it has checked the remote status, but before anything has been
51# pushed. If this script exits with a non-zero status nothing will be pushed.
Ron Eldord731eb82017-07-23 15:25:32 +030052# This script can also be used independently, not using git.
Ron Eldorbf007d22016-12-15 14:42:37 +020053#
54# This hook is called with the following parameters:
55#
56# $1 -- Name of the remote to which the push is being done
57# $2 -- URL to which the push is being done
58#
59# If pushing without using a named remote those arguments will be equal.
60#
61# Information about the commits which are being pushed is supplied as lines to
62# the standard input in the form:
63#
64# <local ref> <local sha1> <remote ref> <remote sha1>
65#
Ron Eldorbf007d22016-12-15 14:42:37 +020066
67REMOTE="$1"
68URL="$2"
69
70echo "REMOTE is $REMOTE"
71echo "URL is $URL"
72
Ron Eldord731eb82017-07-23 15:25:32 +030073set -eu
74
Ron Eldorbf007d22016-12-15 14:42:37 +020075run_test()
76{
77 TEST=$1
78 echo "running '$TEST'"
79 if ! `$TEST > /dev/null 2>&1`; then
80 echo "test '$TEST' failed"
81 return 1
82 fi
83}
84
85run_test ./tests/scripts/check-doxy-blocks.pl
86run_test ./tests/scripts/check-names.sh
87run_test ./tests/scripts/check-generated-files.sh
Darryl Green2699de32018-05-21 11:40:22 +010088run_test ./tests/scripts/check-files.py
Ron Eldorb0ef4342018-04-01 17:43:26 +030089run_test ./tests/scripts/doxygen.sh