PluginCi 1.1.15 Help

CI

Das integrieren des CI-Prozess an sich ist sehr simpel. Alles, was dafür zusätzlich getan werden muss, ist folgende datei in das Projekt mitaufzunehmen

include: - project: "Leoparden/shopware-plugin-ci" file: "/.gitlab-ci.yml" variables: PLUGIN_NAME: "%pluginname%" PLUGIN_UPPER: "%pluginname_upper%" DISABLE_COVERAGE: 1 ci: script: - !reference [ .setup, script ] # - echo Add Steps after initial testing is done

Lokales Testen der CI

Um den Deployment-Prozess lokal zu testen, gibt es die möglichkeit via Docker das FroSh-Dev-Image lokal zu verarbeiten.

Dafür wird zum einen eine DotEnv Datei sowie ein kleines Script benötigt:

PLUGIN_NAME="%pluginname%" PLUGIN_UPPER="%pluginname_upper%" DISABLE_COVERAGE=1 DISABLE_PHP_TEST=0 DISABLE_ADMINISTRATION_TEST=0 DISABLE_STOREFRONT_TEST=0 DISABLE_DOCS=0 DISABLE_PUBLISH=1 DISABLE_CS=0 SRC_DIR='src' ADMIN_BUNDLE_PATH="Resources/app/administration" STOREFRONT_BUNDLE_PATH="Resources/app/storefront" PLUGIN_ADMINISTRATION_PATH="${SRC_DIR}/${ADMIN_BUNDLE_PATH}" PLUGIN_STOREFRONT_PATH="${SRC_DIR}/${STOREFRONT_BUNDLE_PATH}" SHOPWARE_PATH="/opt/shopware" ADMIN_PATH="${SHOPWARE_PATH}/${SRC_DIR}/Administration/${ADMIN_BUNDLE_PATH}" STOREFRONT_PATH="${SHOPWARE_PATH}/${SRC_DIR}/Storefront/${STOREFRONT_BUNDLE_PATH}" WRITERSIDE_INSTANCE="docs/${PLUGIN_NAME}" WRITERSIDE_DOCS_ARTIFACT="webHelp${PLUGIN_UPPER}2-all.zip" GITLAB_REGISTRY_URL="$CI_SERVER_PROTOCOL://$CI_SERVER_HOST:$CI_SERVER_PORT/api/v4/projects/$CI_PROJECT_ID/packages/composer?job_token=$CI_JOB_TOKEN" BASEPLUGIN_PATH="${SHOPWARE_PATH}/vendor/leoparden/baseplugin" XDEBUG_MODE="coverage" REGISTRY_TOKEN="%registry_token%" REGISTRY_USER="%registry_user%"

Variablen:

  • Der Registry Token und Registry User sind in wenn in der Shopware Gruppe hochgeladen wird automatisch definiert, hier muss dann aber ein eigener Token definiert werden zur authentifizierung des Docker-Image zum Gitlab-Server

  • Pluginname und dessen hochgestellte Variante muss definiert werden, da sonst ein erfolgreicher Build nicht möglich ist. Hierbei einfach den Namen des Plugin selbst verwenden.

Das Script zur ausführung des Docker-Image

#!/usr/bin/env bash CWD=$(realpath "$1") NAME=$(basename $CWD) curl https://gitlab.com/Leoparden/shopware-plugin-ci/-/raw/main/leoparden_plugin_ci -o "${CWD}/leoparden_plugin_ci" chmod +x "${CWD}/leoparden_plugin_ci" CI_PATH=$(realpath "${CWD}/leoparden_plugin_ci") docker run --rm -it \ -v "${CWD}:/plugins/${NAME}" \ -v "${CI_PATH}:/usr/bin/leoparden_plugin_ci" \ ghcr.io/friendsofshopware/platform-plugin-dev:v6.5.8 \ sh -c "leoparden_plugin_ci /plugins/${NAME}" rm "${CWD}/leoparden_plugin_ci"

Zur einfachen Ausführung dessen am besten in /usr/bin/run_docker (oder anderer, bevorzugter Name) kopieren und per

