From 929ea0a6e7ef8cac70f2d0540df11369e4beb0a2 Mon Sep 17 00:00:00 2001 From: Norman Steger <norman.steger@slub-dresden.de> Date: Thu, 26 Jan 2023 11:13:19 +0100 Subject: [PATCH] remove gitlab ci --- .Build/.htaccess | 1 - .Build/gitlab-ci/README.md | 65 --------- .Build/gitlab-ci/extension-gitlab-ci.yml | 33 ----- .Build/gitlab-ci/php-cs-fixer/Extension.php | 101 -------------- .Build/gitlab-ci/php-cs-fixer/Project.php | 0 .Build/gitlab-ci/project-gitlab-ci.yml | 0 .Build/gitlab-ci/typo3-rector/Extension.php | 96 -------------- .Build/gitlab-ci/typo3-rector/Project.php | 0 .../gitlab-ci/typoscript-lint/Extension.yml | 22 ---- .Build/gitlab-ci/typoscript-lint/Project.yml | 0 .Build/grunt/Gruntfile.js | 124 ------------------ .Build/grunt/README.md | 31 ----- .Build/grunt/package.json | 28 ---- 13 files changed, 501 deletions(-) delete mode 100644 .Build/.htaccess delete mode 100644 .Build/gitlab-ci/README.md delete mode 100644 .Build/gitlab-ci/extension-gitlab-ci.yml delete mode 100644 .Build/gitlab-ci/php-cs-fixer/Extension.php delete mode 100644 .Build/gitlab-ci/php-cs-fixer/Project.php delete mode 100644 .Build/gitlab-ci/project-gitlab-ci.yml delete mode 100644 .Build/gitlab-ci/typo3-rector/Extension.php delete mode 100644 .Build/gitlab-ci/typo3-rector/Project.php delete mode 100644 .Build/gitlab-ci/typoscript-lint/Extension.yml delete mode 100644 .Build/gitlab-ci/typoscript-lint/Project.yml delete mode 100644 .Build/grunt/Gruntfile.js delete mode 100644 .Build/grunt/README.md delete mode 100644 .Build/grunt/package.json diff --git a/.Build/.htaccess b/.Build/.htaccess deleted file mode 100644 index b66e808..0000000 --- a/.Build/.htaccess +++ /dev/null @@ -1 +0,0 @@ -Require all denied diff --git a/.Build/gitlab-ci/README.md b/.Build/gitlab-ci/README.md deleted file mode 100644 index 17d5752..0000000 --- a/.Build/gitlab-ci/README.md +++ /dev/null @@ -1,65 +0,0 @@ - -# use as git subtree (preferred) - -## add gitlab-ci to your extension -``` -git subtree add --prefix .Build/gitlab-ci https://git.slub-dresden.de/typo3/gitlab-ci.git main --squash -``` - -## add a .gitlab-ci.yml to your extension root, with this content -``` -include: - - local: '.Build/gitlab-ci/extension-gitlab-ci.yml' -``` - -## pull from remote -``` -git subtree pull --prefix .Build/gitlab-ci https://git.slub-dresden.de/typo3/gitlab-ci.git main --squash -``` -## push from remote -``` -git subtree push --prefix .Build/gitlab-ci https://git.slub-dresden.de/typo3/gitlab-ci.git main -``` -# use from remote repository - -## add a .gitlab-ci.yml to your extension root, with this content -``` -include: - - remote: 'https://git.slub-dresden.de/typo3/gitlab-ci/-/raw/main/extension-gitlab-ci.yml' -``` - -## create a .gitignore in your extension root, with this content -``` -composer.lock -/vendor -/public -.php_cs.cache -``` -# use rector local -``` -composer require --dev ssch/typo3-rector -``` -## run rector -``` -./vendor/bin/rector process . --config .Build/gitlab-ci/typo3-rector/Extension.php -``` - -# use php-cs-fixer local -``` -composer require --dev friendsofphp/php-cs-fixer -``` - -## run php-cs-fixer -``` -./vendor/bin/php-cs-fixer fix --config .Build/gitlab-ci/php-cs-fixer/Extension.php -``` - -# use typo3-typoscript-lint local -``` -composer require --dev helmich/typo3-typoscript-lint -``` - -## run php-cs-fixer -``` -vendor/bin/typoscript-lint -c .Build/gitlab-ci/typoscript-lint/Extension.yml --fail-on-warnings -``` diff --git a/.Build/gitlab-ci/extension-gitlab-ci.yml b/.Build/gitlab-ci/extension-gitlab-ci.yml deleted file mode 100644 index 47531c8..0000000 --- a/.Build/gitlab-ci/extension-gitlab-ci.yml +++ /dev/null @@ -1,33 +0,0 @@ - -stages: - - test -"PHP CS Fixer": - stage: test - image: ekreative/php-cs-fixer:3 - script: - - php-cs-fixer fix --dry-run --config=.php-cs-fixer/Extension.php --diff --format=junit > php-report.xml - tags: - - docker - artifacts: - expire_in: 2 hours - reports: - junit: - - php-report.xml -"PHP Rector": - stage: test - image: composer:2 - tags: - - docker - before_script: - - composer global req ssch/typo3-rector - script: - - /tmp/vendor/bin/rector process . --config .typo3-rector/Extension.php --dry-run -"TypoScript Linter": - stage: test - image: composer:2 - tags: - - docker - before_script: - - composer global req helmich/typo3-typoscript-lint - script: - - /tmp/vendor/bin/typoscript-lint -c .typoscript-lint/Extension.yml --fail-on-warnings \ No newline at end of file diff --git a/.Build/gitlab-ci/php-cs-fixer/Extension.php b/.Build/gitlab-ci/php-cs-fixer/Extension.php deleted file mode 100644 index 92d273e..0000000 --- a/.Build/gitlab-ci/php-cs-fixer/Extension.php +++ /dev/null @@ -1,101 +0,0 @@ -<?php -/* - * This file is part of the TYPO3 CMS project. - * - * It is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License, either version 2 - * of the License, or any later version. - * - * For the full copyright and license information, please read the - * LICENSE.txt file that was distributed with this source code. - * - * The TYPO3 project - inspiring people to share! - */ -/** - * This file represents the configuration for Code Sniffing PSR-2-related - * automatic checks of coding guidelines - * Install @fabpot's great php-cs-fixer tool via - * - * $ composer global require friendsofphp/php-cs-fixer - * - * And then simply run - * - * $ ./bin/php-cs-fixer fix --config ./Build/gitlab-ci/php-cs-fixer/Extension.php - * - * inside the TYPO3 directory. Warning: This may take up to 10 minutes. - * - * For more information read: - * https://www.php-fig.org/psr/psr-2/ - * https://cs.sensiolabs.org - */ -if (PHP_SAPI !== 'cli') { - die('This script supports command line usage only. Please check your command.'); -} -// Define in which folders to search and which folders to exclude -// Exclude all files and directories from .gitignore -$finder = (new PhpCsFixer\Finder()) - ->ignoreVCSIgnored(true) - ->in(realpath(__DIR__ . '/../../../')); -// Return a Code Sniffing configuration using -// all sniffers needed for PSR-2 -// and additionally: -// - Remove leading slashes in use clauses. -// - PHP single-line arrays should not have trailing comma. -// - Single-line whitespace before closing semicolon are prohibited. -// - Remove unused use statements in the PHP source code -// - Ensure Concatenation to have at least one whitespace around -// - Remove trailing whitespace at the end of blank lines. -return (new \PhpCsFixer\Config()) - ->setRiskyAllowed(true) - ->setRules([ - '@DoctrineAnnotation' => true, - '@PSR2' => true, - 'array_syntax' => ['syntax' => 'short'], - 'blank_line_after_opening_tag' => false, - 'braces' => ['allow_single_line_closure' => true], - 'cast_spaces' => ['space' => 'none'], - 'compact_nullable_typehint' => true, - 'concat_space' => ['spacing' => 'one'], - 'declare_equal_normalize' => ['space' => 'none'], - 'dir_constant' => true, - 'function_typehint_space' => true, - 'lowercase_cast' => true, - 'method_argument_space' => ['on_multiline' => 'ensure_fully_multiline'], - 'modernize_types_casting' => true, - 'native_function_casing' => true, - 'new_with_braces' => true, - 'no_alias_functions' => true, - 'no_blank_lines_after_phpdoc' => true, - 'no_empty_phpdoc' => true, - 'no_empty_statement' => true, - 'no_extra_blank_lines' => true, - 'no_leading_import_slash' => true, - 'no_leading_namespace_whitespace' => true, - 'no_null_property_initialization' => true, - 'no_short_bool_cast' => true, - 'no_singleline_whitespace_before_semicolons' => true, - 'no_superfluous_elseif' => true, - 'no_trailing_comma_in_singleline_array' => true, - 'no_unneeded_control_parentheses' => true, - 'no_unused_imports' => true, - 'no_useless_else' => true, - 'no_whitespace_in_blank_line' => true, - 'ordered_imports' => true, - 'php_unit_construct' => ['assertions' => ['assertEquals', 'assertSame', 'assertNotEquals', 'assertNotSame']], - 'php_unit_mock_short_will_return' => true, - 'php_unit_test_case_static_method_calls' => ['call_type' => 'self'], - 'phpdoc_no_access' => true, - 'phpdoc_no_empty_return' => true, - 'phpdoc_no_package' => true, - 'phpdoc_scalar' => true, - 'phpdoc_trim' => true, - 'phpdoc_types' => true, - 'phpdoc_types_order' => ['null_adjustment' => 'always_last', 'sort_algorithm' => 'none'], - 'return_type_declaration' => ['space_before' => 'none'], - 'single_quote' => true, - 'single_line_comment_style' => ['comment_types' => ['hash']], - 'single_trait_insert_per_statement' => true, - 'trailing_comma_in_multiline' => ['elements' => ['arrays']], - 'whitespace_after_comma_in_array' => true, - ]) - ->setFinder($finder); diff --git a/.Build/gitlab-ci/php-cs-fixer/Project.php b/.Build/gitlab-ci/php-cs-fixer/Project.php deleted file mode 100644 index e69de29..0000000 diff --git a/.Build/gitlab-ci/project-gitlab-ci.yml b/.Build/gitlab-ci/project-gitlab-ci.yml deleted file mode 100644 index e69de29..0000000 diff --git a/.Build/gitlab-ci/typo3-rector/Extension.php b/.Build/gitlab-ci/typo3-rector/Extension.php deleted file mode 100644 index 63f4c00..0000000 --- a/.Build/gitlab-ci/typo3-rector/Extension.php +++ /dev/null @@ -1,96 +0,0 @@ -<?php - -declare(strict_types=1); - -use Rector\Config\RectorConfig; -use Rector\Core\Configuration\Option; -use Rector\Core\ValueObject\PhpVersion; -use Rector\PostRector\Rector\NameImportingPostRector; -use Ssch\TYPO3Rector\Configuration\Typo3Option; -use Ssch\TYPO3Rector\Rector\General\ConvertImplicitVariablesToExplicitGlobalsRector; -use Ssch\TYPO3Rector\Rector\General\ExtEmConfRector; -use Ssch\TYPO3Rector\Set\Typo3LevelSetList; - -return static function (RectorConfig $rectorConfig): void { - - // If you want to override the number of spaces for your typoscript files you can define it here, the default value is 4 - // $parameters = $rectorConfig->parameters(); - // $parameters->set(Typo3Option::TYPOSCRIPT_INDENT_SIZE, 2); - - $rectorConfig->sets([ - Typo3LevelSetList::UP_TO_TYPO3_9, - Typo3LevelSetList::UP_TO_TYPO3_10, - Typo3LevelSetList::UP_TO_TYPO3_11, - ]); - - // Define your target version which you want to support - $rectorConfig->phpVersion(PhpVersion::PHP_74); - - // If you only want to process one/some TYPO3 extension(s), you can specify its path(s) here. - // If you use the option --config change __DIR__ to getcwd() - // $rectorConfig->paths([ - // __DIR__ . '/packages/acme_demo/', - // ]); - - // When you use rector there are rules that require some more actions like creating UpgradeWizards for outdated TCA types. - // To fully support you we added some warnings. So watch out for them. - - // If you use importNames(), you should consider excluding some TYPO3 files. - $rectorConfig->skip([ - // @see https://github.com/sabbelasichon/typo3-rector/issues/2536 - getcwd() . '/**/Configuration/ExtensionBuilder/*', - // We skip those directories on purpose as there might be node_modules or similar - // that include typescript which would result in false positive processing - getcwd() . '/**/Resources/**/node_modules/*', - getcwd() . '/**/Resources/**/NodeModules/*', - getcwd() . '/**/Resources/**/BowerComponents/*', - getcwd() . '/**/Resources/**/bower_components/*', - getcwd() . '/**/Resources/**/build/*', - getcwd() . '/vendor/*', - getcwd() . '/Build/*', - getcwd() . '/public/*', - getcwd() . '/.github/*', - getcwd() . '/.Build/*', - NameImportingPostRector::class => [ - 'ext_localconf.php', - 'ext_tables.php', - 'ClassAliasMap.php', - getcwd() . '/**/Configuration/*.php', - getcwd() . '/**/Configuration/**/*.php', - ] - ]); - - // If you have trouble that rector cannot run because some TYPO3 constants are not defined add an additional constants file - // @see https://github.com/sabbelasichon/typo3-rector/blob/master/typo3.constants.php - // @see https://github.com/rectorphp/rector/blob/main/docs/static_reflection_and_autoload.md#include-files - // $parameters->set(Option::BOOTSTRAP_FILES, [ - // __DIR__ . '/typo3.constants.php' - // ]); - - // register a single rule - // $rectorConfig->rule(\Ssch\TYPO3Rector\Rector\v9\v0\InjectAnnotationRector::class); - - /** - * Useful rule from RectorPHP itself to transform i.e. GeneralUtility::makeInstance('TYPO3\CMS\Core\Log\LogManager') - * to GeneralUtility::makeInstance(\TYPO3\CMS\Core\Log\LogManager::class) calls. - * But be warned, sometimes it produces false positives (edge cases), so watch out - */ - // $rectorConfig->rule(\Rector\Php55\Rector\String_\StringClassNameToClassConstantRector::class); - - // Optional non-php file functionalities: - // @see https://github.com/sabbelasichon/typo3-rector/blob/main/docs/beyond_php_file_processors.md - - // Rewrite your extbase persistence class mapping from typoscript into php according to official docs. - // This processor will create a summarized file with all the typoscript rewrites combined into a single file. - /* $rectorConfig->ruleWithConfiguration(\Ssch\TYPO3Rector\FileProcessor\TypoScript\Rector\v10\v0\ExtbasePersistenceTypoScriptRector::class, [ - \Ssch\TYPO3Rector\FileProcessor\TypoScript\Rector\v10\v0\ExtbasePersistenceTypoScriptRector::FILENAME => __DIR__ . '/packages/acme_demo/Configuration/Extbase/Persistence/Classes.php', - ]); */ - // Add some general TYPO3 rules - $rectorConfig->rule(ConvertImplicitVariablesToExplicitGlobalsRector::class); - $rectorConfig->ruleWithConfiguration(ExtEmConfRector::class, [ - ExtEmConfRector::ADDITIONAL_VALUES_TO_BE_REMOVED => [] - ]); - - // Modernize your TypoScript include statements for files and move from <INCLUDE /> to @import use the FileIncludeToImportStatementVisitor (introduced with TYPO3 9.0) - // $rectorConfig->rule(\Ssch\TYPO3Rector\FileProcessor\TypoScript\Rector\v9\v0\FileIncludeToImportStatementTypoScriptRector::class); -}; diff --git a/.Build/gitlab-ci/typo3-rector/Project.php b/.Build/gitlab-ci/typo3-rector/Project.php deleted file mode 100644 index e69de29..0000000 diff --git a/.Build/gitlab-ci/typoscript-lint/Extension.yml b/.Build/gitlab-ci/typoscript-lint/Extension.yml deleted file mode 100644 index 6f9c51b..0000000 --- a/.Build/gitlab-ci/typoscript-lint/Extension.yml +++ /dev/null @@ -1,22 +0,0 @@ -paths: - - Configuration/ -filePatterns: - - "*.tsconfig" - - "*.typoscript" - - "ext_typoscript_*.txt" - - "setup.txt" - - "constants.txt" -sniffs: - - class: Indentation - parameters: - useSpaces: true - indentPerLevel: 2 - indentConditions: false - - class: DeadCode - - class: OperatorWhitespace - - class: RepeatingRValue - disabled: true - - class: EmptySection - - class: NestingConsistency - parameters: - commonPathPrefixThreshold: 1 diff --git a/.Build/gitlab-ci/typoscript-lint/Project.yml b/.Build/gitlab-ci/typoscript-lint/Project.yml deleted file mode 100644 index e69de29..0000000 diff --git a/.Build/grunt/Gruntfile.js b/.Build/grunt/Gruntfile.js deleted file mode 100644 index 321cb20..0000000 --- a/.Build/grunt/Gruntfile.js +++ /dev/null @@ -1,124 +0,0 @@ -const sass = require('node-sass'); - -module.exports = function(grunt) { - - /** - * Project configuration. - */ - grunt.initConfig({ - pkg: grunt.file.readJSON('package.json'), - paths: { - root: '../../', - resources: '<%= paths.root %>Resources/', - sass: '<%= paths.resources %>Public/Scss/', - css: '<%= paths.resources %>Public/Css/', - fonts: '<%= paths.resources %>Public/Fonts/', - img: '<%= paths.resources %>Public/Images/', - js: '<%= paths.resources %>Public/JavaScript/' - }, - banner: '/*!\n' + - ' * SLUB Web Bison v<%= pkg.version %> (<%= pkg.homepage %>)\n' + - ' * Copyright 2023-<%= grunt.template.today("yyyy") %> <%= pkg.author %>\n' + - ' * Licensed under the <%= pkg.license %> license\n' + - ' */\n', - uglify: { - all: { - options: { - banner: '<%= banner %>', - mangle: true, - compress: true, - beautify: false - }, - files: { - "<%= paths.js %>/Dist/scripts.js": [ - "<%= paths.js %>Src/main.js" - ] - } - } - }, - sass: { - options: { - implementation: sass, - outputStyle: 'expanded', - precision: 8, - sourceMap: false - }, - layout: { - files: { - '<%= paths.css %>layout.css': '<%= paths.sass %>layout.scss' - } - } - }, - postcss: { - options: { - map: false, - processors: [ - require('autoprefixer')({ - browsers: [ - 'Last 2 versions', - 'Firefox ESR', - 'IE 9' - ] - }) - ] - }, - layout: { - src: '<%= paths.css %>layout.css' - } - }, - cssmin: { - options: { - keepSpecialComments: '*', - advanced: false - }, - layout: { - src: '<%= paths.css %>layout.css', - dest: '<%= paths.css %>layout.min.css' - } - }, - imagemin: { - extension: { - files: [{ - expand: true, - cwd: '<%= paths.resources %>', - src: [ - '**/*.{png,jpg,gif}' - ], - dest: '<%= paths.resources %>' - }] - } - }, - watch: { - options: { - livereload: true - }, - sass: { - files: '<%= paths.sass %>**/*.scss', - tasks: ['css'] - }, - javascript: { - files: '<%= paths.js %>Src/**/*.js', - tasks: ['js'] - } - } - }); - - /** - * Register tasks - // */ - grunt.loadNpmTasks('grunt-contrib-cssmin'); - grunt.loadNpmTasks('grunt-contrib-uglify'); - grunt.loadNpmTasks('grunt-contrib-watch'); - grunt.loadNpmTasks('grunt-contrib-imagemin'); - grunt.loadNpmTasks('grunt-postcss'); - grunt.loadNpmTasks('grunt-sass'); - - /** - * Grunt update task - */ - grunt.registerTask('css', ['sass', 'postcss', 'cssmin']); - grunt.registerTask('js', ['uglify']); - grunt.registerTask('build', ['js', 'css', 'imagemin']); - grunt.registerTask('default', ['build']); - -}; diff --git a/.Build/grunt/README.md b/.Build/grunt/README.md deleted file mode 100644 index e1e5430..0000000 --- a/.Build/grunt/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# Frontend development (based on Grunt) - -This extension comes with a [Grunt](https://gruntjs.com/) setup which uses some typical [NPM packages](https://www.npmjs.com/) like jshint, uglify, less aso. - -You can simply get it running by installing the local needings of NPM with - -``` -npm install --save-dev -``` -on your command line from the source folder of this extension. - -After that, just type -``` -grunt -``` -to start the processing which watches all the LESS and JS folders to generate new asset files on the fly if anythings changes. - -## Auto-Update NPM dependencies - -We recommend [setting up a post-merge hook](https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks) in your repository to auto-update NPM dependencies. Simply create the post-merge file with the following content in the `.git/hooks` directory of the repository. Make sure the file is executable. - -``` -changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)" -check_run() { - echo "$changed_files" | grep --quiet "$1" && eval "$2" -} - -check_run package.json "npm install --save-dev" -``` - -This hook will check for changes in the `package.json` and will run `npm install` to update the installed dependencies accordingly. Withhout this hook you have to do this manually after changes to package.json have been made to stay up-to-date. diff --git a/.Build/grunt/package.json b/.Build/grunt/package.json deleted file mode 100644 index b46dbad..0000000 --- a/.Build/grunt/package.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "slub-dresden-slub-web-bison", - "description": "TYPO3 Sitepackage for B!SON - Bibliometric and Semantic Open Access Recommender Network", - "repository": { - "type": "git", - "url": "https://git.slub-dresden.de/slub_web_bison" - }, - "homepage": "https://www.slub-dresden.de", - "author": "SLUB TYPO3 Team", - "version": "1.0.0", - "license": "GPL-2.0-or-later", - "devDependencies": { - "grunt": "^1.0.4", - "grunt-contrib-cssmin": "^3.0.0", - "grunt-contrib-uglify": "^4.0.1", - "grunt-contrib-watch": "^1.1.0", - "grunt-contrib-imagemin": "^3.1.0", - "grunt-postcss": "^0.9.0", - "grunt-sass": "^3.0.2", - "autoprefixer": "^9.5.0", - "node-sass": "^4.11.0" - }, - "scripts": { - "build": "./node_modules/.bin/grunt", - "css": "./node_modules/.bin/grunt css", - "watch": "./node_modules/.bin/grunt watch" - } -} -- GitLab