diff options
Diffstat (limited to 'build')
-rw-r--r-- | build/integration/features/provisioning-v1.feature | 1 | ||||
-rwxr-xr-x | build/integration/run.sh | 9 | ||||
-rw-r--r-- | build/license.php | 66 | ||||
-rw-r--r-- | build/package.json | 2 |
4 files changed, 68 insertions, 10 deletions
diff --git a/build/integration/features/provisioning-v1.feature b/build/integration/features/provisioning-v1.feature index d44903c2743..1e0df08a631 100644 --- a/build/integration/features/provisioning-v1.feature +++ b/build/integration/features/provisioning-v1.feature @@ -282,6 +282,7 @@ Feature: provisioning Then the OCS status code should be "100" And the HTTP status code should be "200" And apps returned are + | admin_audit | | comments | | dav | | federatedfilesharing | diff --git a/build/integration/run.sh b/build/integration/run.sh index 5a222bda3e3..3725ba1af6f 100755 --- a/build/integration/run.sh +++ b/build/integration/run.sh @@ -1,5 +1,14 @@ #!/usr/bin/env bash +COMPOSER=$(which composer) + +if [ -x "$COMPOSER" ]; then + echo "Using composer executable $COMPOSER" +else + echo "Could not find composer executable" >&2 + exit 1 +fi + composer install SCENARIO_TO_RUN=$1 diff --git a/build/license.php b/build/license.php index 493c7dafd98..bed3854925f 100644 --- a/build/license.php +++ b/build/license.php @@ -29,6 +29,27 @@ class Licenses /** @AUTHORS@ * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +EOD; + $this->licenseTextLegacy = <<<EOD +/** +@AUTHORS@ + * * @copyright Copyright (c) @YEAR@, ownCloud, Inc. * @license AGPL-3.0 * @@ -46,7 +67,7 @@ class Licenses * */ EOD; - $this->licenseText = str_replace('@YEAR@', date("Y"), $this->licenseText); + $this->licenseTextLegacy = str_replace('@YEAR@', date("Y"), $this->licenseTextLegacy); } /** @@ -118,10 +139,15 @@ With help from many libraries and frameworks including: echo "MIT licensed file: $path" . PHP_EOL; return; } - $source = $this->eatOldLicense($source); - $authors = $this->getAuthors($path, $gitRoot); - $license = str_replace('@AUTHORS@', $authors, $this->licenseText); + if ($this->isOwnCloudLicensed($source)) { + $authors = $this->getAuthors($path, $gitRoot, true); + $license = str_replace('@AUTHORS@', $authors, $this->licenseTextLegacy); + } else { + $authors = $this->getAuthors($path, $gitRoot); + $license = str_replace('@AUTHORS@', $authors, $this->licenseText); + } + $source = $this->eatOldLicense($source); $source = "<?php" . PHP_EOL . $license . PHP_EOL . $source; file_put_contents($path,$source); echo "License updated: $path" . PHP_EOL; @@ -143,6 +169,19 @@ With help from many libraries and frameworks including: return false; } + private function isOwnCloudLicensed($source) { + $lines = explode(PHP_EOL, $source); + while(!empty($lines)) { + $line = $lines[0]; + array_shift($lines); + if (strpos($line, 'ownCloud, Inc') !== false) { + return true; + } + } + + return false; + } + /** * @param string $source * @return string @@ -177,7 +216,7 @@ With help from many libraries and frameworks including: return implode(PHP_EOL, $lines); } - private function getAuthors($file, $gitRoot) { + private function getAuthors($file, $gitRoot, $legacyFiles = false) { // only add authors that changed code and not the license header $licenseHeaderEndsAtLine = trim(shell_exec("grep -n '*/' $file | head -n 1 | cut -d ':' -f 1")); $buildDir = getcwd(); @@ -205,10 +244,19 @@ With help from many libraries and frameworks including: $authors = array_unique($authors); } - $authors = array_map(function($author){ - $this->authors[$author] = $author; - return " * @author $author"; - }, $authors); + if ($legacyFiles) { + $authors = array_map(function($author){ + $this->authors[$author] = $author; + return " * @author $author"; + }, $authors); + } else { + $authors = array_map(function($author){ + $this->authors[$author] = $author; + return " * @copyright Copyright (c) " . date("Y") . ", $author"; + }, $authors); + } + + return implode(PHP_EOL, $authors); } diff --git a/build/package.json b/build/package.json index f5a637171ed..df26ba97785 100644 --- a/build/package.json +++ b/build/package.json @@ -16,7 +16,7 @@ "karma-junit-reporter": "*", "karma-coverage": "*", "karma-phantomjs-launcher": "*", - "phantomjs": "*", + "phantomjs-prebuilt": "*", "jasmine-core": "~2.3.4" }, "engine": "node >= 0.8" |