diff options
author | Nils Adermann <naderman@naderman.de> | 2014-08-09 15:19:27 +0200 |
---|---|---|
committer | Nils Adermann <naderman@naderman.de> | 2014-08-09 15:19:27 +0200 |
commit | 051466106ade99f2c1902e4bfd43c30dcb1a132f (patch) | |
tree | cb726e1bca02cccafe0fb8b421bd34e921c6780c /travis/check-executable-files.sh | |
parent | 20b8ea947c656382871831ee83acd5de8fcd5040 (diff) | |
parent | 079f1e2f41c8eb221dc4072d7ac558c4ff77f773 (diff) | |
download | forums-051466106ade99f2c1902e4bfd43c30dcb1a132f.tar forums-051466106ade99f2c1902e4bfd43c30dcb1a132f.tar.gz forums-051466106ade99f2c1902e4bfd43c30dcb1a132f.tar.bz2 forums-051466106ade99f2c1902e4bfd43c30dcb1a132f.tar.xz forums-051466106ade99f2c1902e4bfd43c30dcb1a132f.zip |
Merge remote-tracking branch 'github-nicofuma/ticket/12693' into develop-ascraeus
* github-nicofuma/ticket/12693:
[ticket/12693] Fix composer.phar path
[ticket/12693] The files skipped list can not be empty
[ticket/12693] Force the composer.phar to be executable
[ticket/12693] All the files in bin/ must be executable
[ticket/12693] Expand manually the wildcard
[ticket/12693] Fix the query for bin/*
[ticket/12693] Extract exceptions, bin/* must be executable
[ticket/12693] Remove the executable bit on icon_print.gif
[ticket/12693] Check the persmissions of the owner
[ticket/12693] Check if the are executable and not if they are 644
[ticket/12693] Fix the permissions
[ticket/12693] Check if the files have the right 644
[ticket/12693] Fix indentation
[ticket/12693] Add a travis test that checks file permissions
Diffstat (limited to 'travis/check-executable-files.sh')
-rwxr-xr-x | travis/check-executable-files.sh | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/travis/check-executable-files.sh b/travis/check-executable-files.sh new file mode 100755 index 0000000000..1d8b33d327 --- /dev/null +++ b/travis/check-executable-files.sh @@ -0,0 +1,68 @@ +#!/bin/bash +# +# This file is part of the phpBB Forum Software package. +# +# @copyright (c) phpBB Limited <https://www.phpbb.com> +# @license GNU General Public License, version 2 (GPL-2.0) +# +# For full copyright and license information, please see +# the docs/CREDITS.txt file. +# +set -e + +DB=$1 +TRAVIS_PHP_VERSION=$2 +root="$3" +path="${root}phpBB/" + +if [ "$TRAVIS_PHP_VERSION" == "5.3.3" -a "$DB" == "mysqli" ] +then + # Check the permissions of the files + + # The following variables MUST NOT contain any wildcard + # Directories to skip + directories_skipped="-path ${path}develop -o -path ${path}vendor" + + # Files to skip + files_skipped="-false" + + # Files which have to be executable + executable_files="-path ${path}bin/* -o -path ${root}composer.phar" + + incorrect_files=$( \ + find ${path} \ + '(' \ + '(' \ + ${directories_skipped} \ + ')' \ + -a -type d -prune -a -type f \ + ')' -o \ + '(' \ + -type f -a \ + -not '(' \ + ${files_skipped} \ + ')' -a \ + '(' \ + '(' \ + '(' \ + ${executable_files} \ + ')' -a \ + -not -perm +100 \ + ')' -o \ + '(' \ + -not '(' \ + ${executable_files} \ + ')' -a \ + -perm +111 \ + ')' \ + ')' \ + ')' \ + ) + + if [ "${incorrect_files}" != '' ] + then + echo "The following files do not have proper permissions:"; + ls -la ${incorrect_files} + exit 1; + fi +fi |