chmod+x /usr/bin/run_docker

ausführbar machen

Die Ausführung des Scripts erfolgt über den Befehl

run_docker "$(realpath .)"

Log-Output

Eine beispielhafte Ausgabe des Scripts:

Running with gitlab-runner 16.6.0~beta.105.gd2263193 (d2263193) on blue-1.saas-linux-small.runners-manager.gitlab.com/default j1aLDqxS, system ID: s_ccdc2f364be8 feature flags: FF_USE_IMPROVED_URL_MASKING:true section_start:1708702537:prepare_executor Preparing the "docker+machine" executor Using Docker executor with image ghcr.io/friendsofshopware/platform-plugin-dev:v6.5.8 ... Pulling docker image ghcr.io/friendsofshopware/platform-plugin-dev:v6.5.8 ... Using docker image sha256:e9bd80cb4b71dcb2951c126db7ad676bc9d13d3413323d99876278eca3125ae8 for ghcr.io/friendsofshopware/platform-plugin-dev:v6.5.8 with digest ghcr.io/friendsofshopware/platform-plugin-dev@sha256:40609213403d4afd6e4f2a7363b3439a668f6a3e29d0a91c4a7af960aa2696d4 ... section_end:1708702561:prepare_executor section_start:1708702561:prepare_script Preparing environment Running on runner-j1aldqxs-project-53722645-concurrent-0 via runner-j1aldqxs-s-l-s-amd64-1708702501-aeca4001... section_end:1708702568:prepare_script section_start:1708702568:get_sources Getting source from Git repository Fetching changes with git depth set to 20... Initialized empty Git repository in /builds/DieLeoparden/shopware/your-plugin-name/.git/ Created fresh repository. Checking out 0cd7dc15 as detached HEAD (ref is master)... Skipping Git submodules setup $ git remote set-url origin "${CI_REPOSITORY_URL}" section_end:1708702570:get_sources section_start:1708702570:step_script Executing "step_script" stage of the job script Using docker image sha256:e9bd80cb4b71dcb2951c126db7ad676bc9d13d3413323d99876278eca3125ae8 for ghcr.io/friendsofshopware/platform-plugin-dev:v6.5.8 with digest ghcr.io/friendsofshopware/platform-plugin-dev@sha256:40609213403d4afd6e4f2a7363b3439a668f6a3e29d0a91c4a7af960aa2696d4 ... $ curl https://gitlab.com/Leoparden/shopware-plugin-ci/-/raw/main/leoparden_plugin_ci -o /usr/bin/leoparden_plugin_ci % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 12385 100 12385 0 0 160k 0 --:--:-- --:--:-- --:--:-- 161k $ chmod +x /usr/bin/leoparden_plugin_ci $ leoparden_plugin_ci ${PLUGIN_DIR} % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 475 100 475 0 0 7567 0 --:--:-- --:--:-- --:--:-- 7661 Starting mysql server Started mysql server php coverage analysis disabled ./composer.json has been updated Running composer update leoparden/baseplugin Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals - Locking leoparden/baseplugin (1.1.16) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals - Downloading leoparden/baseplugin (1.1.16) - Installing leoparden/baseplugin (1.1.16): Extracting archive Generating autoload files 150 packages you are using are looking for funding. Use the `composer fund` command to find out more! phpstan/extension-installer: Extensions installed [bamarni-bin] Checking namespace vendor-bin/cs-fixer Loading composer repositories with package information Updating dependencies Nothing to modify in lock file Installing dependencies from lock file (including require-dev) Nothing to install, update or remove Generating autoload files 24 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found [bamarni-bin] Checking namespace vendor-bin/rector Loading composer repositories with package information Updating dependencies Nothing to modify in lock file Installing dependencies from lock file (including require-dev) Nothing to install, update or remove Generating autoload files 2 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found [bamarni-bin] Checking namespace vendor-bin/roave-backward-compatibility-check Gathering patches for root package. Removing package roave/backward-compatibility-check so that it can be re-installed and re-patched. - Removing roave/backward-compatibility-check (8.6.0) Loading composer repositories with package information Updating dependencies Lock file operations: 0 installs, 1 update, 0 removals - Upgrading composer/ca-bundle (1.4.0 => 1.4.1) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 1 update, 0 removals - Downloading composer/ca-bundle (1.4.1) - Downloading roave/backward-compatibility-check (8.6.0) Gathering patches for root package. Gathering patches for dependencies. This might take a minute. - Upgrading composer/ca-bundle (1.4.0 => 1.4.1): Extracting archive - Installing roave/backward-compatibility-check (8.6.0): Extracting archive - Applying patches for roave/backward-compatibility-check patches/skip-experimental.patch (Skip experimental annotations) Could not apply patch! Skipping. The error was: Cannot apply patch patches/skip-experimental.patch patches/add-exclude-errors.patch (Add exclude errors) Could not apply patch! Skipping. The error was: Cannot apply patch patches/add-exclude-errors.patch patches/add-exclude-files.patch (Add exclude files) Could not apply patch! Skipping. The error was: Cannot apply patch patches/add-exclude-files.patch Generating autoload files 26 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found No security vulnerability advisories found leoparden/baseplugin BasePlugin Shopware Plugin Lifecycle Service ================================= Install 1 plugin(s): * Base Plugin for the Plugins of the Leoparden GmbH (v1.1.16) 15:36:26 INFO [messenger] Sending message Shopware\Core\Framework\DataAbstractionLayer\Indexing\MessageQueue\IterateEntityIndexerMessage with async sender using Symfony\Component\Messenger\Bridge\Doctrine\Transport\DoctrineTransport [ "class" => "Shopware\Core\Framework\DataAbstractionLayer\Indexing\MessageQueue\IterateEntityIndexerMessage", "alias" => "async", "sender" => "Symfony\Component\Messenger\Bridge\Doctrine\Transport\DoctrineTransport" ] 15:36:27 INFO [php] User Deprecated: Since symfony/serializer 6.4: Passing a "Doctrine\Common\Annotations\PsrCachedReader" instance as argument 1 to "Symfony\Component\Serializer\Mapping\Loader\AttributeLoader::__construct()" is deprecated, pass null or omit the parameter instead. [ "exception" => ErrorException { #message: "User Deprecated: Since symfony/serializer 6.4: Passing a "Doctrine\Common\Annotations\PsrCachedReader" instance as argument 1 to "Symfony\Component\Serializer\Mapping\Loader\AttributeLoader::__construct()" is deprecated, pass null or omit the parameter instead." #code: 0 #file: "./vendor/symfony/serializer/Mapping/Loader/AttributeLoader.php" #line: 51 #severity: E_USER_DEPRECATED trace: { ./vendor/symfony/serializer/Mapping/Loader/AttributeLoader.php:51 { …} ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:33730 { ContainerKcAXSR4\Shopware_Core_KernelDevDebugContainer::getSerializer_Mapping_ClassMetadataFactoryService($container) › { › return $container->privates['serializer.mapping.class_metadata_factory'] = new \Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory(new \Symfony\Component\Serializer\Mapping\Loader\LoaderChain([new \Symfony\Component\Serializer\Mapping\Loader\AttributeLoader(($container->privates['annotations.cached_reader'] ?? self::getAnnotations_CachedReaderService($container)))])); › } } ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:33704 { …} ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:6689 { …} ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:17161 { …} ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:27349 { …} ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:27403 { …} ./var/cache/dev_h9be111a953c2ba8bd4f4d9ff66add508/ContainerKcAXSR4/Shopware_Core_KernelDevDebugContainer.php:11413 { …} ./vendor/symfony/event-dispatcher/EventDispatcher.php:235 { …} ./vendor/symfony/event-dispatcher/EventDispatcher.php:70 { …} ./src/Core/Content/Flow/Dispatching/FlowDispatcher.php:98 { …} ./src/Core/Framework/Webhook/WebhookDispatcher.php:120 { …} ./src/Core/Framework/Event/NestedEventDispatcher.php:64 { …} ./vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:276 { …} ./vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:133 { …} ./src/Core/Framework/Plugin/PluginLifecycleService.php:382 { …} ./src/Core/Framework/Plugin/Command/Lifecycle/PluginInstallCommand.php:76 { …} ./vendor/symfony/console/Command/Command.php:326 { …} ./vendor/symfony/console/Application.php:1096 { …} ./vendor/symfony/framework-bundle/Console/Application.php:126 { …} ./vendor/symfony/console/Application.php:324 { …} ./vendor/symfony/framework-bundle/Console/Application.php:80 { …} ./vendor/symfony/console/Application.php:175 { …} ./vendor/symfony/runtime/Runner/Symfony/ConsoleApplicationRunner.php:49 { …} ./vendor/autoload_runtime.php:29 { …} ./bin/shopware:18 { …} } } ] Plugin "BasePlugin" has been installed and activated successfully. [OK] Installed 1 plugin(s). ! [NOTE] Clearing Cache [OK] Cache cleared Shopware Plugin Lifecycle Service ================================= Install 1 plugin(s): * Asynchrones Listing (v1.1.11) 15:36:29 INFO [messenger] Sending message Shopware\Core\Framework\DataAbstractionLayer\Indexing\MessageQueue\IterateEntityIndexerMessage with async sender using Symfony\Component\Messenger\Bridge\Doctrine\Transport\DoctrineTransport [ "class" => "Shopware\Core\Framework\DataAbstractionLayer\Indexing\MessageQueue\IterateEntityIndexerMessage", "alias" => "async", "sender" => "Symfony\Component\Messenger\Bridge\Doctrine\Transport\DoctrineTransport" ] 15:36:32 INFO [php] User Deprecated: Since symfony/serializer 6.4: Passing a "Doctrine\Common\Annotations\PsrCachedReader" instance as argument 1 to "Symfony\Component\Serializer\Mapping\Loader\AttributeLoader::__construct()" is deprecated, pass null or omit the parameter instead. [ "exception" => ErrorException { #message: "User Deprecated: Since symfony/serializer 6.4: Passing a "Doctrine\Common\Annotations\PsrCachedReader" instance as argument 1 to "Symfony\Component\Serializer\Mapping\Loader\AttributeLoader::__construct()" is deprecated, pass null or omit the parameter instead." #code: 0 #file: "./vendor/symfony/serializer/Mapping/Loader/AttributeLoader.php" #line: 51 #severity: E_USER_DEPRECATED trace: { ./vendor/symfony/serializer/Mapping/Loader/AttributeLoader.php:51 { …} ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:33763 { ContainerDbWrb8N\Shopware_Core_KernelDevDebugContainer::getSerializer_Mapping_ClassMetadataFactoryService($container) › { › return $container->privates['serializer.mapping.class_metadata_factory'] = new \Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory(new \Symfony\Component\Serializer\Mapping\Loader\LoaderChain([new \Symfony\Component\Serializer\Mapping\Loader\AttributeLoader(($container->privates['annotations.cached_reader'] ?? self::getAnnotations_CachedReaderService($container)))])); › } } ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:33737 { …} ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:6702 { …} ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:17194 { …} ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:27382 { …} ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:27436 { …} ./var/cache/dev_ha3a9bac1b9881d232f7fb81cf3533492/ContainerDbWrb8N/Shopware_Core_KernelDevDebugContainer.php:11446 { …} ./vendor/symfony/event-dispatcher/EventDispatcher.php:235 { …} ./vendor/symfony/event-dispatcher/EventDispatcher.php:70 { …} ./src/Core/Content/Flow/Dispatching/FlowDispatcher.php:98 { …} ./src/Core/Framework/Webhook/WebhookDispatcher.php:120 { …} ./src/Core/Framework/Event/NestedEventDispatcher.php:64 { …} ./vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:276 { …} ./vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:133 { …} ./src/Core/Framework/Plugin/PluginLifecycleService.php:382 { …} ./src/Core/Framework/Plugin/Command/Lifecycle/PluginInstallCommand.php:76 { …} ./vendor/symfony/console/Command/Command.php:326 { …} ./vendor/symfony/console/Application.php:1096 { …} ./vendor/symfony/framework-bundle/Console/Application.php:126 { …} ./vendor/symfony/console/Application.php:324 { …} ./vendor/symfony/framework-bundle/Console/Application.php:80 { …} ./vendor/symfony/console/Application.php:175 { …} ./vendor/symfony/runtime/Runner/Symfony/ConsoleApplicationRunner.php:49 { …} ./vendor/autoload_runtime.php:29 { …} ./bin/shopware:18 { …} } } ] Plugin "AjaxListing" has been installed and activated successfully. [OK] Installed 1 plugin(s). ! [NOTE] Clearing Cache [OK] Cache cleared Gitlab Pipeline for your-plugin-name running php-cs-fixer Loaded config default from "/plugins/AjaxListing/.php-cs-fixer.php". Fixed 0 of 3 files in 0.022 seconds, 14.000 MB memory used running phpunit tests Shopware Plugin Service ======================= [OK] Plugin list refreshed Shopware Plugin Service ======================= ------------- --------------------------------------------------- --------- ----------------- -------------------- ----------- -------- ------------- Plugin Label Version Upgrade version Author Installed Active Upgradeable ------------- --------------------------------------------------- --------- ----------------- -------------------- ----------- -------- ------------- AjaxListing Asynchrones Listing 1.1.11 Die Leoparden GmbH Yes Yes No BasePlugin Base Plugin for the Plugins of the Leoparden GmbH 1.1.16 Die Leoparden GmbH Yes Yes No ------------- --------------------------------------------------- --------- ----------------- -------------------- ----------- -------- ------------- 2 plugins, 2 installed, 2 active , 0 upgradeable Shopware Plugin Lifecycle Service ================================= Install 1 plugin(s): * Asynchrones Listing (v1.1.11) Plugin "AjaxListing" has been installed and activated successfully. [OK] Installed 1 plugin(s). ! [NOTE] You may want to clear the cache after activating plugin(s). To do so ! run the cache:clear command PHPUnit 9.6.16 by Sebastian Bergmann and contributors. Warning: No code coverage driver available . 1 / 1 (100%) Time: 00:00.025, Memory: 218.00 MB OK (1 test, 3 assertions) Remaining direct deprecation notices (2) Remaining indirect deprecation notices (61) Other deprecation notices (33) PHP Coverage Test skipped Installing dependencies in /opt/shopware/vendor/leoparden/baseplugin/src/Resources/app/storefront added 593 packages, and audited 594 packages in 12s 62 packages are looking for funding run `npm fund` for details found 0 vulnerabilities Installing dependencies in /opt/shopware/vendor/leoparden/baseplugin/src/Resources/app/administration added 588 packages, and audited 589 packages in 29s 66 packages are looking for funding run `npm fund` for details found 0 vulnerabilities Run JS Tests in Storefront Installing dependencies in /opt/shopware/src/Storefront/Resources/app/storefront and /plugins/AjaxListing/src/Resources/app/storefront added 1762 packages, and audited 1763 packages in 55s 127 packages are looking for funding run `npm fund` for details 54 vulnerabilities (30 moderate, 18 high, 6 critical) To address issues that do not require attention, run: npm audit fix To address all issues possible (including breaking changes), run: npm audit fix --force Some issues need review, and may require choosing a different dependency. Run `npm audit` for details. added 714 packages, and audited 716 packages in 6s found 0 vulnerabilities running test in /plugins/AjaxListing/src/Resources/app/storefront > test > jest --config jest.config.js --ci PASS test/AjaxListingPlugin.spec.ts (7.651 s) PASS test/Main.spec.ts -------------------------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s -------------------------|---------|----------|---------|---------|------------------- All files | 100 | 100 | 100 | 100 | src | 100 | 100 | 100 | 100 | main.ts | 100 | 100 | 100 | 100 | src/plugin | 100 | 100 | 100 | 100 | your-plugin-name.plugin.ts | 100 | 100 | 100 | 100 | -------------------------|---------|----------|---------|---------|------------------- Test Suites: 2 passed, 2 total Tests: 3 passed, 3 total Snapshots: 0 total Time: 8.609 s Ran all test suites. Run JS Tests in Administration Installing dependencies in /opt/shopware/src/Administration/Resources/app/administration and /plugins/AjaxListing/src/Resources/app/administration } > administration@1.0.0 preinstall > node src/scripts/validate-package-json/index.mjs > administration@1.0.0 postinstall > patch-package patch-package 6.5.1 Applying patches... babel-plugin-require-context-hook@1.0.0 ✔ eslint@8.36.0 ✔ eslint-plugin-vue@9.14.1 ✔ inter-ui@3.19.3 ✔ vue-eslint-parser@9.3.1 ✔ added 2625 packages, and audited 2631 packages in 2m 208 packages are looking for funding run `npm fund` for details 86 vulnerabilities (1 low, 50 moderate, 26 high, 9 critical) To address issues that do not require attention, run: npm audit fix To address all issues possible (including breaking changes), run: npm audit fix --force Some issues need review, and may require choosing a different dependency. Run `npm audit` for details. changed 1 package, and audited 2631 packages in 7s 208 packages are looking for funding run `npm fund` for details 86 vulnerabilities (1 low, 50 moderate, 26 high, 9 critical) To address issues that do not require attention, run: npm audit fix To address all issues possible (including breaking changes), run: npm audit fix --force Some issues need review, and may require choosing a different dependency. Run `npm audit` for details. added 888 packages, and audited 890 packages in 6s found 0 vulnerabilities running test in /plugins/AjaxListing/src/Resources/app/administration > test > jest --config jest.config.js --ci PASS test/AjaxListingCmsElementConfig.spec.ts (6.561 s) PASS test/AjaxListingCmsElementComponent.spec.ts PASS test/AjaxListingCmsElementPreview.spec.ts PASS test/Main.spec.ts ---------------------------------------------------|---------|----------|---------|---------|------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ---------------------------------------------------|---------|----------|---------|---------|------------------- All files | 100 | 100 | 100 | 100 | src | 100 | 100 | 100 | 100 | main.ts | 100 | 100 | 100 | 100 | src/module/sw-cms/elements/your-plugin-name/component | 100 | 100 | 100 | 100 | index.ts | 100 | 100 | 100 | 100 | src/module/sw-cms/elements/your-plugin-name/config | 100 | 100 | 100 | 100 | index.ts | 100 | 100 | 100 | 100 | src/module/sw-cms/elements/your-plugin-name/preview | 100 | 100 | 100 | 100 | index.ts | 100 | 100 | 100 | 100 | ---------------------------------------------------|---------|----------|---------|---------|------------------- Test Suites: 4 passed, 4 total Tests: 4 passed, 4 total Snapshots: 0 total Time: 8.88 s Ran all test suites. {"message":"201 Created"}201 CI Successfully terminated adding: src/ (stored 0%) adding: src/AjaxListing.php (deflated 26%) adding: src/Resources/ (stored 0%) adding: src/Resources/views/ (stored 0%) adding: src/Resources/views/storefront/ (stored 0%) adding: src/Resources/views/storefront/element/ (stored 0%) adding: src/Resources/views/storefront/element/cms-element-your-plugin-name.html.twig (deflated 67%) adding: src/Resources/public/ (stored 0%) adding: src/Resources/public/static/ (stored 0%) adding: src/Resources/public/static/your-plugin-name-preview.png (deflated 5%) adding: src/Resources/public/static/js/ (stored 0%) adding: src/Resources/public/static/js/your-plugin-name.js.LICENSE.txt (stored 0%) adding: src/Resources/public/administration/ (stored 0%) adding: src/Resources/public/administration/js/ (stored 0%) adding: src/Resources/public/administration/js/your-plugin-name.js (deflated 60%) adding: src/Resources/public/administration/js/your-plugin-name.js.map (deflated 71%) adding: src/Resources/public/administration/css/ (stored 0%) adding: src/Resources/public/administration/css/your-plugin-name.css (deflated 29%) adding: src/Resources/config/ (stored 0%) adding: src/Resources/config/plugin.png (deflated 4%) adding: src/Resources/app/ (stored 0%) adding: src/Resources/app/storefront/ (stored 0%) adding: src/Resources/app/storefront/dist/ (stored 0%) adding: src/Resources/app/storefront/dist/storefront/ (stored 0%) adding: src/Resources/app/storefront/dist/storefront/js/ (stored 0%) adding: src/Resources/app/storefront/dist/storefront/js/your-plugin-name.js (deflated 64%) adding: src/Resources/app/administration/ (stored 0%) adding: src/Resources/app/administration/static/ (stored 0%) adding: src/Resources/app/administration/static/your-plugin-name-preview.png (deflated 5%) adding: readme.md (deflated 9%) adding: composer.json (deflated 55%) /usr/bin/leoparden_plugin_ci: line 245: cd: /plugins/AjaxListing/coverage: No such file or directory adding: junit.xml (deflated 64%) adding: testdox.txt (deflated 29%) adding: teamcity.txt (deflated 73%) adding: testdox.html (deflated 65%) adding: clover.xml (deflated 79%) adding: lcov.info (deflated 58%) adding: lcov-report/ (stored 0%) adding: lcov-report/prettify.js (deflated 60%) adding: lcov-report/block-navigation.js (deflated 67%) adding: lcov-report/index.html (deflated 76%) adding: lcov-report/src/ (stored 0%) adding: lcov-report/src/main.ts.html (deflated 72%) adding: lcov-report/src/plugin/ (stored 0%) adding: lcov-report/src/plugin/your-plugin-name.plugin.ts.html (deflated 82%) adding: lcov-report/src/plugin/index.html (deflated 73%) adding: lcov-report/src/index.html (deflated 73%) adding: lcov-report/prettify.css (deflated 55%) adding: lcov-report/sorter.js (deflated 73%) adding: lcov-report/base.css (deflated 69%) adding: lcov-report/sort-arrow-sprite.png (stored 0%) adding: lcov-report/favicon.png (stored 0%) adding: report.xml (deflated 65%) adding: clover.xml (deflated 83%) adding: lcov.info (deflated 67%) adding: lcov-report/ (stored 0%) adding: lcov-report/prettify.js (deflated 60%) adding: lcov-report/block-navigation.js (deflated 67%) adding: lcov-report/index.html (deflated 81%) adding: lcov-report/src/ (stored 0%) adding: lcov-report/src/main.ts.html (deflated 77%) adding: lcov-report/src/index.html (deflated 73%) adding: lcov-report/src/module/ (stored 0%) adding: lcov-report/src/module/sw-cms/ (stored 0%) adding: lcov-report/src/module/sw-cms/elements/ (stored 0%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/ (stored 0%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/component/ (stored 0%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/component/index.html (deflated 73%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/component/index.ts.html (deflated 75%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/config/ (stored 0%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/config/index.html (deflated 73%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/config/index.ts.html (deflated 75%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/preview/ (stored 0%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/preview/index.html (deflated 74%) adding: lcov-report/src/module/sw-cms/elements/your-plugin-name/preview/index.ts.html (deflated 72%) adding: lcov-report/prettify.css (deflated 55%) adding: lcov-report/sorter.js (deflated 73%) adding: lcov-report/base.css (deflated 69%) adding: lcov-report/sort-arrow-sprite.png (stored 0%) adding: lcov-report/favicon.png (stored 0%) adding: report.xml (deflated 77%) section_end:1708702853:step_script section_start:1708702853:upload_artifacts_on_success Uploading artifacts for successful job Uploading artifacts... *.zip: found 6 matching artifact files and directories WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/6244894428/artifacts?artifact_format=zip&artifact_type=archive&expire_in=1+week new-url=https://gitlab.com WARNING: Retrying... context=artifacts-uploader error=request redirected Uploading artifacts as "archive" to coordinator... 201 Created id=6244894428 responseStatus=201 Created token=glcbt-65 section_end:1708702855:upload_artifacts_on_success section_start:1708702855:cleanup_file_variables Cleaning up project directory and file based variables section_end:1708702856:cleanup_file_variables Job succeeded
Last modified: 29 February 2024