From 60d4c667dc01b08c796ba1c3ed3b4815b05a419b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=CC=88rg=20Prante?= Date: Wed, 25 May 2022 09:25:51 +0200 Subject: [PATCH] remove maven and gradle plugin from this repository --- gradle-plugin-rpm/build.gradle | 56 - .../groovy/org/xbib/gradle/plugin/Rpm.groovy | 51 - .../xbib/gradle/plugin/RpmCopyAction.groovy | 212 --- .../xbib/gradle/plugin/RpmExtension.groovy | 409 ----- .../org/xbib/gradle/plugin/RpmPlugin.groovy | 31 - .../org/xbib/gradle/plugin/RpmFullTest.groovy | 336 ----- .../plugin/RpmPluginIntegrationTest.groovy | 57 - .../xbib/gradle/plugin/RpmScriptTest.groovy | 156 -- .../org/xbib/gradle/plugin/RpmSignTest.groovy | 62 - .../xbib/gradle/plugin/RpmSimpleTest.groovy | 104 -- .../org/xbib/gradle/plugin/changelog | 24 - .../org/xbib/gradle/plugin/preinstall.sh | 2 - .../src/test/resources/test-secring.gpg | Bin 2551 -> 0 bytes maven-plugin-rpm/NOTICE.txt | 13 - maven-plugin-rpm/build.gradle | 75 - .../config/maven/repo-settings.xml | 24 - .../xbib/maven/plugin/rpm/RpmBaseObject.java | 95 -- .../org/xbib/maven/plugin/rpm/RpmLink.java | 68 - .../org/xbib/maven/plugin/rpm/RpmPackage.java | 1338 ----------------- .../plugin/rpm/RpmPackageAssociation.java | 124 -- .../xbib/maven/plugin/rpm/RpmPackageRule.java | 259 ---- .../plugin/rpm/RpmScriptTemplateRenderer.java | 53 - .../org/xbib/maven/plugin/rpm/RpmTrigger.java | 217 --- .../plugin/rpm/mojo/AbstractRpmMojo.java | 407 ----- .../plugin/rpm/mojo/ListFilesRpmMojo.java | 43 - .../maven/plugin/rpm/mojo/PackageRpmMojo.java | 54 - .../xbib/maven/plugin/rpm/mojo/RpmMojo.java | 122 -- .../maven/plugin/rpm/mojo/package-info.java | 4 - .../resources/META-INF/plexus/components.xml | 19 - .../xbib/maven/plugin/rpm/MockBuilder.java | 21 - .../org/xbib/maven/plugin/rpm/MockMojo.java | 49 - .../maven/plugin/rpm/RpmBaseObjectTest.java | 45 - .../xbib/maven/plugin/rpm/RpmLinkTest.java | 42 - .../plugin/rpm/RpmPackageAssociationTest.java | 81 - .../rpm/RpmPackageRuleDirectiveTest.java | 135 -- .../maven/plugin/rpm/RpmPackageRuleTest.java | 156 -- .../xbib/maven/plugin/rpm/RpmPackageTest.java | 407 ----- .../rpm/RpmScriptTemplateRendererTest.java | 60 - .../xbib/maven/plugin/rpm/RpmTriggerTest.java | 48 - .../plugin/rpm/mojo/AbstractRpmMojoTest.java | 170 --- .../plugin/rpm/mojo/ListFilesRpmMojoTest.java | 63 - .../plugin/rpm/mojo/PackageRpmMojoTest.java | 115 -- .../maven/plugin/rpm/mojo/package-info.java | 4 - .../src/test/resources/files/.gitignore | 11 - .../src/test/resources/files/README.md | 170 --- .../src/test/resources/files/UPGRADE-2.2.md | 30 - .../src/test/resources/files/UPGRADE-2.3.md | 52 - .../src/test/resources/files/UPGRADE-2.4.md | 9 - .../src/test/resources/files/UPGRADE.md | 268 ---- .../src/test/resources/files/app/.htaccess | 7 - .../src/test/resources/files/app/AppCache.php | 9 - .../test/resources/files/app/AppKernel.php | 35 - .../files/app/Resources/views/base.html.twig | 13 - .../files/app/SymfonyRequirements.php | 707 --------- .../files/app/SymfonyStandard/Composer.php | 22 - .../RootPackageInstallSubscriber.php | 40 - .../src/test/resources/files/app/autoload.php | 13 - .../test/resources/files/app/cache/.gitkeep | 0 .../src/test/resources/files/app/check.php | 142 -- .../resources/files/app/config/config.yml | 72 - .../resources/files/app/config/config_dev.yml | 36 - .../files/app/config/config_prod.yml | 25 - .../files/app/config/config_test.yml | 16 - .../files/app/config/parameters.yml.dist | 24 - .../resources/files/app/config/routing.yml | 0 .../files/app/config/routing_dev.yml | 18 - .../resources/files/app/config/security.yml | 52 - .../src/test/resources/files/app/console | 27 - .../test/resources/files/app/phpunit.xml.dist | 34 - .../src/test/resources/files/src/.htaccess | 7 - .../src/Acme/DemoBundle/AcmeDemoBundle.php | 9 - .../DemoBundle/Command/HelloWorldCommand.php | 48 - .../DemoBundle/Controller/DemoController.php | 56 - .../Controller/SecuredController.php | 70 - .../Controller/WelcomeController.php | 19 - .../DependencyInjection/AcmeDemoExtension.php | 22 - .../EventListener/ControllerListener.php | 24 - .../src/Acme/DemoBundle/Form/ContactType.php | 20 - .../DemoBundle/Resources/config/routing.yml | 12 - .../DemoBundle/Resources/config/services.xml | 18 - .../DemoBundle/Resources/public/css/demo.css | 101 -- .../Resources/public/images/blue-arrow.png | Bin 181 -> 0 bytes .../public/images/field-background.gif | Bin 63 -> 0 bytes .../Resources/public/images/logo.gif | Bin 1698 -> 0 bytes .../Resources/public/images/search.png | Bin 737 -> 0 bytes .../public/images/welcome-configure.gif | Bin 3530 -> 0 bytes .../Resources/public/images/welcome-demo.gif | Bin 4053 -> 0 bytes .../public/images/welcome-quick-tour.gif | Bin 4770 -> 0 bytes .../Resources/views/Demo/contact.html.twig | 15 - .../Resources/views/Demo/hello.html.twig | 9 - .../Resources/views/Demo/index.html.twig | 14 - .../Resources/views/Secured/hello.html.twig | 11 - .../views/Secured/helloadmin.html.twig | 9 - .../Resources/views/Secured/layout.html.twig | 6 - .../Resources/views/Secured/login.html.twig | 35 - .../Resources/views/Welcome/index.html.twig | 83 - .../Resources/views/layout.html.twig | 37 - .../Tests/Controller/DemoControllerTest.php | 45 - .../Twig/Extension/DemoExtension.php | 81 - .../src/test/resources/files/web/.htaccess | 56 - .../src/test/resources/files/web/app.php | 29 - .../src/test/resources/files/web/app_dev.php | 30 - .../resources/files/web/apple-touch-icon.png | Bin 10784 -> 0 bytes .../src/test/resources/files/web/config.php | 124 -- .../src/test/resources/files/web/favicon.ico | Bin 6518 -> 0 bytes .../src/test/resources/files/web/robots.txt | 4 - .../resources/mojo/AbstractRpmMojo-template | 2 - .../mojo/AbstractRpmMojo-template-expected | 2 - .../src/test/resources/rpm/RpmPackage.sh | 3 - .../rpm/RpmScriptTemplateRenderer-template | 412 ----- ...pmScriptTemplateRenderer-template-expected | 412 ----- 111 files changed, 9468 deletions(-) delete mode 100644 gradle-plugin-rpm/build.gradle delete mode 100644 gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/Rpm.groovy delete mode 100644 gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmCopyAction.groovy delete mode 100644 gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmExtension.groovy delete mode 100644 gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmPlugin.groovy delete mode 100644 gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmFullTest.groovy delete mode 100644 gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmPluginIntegrationTest.groovy delete mode 100644 gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmScriptTest.groovy delete mode 100644 gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSignTest.groovy delete mode 100644 gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSimpleTest.groovy delete mode 100644 gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/changelog delete mode 100644 gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/preinstall.sh delete mode 100644 gradle-plugin-rpm/src/test/resources/test-secring.gpg delete mode 100644 maven-plugin-rpm/NOTICE.txt delete mode 100644 maven-plugin-rpm/build.gradle delete mode 100644 maven-plugin-rpm/config/maven/repo-settings.xml delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmBaseObject.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmLink.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackage.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageAssociation.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageRule.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRenderer.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmTrigger.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojo.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojo.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojo.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/RpmMojo.java delete mode 100644 maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/package-info.java delete mode 100644 maven-plugin-rpm/src/main/resources/META-INF/plexus/components.xml delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockBuilder.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockMojo.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmBaseObjectTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmLinkTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageAssociationTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleDirectiveTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRendererTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmTriggerTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojoTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojoTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojoTest.java delete mode 100644 maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/package-info.java delete mode 100644 maven-plugin-rpm/src/test/resources/files/.gitignore delete mode 100644 maven-plugin-rpm/src/test/resources/files/README.md delete mode 100644 maven-plugin-rpm/src/test/resources/files/UPGRADE-2.2.md delete mode 100644 maven-plugin-rpm/src/test/resources/files/UPGRADE-2.3.md delete mode 100644 maven-plugin-rpm/src/test/resources/files/UPGRADE-2.4.md delete mode 100644 maven-plugin-rpm/src/test/resources/files/UPGRADE.md delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/.htaccess delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/AppCache.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/AppKernel.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/Resources/views/base.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/SymfonyRequirements.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/Composer.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/RootPackageInstallSubscriber.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/autoload.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/cache/.gitkeep delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/check.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/config.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/config_dev.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/config_prod.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/config_test.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/parameters.yml.dist delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/routing.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/routing_dev.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/config/security.yml delete mode 100755 maven-plugin-rpm/src/test/resources/files/app/console delete mode 100644 maven-plugin-rpm/src/test/resources/files/app/phpunit.xml.dist delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/.htaccess delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/AcmeDemoBundle.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Command/HelloWorldCommand.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/DemoController.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/SecuredController.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/WelcomeController.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/DependencyInjection/AcmeDemoExtension.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/EventListener/ControllerListener.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Form/ContactType.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/routing.yml delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/services.xml delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/css/demo.css delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/blue-arrow.png delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/field-background.gif delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/logo.gif delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/search.png delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-configure.gif delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-demo.gif delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-quick-tour.gif delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/contact.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/hello.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/index.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/hello.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/helloadmin.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/layout.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/login.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Welcome/index.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/layout.html.twig delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Tests/Controller/DemoControllerTest.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Twig/Extension/DemoExtension.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/.htaccess delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/app.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/app_dev.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/apple-touch-icon.png delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/config.php delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/favicon.ico delete mode 100644 maven-plugin-rpm/src/test/resources/files/web/robots.txt delete mode 100644 maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template delete mode 100644 maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template-expected delete mode 100644 maven-plugin-rpm/src/test/resources/rpm/RpmPackage.sh delete mode 100644 maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template delete mode 100644 maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template-expected diff --git a/gradle-plugin-rpm/build.gradle b/gradle-plugin-rpm/build.gradle deleted file mode 100644 index 84e910c..0000000 --- a/gradle-plugin-rpm/build.gradle +++ /dev/null @@ -1,56 +0,0 @@ -plugins { - id 'java-gradle-plugin' - id 'com.gradle.plugin-publish' version '0.11.0' -} - -group = 'org.xbib.gradle.plugin' - -apply plugin: 'groovy' -apply plugin: 'java-gradle-plugin' -apply plugin: 'com.gradle.plugin-publish' - -dependencies { - api gradleApi() - api project(':rpm-core') - testImplementation gradleTestKit() -} - -compileGroovy { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 -} - -compileTestGroovy { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 -} - -validatePlugins { - // disable warning as failures because gradle plugin does not recognize @Delegate tag - failOnWarning = false -} - -gradlePlugin { - plugins { - rpmPlugin { - id = 'org.xbib.gradle.plugin.rpm' - implementationClass = 'org.xbib.gradle.plugin.RpmPlugin' - } - } -} - -if (project.hasProperty('gradle.publish.key')) { - pluginBundle { - website = 'https://github.com/xbib/rpm' - vcsUrl = 'https://github.com/xbib/rpm' - plugins { - rpmPlugin { - id = 'org.xbib.gradle.plugin.rpm' - version = project.version - description = rootProject.ext.description - displayName = rootProject.ext.description - tags = ['gradle', 'plugin', 'rpm'] - } - } - } -} diff --git a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/Rpm.groovy b/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/Rpm.groovy deleted file mode 100644 index 18274d4..0000000 --- a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/Rpm.groovy +++ /dev/null @@ -1,51 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.internal.file.copy.CopyAction -import org.gradle.api.tasks.Nested -import org.gradle.api.tasks.bundling.AbstractArchiveTask - -import java.util.concurrent.Callable - -class Rpm extends AbstractArchiveTask { - - @Delegate - @Nested - RpmExtension rpmExtension - - Rpm() { - rpmExtension = project.extensions.findByName('rpm') as RpmExtension - getArchiveExtension().set("rpm") - Callable archiveFileNameProvider = new Callable() { - @Override - String call() throws Exception { - constructArchiveFileName() - } - } - archiveFileName.set(project.provider(archiveFileNameProvider)) - } - - @Override - protected CopyAction createCopyAction() { - new RpmCopyAction(project, rpmExtension, this) - } - - private String constructArchiveFileName() { - StringBuilder sb = new StringBuilder() - if (packageName) { - sb.append(packageName) - } - if (packageVersion) { - sb.append('-').append(packageVersion) - } - if (packageRelease) { - sb.append('-').append(packageRelease) - } - if (arch) { - sb.append('.').append(arch.name().toLowerCase(Locale.ROOT)) - } - if (archiveExtension) { - sb.append('.').append(archiveExtension.get()) - } - sb.toString() - } -} diff --git a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmCopyAction.groovy b/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmCopyAction.groovy deleted file mode 100644 index d0d73d7..0000000 --- a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmCopyAction.groovy +++ /dev/null @@ -1,212 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.Project -import org.gradle.api.file.DuplicatesStrategy -import org.gradle.api.file.FileCopyDetails -import org.gradle.api.internal.file.CopyActionProcessingStreamAction -import org.gradle.api.internal.file.copy.CopyAction -import org.gradle.api.internal.file.copy.CopyActionProcessingStream -import org.gradle.api.internal.file.copy.FileCopyDetailsInternal -import org.gradle.api.tasks.WorkResult -import org.gradle.api.tasks.WorkResults -import org.xbib.rpm.Dependency -import org.xbib.rpm.Directory -import org.xbib.rpm.Link -import org.xbib.rpm.RpmBuilder -import org.xbib.rpm.payload.Directive -import java.nio.file.Files -import java.nio.file.Path -import java.nio.file.StandardOpenOption - -class RpmCopyAction implements CopyAction { - - Project project - - Rpm task - - RpmExtension ext - - RpmBuilder builder - - Path tempDir - - RpmCopyAction(Project project, RpmExtension rpmExtension, Rpm task) { - this.project = project - this.task = task - this.ext = rpmExtension - } - - @Override - WorkResult execute(CopyActionProcessingStream copyActionProcessingStream) { - if (ext.enabled) { - task.setDuplicatesStrategy(DuplicatesStrategy.INCLUDE) - tempDir = task.getTemporaryDir().toPath() - this.builder = createRpm() - copyActionProcessingStream.process(new StreamAction()) - addOther() - buildRpm() - } - WorkResults.didWork(true) - } - - RpmBuilder createRpm() { - RpmBuilder builder = new RpmBuilder() - builder.setPackage ext.packageName, ext.packageVersion, ext.packageRelease, ext.epoch - builder.setType ext.packageType - builder.setPlatform ext.arch, ext.os - builder.setGroup ext.packageGroup - builder.setBuildHost ext.buildHost - builder.setSummary ext.summary - builder.setDescription ext.packageDescription - builder.setLicense ext.license - builder.setPackager ext.packager - builder.setDistribution ext.distribution - builder.setVendor ext.vendor - builder.setUrl ext.url - builder.setPrefixes task.prefixes - builder.setPrivateKeyId task.getSigningKeyId() - builder.setPrivateKeyPassphrase task.getSigningKeyPassphrase() - builder.setPrivateKeyRing task.getSigningKeyRing() - builder.setPrivateKeyHashAlgo task.getSigningKeyHashAlgo() - builder.setSourceRpm(task.sourcePackage) - builder.setPreInstall task.preInstallFile?.text ?: task.preInstall - builder.setPostInstall task.postInstallFile?.text ?: task.postInstall - builder.setPreUninstall task.preUninstallFile?.text ?: task.preUninstall - builder.setPostUninstall task.postUninstallFile?.text ?: task.postUninstall - builder.setPreTrans task.preTransFile?.text ?: task.preTrans - builder.setPostTrans task.postTransFile?.text ?: task.postTrans - builder.setPreInstall prepareScripts(task, task.preInstallCommands) - builder.setPostInstall prepareScripts(task, task.postInstallCommands) - builder.setPreUninstall prepareScripts(task, task.preUninstallCommands) - builder.setPostUninstall prepareScripts(task, task.postUninstallCommands) - builder.setPreTrans prepareScripts(task, task.preTransCommands) - builder.setPostTrans prepareScripts(task, task.postTransCommands) - if (task.changeLogFile) { - builder.addChangelog task.changeLogFile?.toPath() - } - if (task.changeLog) { - builder.addChangelog(task.changeLog) - } - builder - } - - void addOther() { - for (Link link : task.links) { - builder.addLink(link.path, link.target, link.permissions) - } - for (Dependency dep : task.dependencies) { - builder.addDependency(dep.packageName, dep.flags, dep.version) - } - for (Dependency obsolete: task.obsoletes) { - builder.addObsoletes(obsolete.packageName, obsolete.flags, obsolete.version) - } - for (Dependency conflict : task.conflicts) { - builder.addConflicts(conflict.packageName, conflict.flags, conflict.version) - } - for (Dependency provides : task.provides) { - builder.addProvides(provides.packageName, provides.flags, provides.version) - } - for (Directory directory : task.directories) { - String user = directory.user ? directory.user : task.user - String group = directory.group ? directory.group : task.group - builder.addDirectory(directory.path, directory.permissions, null, user, group, directory.addParents) - } - } - - void buildRpm() { - Path path = task.archiveFile.get().asFile.toPath() - Files.createDirectories(path.parent) - Files.newByteChannel(path, StandardOpenOption.WRITE, StandardOpenOption.CREATE, - StandardOpenOption.TRUNCATE_EXISTING).withCloseable { ch -> - builder.build(ch) - } - } - - private class StreamAction implements CopyActionProcessingStreamAction { - - @Override - void processFile(FileCopyDetailsInternal fileCopyDetailsInternal) { - boolean addParents = ext.addParentDirs != null ? ext.addParentDirs : task.addParentDirs - Path path = extractPath(tempDir, fileCopyDetailsInternal) - String p = "/${fileCopyDetailsInternal.path}" - if (Files.isSymbolicLink(path)) { - builder.addLink(p, Files.readSymbolicLink(path).toFile().path, -1) - } else if (!fileCopyDetailsInternal.isDirectory()) { - int mode = fileCopyDetailsInternal.mode - int dirmode = -1 - EnumSet directive = makeDirective(ext.fileType) - String user = ext.user ?: task.user - String group = ext.group ?: task.group - builder.addFile(p, path, mode, dirmode, directive, user, group, addParents) - } - } - } - - private static Path extractPath(Path tempDir, FileCopyDetails fileDetails) { - Path path - try { - path = fileDetails.file.toPath() - } catch (UnsupportedOperationException e) { - path = tempDir.resolve(fileDetails.path) - fileDetails.copyTo(path.toFile()) - } - path - } - - private static EnumSet makeDirective(List strings) { - EnumSet set = EnumSet.of(Directive.NONE) - for (String string : strings) { - set.add(Directive.valueOf(string.toUpperCase(Locale.ROOT))) - } - set - } - - private static String prepareScripts(Rpm task, List scripts) { - if (scripts != null && !scripts.isEmpty()) { - List list = [] - def stdDefines = standardScriptDefines(task) - if (stdDefines) { - list.add(stdDefines) - } - if (task.commonCommands) { - list.addAll(task.commonCommands) - } - list.addAll(scripts) - return concatAndRemoveShebangLines(list) - } else { - return null - } - } - - private static String standardScriptDefines(Rpm task) { - String.format(" RPM_ARCH=%s \n RPM_OS=%s \n RPM_PACKAGE_NAME=%s \n RPM_PACKAGE_VERSION=%s \n RPM_PACKAGE_RELEASE=%s \n\n", - task.arch?.toString()?.toLowerCase()?:'', - task.os?.toString()?.toLowerCase()?: '', - task.packageName, - task.packageVersion, - task.packageRelease) - } - - private static String concatAndRemoveShebangLines(Collection scripts) { - String shebang - StringBuilder result = new StringBuilder() - scripts.each { script -> - script?.eachLine { line -> - if (line.matches('^#!.*$')) { - if (!shebang) { - shebang = line - } else if (line != shebang) { - throw new IllegalArgumentException("mismatching #! script lines") - } - } else { - result.append line - result.append "\n" - } - } - } - if (shebang) { - result.insert(0, shebang + "\n") - } - result.toString() - } -} diff --git a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmExtension.groovy b/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmExtension.groovy deleted file mode 100644 index 7fc6213..0000000 --- a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmExtension.groovy +++ /dev/null @@ -1,409 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.tasks.Input -import org.gradle.api.tasks.Optional -import org.xbib.rpm.Dependency -import org.xbib.rpm.Directory -import org.xbib.rpm.Link -import org.xbib.rpm.lead.Architecture -import org.xbib.rpm.lead.Os -import org.xbib.rpm.lead.PackageType - -class RpmExtension { - - @Optional - @Input - boolean enabled = true - - @Optional - @Input - String packageName - - @Optional - @Input - String packageVersion - - @Optional - @Input - String packageRelease - - @Optional - @Input - Integer epoch = 0 - - @Optional - @Input - String signingKeyPassphrase - - @Optional - @Input - String signingKeyRing - - @Optional - @Input - String signingKeyId - - @Optional - @Input - String signingKeyHashAlgo - - @Optional - @Input - String user - - @Optional - @Input - String group - - @Optional - @Input - String buildHost - - @Optional - @Input - String packageGroup - - @Optional - @Input - String packageDescription = '' - - @Optional - @Input - String summary - - @Optional - @Input - String license - - @Optional - @Input - String packager - - @Optional - @Input - String distribution - - @Optional - @Input - String vendor - - @Optional - @Input - String url - - @Optional - @Input - String sourcePackage - - @Optional - @Input - List fileType - - @Optional - @Input - Boolean addParentDirs = false - - @Optional - @Input - Architecture arch = Architecture.X86_64 - - @Optional - @Input - Os os = Os.LINUX - - @Optional - @Input - PackageType packageType = PackageType.BINARY - - @Input - List prefixes = new ArrayList() - - @Optional - @Input - Integer uid - - @Optional - @Input - Integer gid - - @Optional - @Input - String maintainer - - @Optional - @Input - String uploaders - - @Optional - @Input - String priority - - @Optional - @Input - String preInstall - - @Optional - @Input - File preInstallFile - - @Input - List preInstallCommands = [] - - @Optional - @Input - String postInstall - - @Optional - @Input - File postInstallFile - - @Input - List postInstallCommands = [] - - @Optional - @Input - String preUninstall - - @Optional - @Input - File preUninstallFile - - @Input - List preUninstallCommands = [] - - @Optional - @Input - String postUninstall - - @Optional - @Input - File postUninstallFile - - @Input - List postUninstallCommands = [] - - @Optional - @Input - String preTrans - - @Optional - @Input - File preTransFile - - @Input - List preTransCommands = [] - - @Optional - @Input - String postTrans - - @Optional - @Input - File postTransFile - - @Input - List postTransCommands = [] - - @Input - List commonCommands = [] - - @Input - List links = [] - - Link link(String path, String target) { - link(path, target, -1) - } - - Link link(String path, String target, int permissions) { - Link link = new Link(path, target, permissions) - links.add(link) - link - } - - @Input - List dependencies = [] - - @Input - List obsoletes = [] - - @Input - List conflicts = [] - - @Input - List recommends = [] - - @Input - List suggests = [] - - @Input - List enhances = [] - - @Input - List preDepends = [] - - @Input - List breaks = [] - - @Input - List replaces = [] - - @Input - List provides = [] - - Dependency requires(String packageName) { - requires(packageName, '') - } - - Dependency requires(String packageName, String version){ - requires(packageName, version, 0) - } - - Dependency requires(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - dependencies.add(dep) - dep - } - - Dependency obsoletes(String packageName) { - obsoletes(packageName, '') - } - - Dependency obsoletes(String packageName, String version) { - obsoletes(packageName, version, 0) - } - - Dependency obsoletes(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - obsoletes.add(dep) - dep - } - - Dependency conflicts(String packageName) { - conflicts(packageName, '') - } - - Dependency conflicts(String packageName, String version) { - conflicts(packageName, version, 0) - } - - Dependency conflicts(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - conflicts.add(dep) - dep - } - - Dependency recommends(String packageName) { - recommends(packageName, '') - } - - Dependency recommends(String packageName, String version) { - recommends(packageName, version, 0) - } - - Dependency recommends(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - recommends.add(dep) - dep - } - - Dependency suggests(String packageName) { - suggests(packageName, '') - } - - Dependency suggests(String packageName, String version) { - suggests(packageName, version, 0) - } - - Dependency suggests(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - suggests.add(dep) - dep - } - - Dependency enhances(String packageName) { - enhances(packageName, '') - } - - Dependency enhances(String packageName, String version) { - enhances(packageName, version, 0) - } - - Dependency enhances(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - enhances.add(dep) - dep - } - - Dependency preDepends(String packageName) { - preDepends(packageName, '') - } - - Dependency preDepends(String packageName, String version) { - preDepends(packageName, version, 0) - } - - Dependency preDepends(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - preDepends.add(dep) - dep - } - - Dependency breaks(String packageName) { - breaks(packageName, '') - } - - Dependency breaks(String packageName, String version) { - breaks(packageName, version, 0) - } - - Dependency breaks(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - breaks.add(dep) - dep - } - - Dependency replaces(String packageName) { - replaces(packageName, '') - } - - Dependency replaces(String packageName, String version) { - replaces(packageName, version, 0) - } - - Dependency replaces(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - replaces.add(dep) - dep - } - - Dependency provides(String packageName) { - provides(packageName, '') - } - - Dependency provides(String packageName, String version) { - provides(packageName, version, 0) - } - - Dependency provides(String packageName, String version, int flag) { - def dep = new Dependency(packageName, version, flag) - provides.add(dep) - dep - } - - @Input - List directories = [] - - Directory directory(String path) { - Directory directory = new Directory(path: path) - directories << directory - directory - } - - @Optional - @Input - File changeLogFile - - @Optional - @Input - String changeLog -} diff --git a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmPlugin.groovy b/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmPlugin.groovy deleted file mode 100644 index 87e51bc..0000000 --- a/gradle-plugin-rpm/src/main/groovy/org/xbib/gradle/plugin/RpmPlugin.groovy +++ /dev/null @@ -1,31 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.GradleException -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.api.plugins.BasePlugin -import org.gradle.util.GradleVersion - -class RpmPlugin implements Plugin { - - @Override - void apply(Project project) { - checkVersion() - project.plugins.apply(BasePlugin) - project.ext.Rpm = Rpm.class - project.with { - createExtension(project) - } - } - - private static void checkVersion() { - String version = '6.4' - if (GradleVersion.current() < GradleVersion.version(version)) { - throw new GradleException("need Gradle ${version} or higher") - } - } - - private static void createExtension(Project project) { - project.extensions.create('rpm', RpmExtension) - } -} diff --git a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmFullTest.groovy b/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmFullTest.groovy deleted file mode 100644 index f49e012..0000000 --- a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmFullTest.groovy +++ /dev/null @@ -1,336 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.Project -import org.gradle.testfixtures.ProjectBuilder -import org.junit.jupiter.api.BeforeEach -import org.junit.jupiter.api.Test -import org.xbib.rpm.RpmReader -import org.xbib.rpm.RpmReaderResult -import org.xbib.rpm.format.Format -import org.xbib.rpm.header.IntegerList -import org.xbib.rpm.header.StringList - -import java.nio.charset.StandardCharsets -import java.nio.file.Paths - -import static org.hamcrest.CoreMatchers.is -import static org.hamcrest.MatcherAssert.assertThat -import static org.junit.jupiter.api.Assertions.assertEquals -import static org.junit.jupiter.api.Assertions.assertNotNull -import static org.xbib.rpm.format.Flags.EQUAL -import static org.xbib.rpm.format.Flags.GREATER -import static org.xbib.rpm.format.Flags.LESS -import static org.xbib.rpm.header.HeaderTag.CONFLICTFLAGS -import static org.xbib.rpm.header.HeaderTag.CONFLICTNAME -import static org.xbib.rpm.header.HeaderTag.CONFLICTVERSION -import static org.xbib.rpm.header.HeaderTag.DISTRIBUTION -import static org.xbib.rpm.header.HeaderTag.FILEGROUPNAME -import static org.xbib.rpm.header.HeaderTag.FILEMODES -import static org.xbib.rpm.header.HeaderTag.FILEUSERNAME -import static org.xbib.rpm.header.HeaderTag.OBSOLETEFLAGS -import static org.xbib.rpm.header.HeaderTag.OBSOLETENAME -import static org.xbib.rpm.header.HeaderTag.OBSOLETEVERSION -import static org.xbib.rpm.header.HeaderTag.PREFIXES -import static org.xbib.rpm.lead.Architecture.I386 -import static org.xbib.rpm.lead.Os.LINUX -import static org.xbib.rpm.lead.PackageType.BINARY -import static org.xbib.rpm.payload.CpioHeader.DIR -import static org.xbib.rpm.payload.CpioHeader.FILE - -class RpmFullTest { - - File projectDir - - @BeforeEach - void setup() { - projectDir = new File("build/testrpm") - projectDir.mkdirs() - } - - - @Test - void testCopySpec() { - File bananaFile = new File(projectDir, 'test/banana') - bananaFile.parentFile.mkdirs() - bananaFile.withWriter { - out -> out.write('banana') - } - File srcDir = new File(projectDir, 'src') - srcDir.mkdirs() - String fruit = 'apple' - File appleFile = new File(srcDir, fruit) - appleFile.withWriter { - out -> out.write(fruit) - } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'test' - packageVersion = '1.0.0' - packageRelease = '1' - addParentDirs = true - from(bananaFile.absoluteFile.parent) { - into '/usr/share/myproduct/etc' - } - from(appleFile.absoluteFile.parent) { - into '/usr/local/myproduct/bin' - } - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertEquals([ - './usr/local/myproduct', - './usr/local/myproduct/bin', - './usr/local/myproduct/bin/apple', - './usr/share/myproduct', - './usr/share/myproduct/etc', - './usr/share/myproduct/etc/banana'], result.files*.name) - assertEquals([DIR, DIR, FILE, DIR, DIR, FILE], result.files*.type) - } - - @Test - void testExplicitDirectory() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'test' - packageVersion = '1.0.0' - packageRelease = '1' - directory '/lib' - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertNotNull(result.files.find { it.name == './lib' }) - } - - @Test - void testFilter() { - File appleFile = new File(projectDir, 'src/apple') - appleFile.mkdirs() - appleFile.withWriter { - out -> out.write('{{BASE}}/apple') - } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'test' - packageVersion = '1.0.0' - packageRelease = '1' - from(appleFile.absoluteFile.parent) { - into '/usr/local/myproduct/bin' - filter({ line -> - return line.replaceAll(/\{\{BASE\}\}/, '/usr/local/myproduct') - }) - } - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - def scannerApple = result.files.find { it.name == './usr/local/myproduct/bin/apple' } - assertEquals(StandardCharsets.UTF_8.decode(scannerApple.contents).toString(), '/usr/local/myproduct/apple') - } - - @Test - void testCustomCopySpec() { - File srcDir = new File(projectDir, 'src') - srcDir.mkdirs() - String fruit = 'apple' - File appleFile = new File(srcDir, fruit) - appleFile.withWriter { - out -> out.write(fruit) - } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - def customCopySpec = project.copySpec { - into('lib') { - from 'src' - } - } - project.task([type: Rpm], 'buildRpm', { - packageName = 'copyspec' - packageVersion = '1.0.0' - packageRelease = '1' - with customCopySpec - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertThat(result.files*.name, is(['./lib/apple'])) - } - - @Test - void testFileMode() { - File srcDir1 = new File(projectDir, 'src1') - srcDir1.mkdirs() - new File(srcDir1, 'apple').withWriter { out -> out.write('apple') } - File srcDir2 = new File(projectDir, 'src2') - srcDir2.mkdirs() - new File(srcDir2, 'banana').withWriter { out -> out.write('banana') } - File srcDir3 = new File(projectDir, 'src3') - srcDir3.mkdirs() - new File(srcDir3, 'cherry').withWriter { out -> out.write('cherry') } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'fileMode' - packageVersion = '2.0' - packageRelease = '2' - into '/tiny' - fileMode 0555 - from(srcDir1.absoluteFile) { - // should be default group - } - from(srcDir2.absoluteFile) { - fileMode 0666 - } - from(srcDir3.absoluteFile) { - fileMode 0555 - } - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertEquals([FILE, FILE, FILE], result.files*.type) - assertEquals(['./tiny/apple', './tiny/banana', './tiny/cherry'], result.files*.name) - assertThat([(short)0100555, (short)0100666, (short)0100555], is(result.format.header.getEntry(FILEMODES).values)) - } - - @Test - void testUserGroup() { - File srcDir = new File(projectDir, 'src') - srcDir.mkdirs() - new File(srcDir, 'apple').withWriter { out -> out.write('apple') } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'userTest' - packageVersion = '2.0' - packageRelease = '2' - user = 'joerg' - group = 'users' - from srcDir.absoluteFile - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertEquals([FILE], result.files*.type) - StringList users = result.format.header.getEntry(FILEUSERNAME)?.values as StringList - assertThat(['joerg'], is(users)) - StringList groups = result.format.header.getEntry(FILEGROUPNAME)?.values as StringList - assertThat(['users'], is(groups)) - } - - @Test - void testPrefix() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'prefixes' - packageVersion = '1.0.0' - packageRelease = '1' - prefixes = ['/opt'] - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertThat(StringList.of('/opt') as StringList, is(result.format.header.getEntry(PREFIXES).values)) - } - - @Test - void testConflictsAndObsoletes() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - File srcDir = new File(projectDir, 'src') - srcDir.mkdirs() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'testing' - packageVersion = '1.2' - packageRelease = '3' - packageType = BINARY - arch = I386 - os = LINUX - license = 'Free' - distribution = 'SuperSystem' - vendor = 'Super Associates, LLC' - url = 'http://www.example.com/' - obsoletes('blarg', '1.0', GREATER | EQUAL) - conflicts('blech') - conflicts('packageA', '1.0', LESS) - obsoletes('packageB', '2.2', GREATER) - obsoletes('packageC') - from(srcDir) - into '/opt/bleah' - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - def result = rpmReader.read(Paths.get(projectDir.toString(), 'build', 'distributions', 'testing-1.2-3.i386.rpm')) - Format format = result.format - StringList obsoletes = format.header.getEntry(OBSOLETENAME).values as StringList - StringList obsoleteVersions = format.header.getEntry(OBSOLETEVERSION).values as StringList - IntegerList obsoleteComparisons = format.header.getEntry(OBSOLETEFLAGS).values as IntegerList - StringList conflicts = format.header.getEntry(CONFLICTNAME).values as StringList - StringList conflictVersions = format.header.getEntry(CONFLICTVERSION).values as StringList - IntegerList conflictComparisons = format.header.getEntry(CONFLICTFLAGS).values as IntegerList - StringList distribution = format.header.getEntry(DISTRIBUTION).values as StringList - assertThat(StringList.of('SuperSystem') as StringList, is(distribution)) - assertThat('blarg', is(obsoletes.get(0))) - assertThat(GREATER | EQUAL, is(obsoleteComparisons.get(0))) - assertThat('blech', is(conflicts.get(0))) - assertThat('', is(conflictVersions.get(0))) - assertThat(0, is(conflictComparisons.get(0))) - assertThat('packageA', is(conflicts.get(1))) - assertThat('1.0', is(conflictVersions.get(1))) - assertThat(LESS, is(conflictComparisons.get(1))) - assertThat('packageB', is(obsoletes.get(1))) - assertThat('2.2', is(obsoleteVersions.get(1))) - assertThat(GREATER, is(obsoleteComparisons.get(1))) - assertThat('packageC', is(obsoletes.get(2))) - } - - @Test - void testFilesFromConfiguration() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.repositories { - mavenCentral() - } - project.configurations { - myconf - } - project.dependencies { - myconf "junit:junit:4.12" - } - project.task([type: Rpm], 'buildRpm', { - packageName = 'fromconfiguration' - packageVersion = '1.0.0' - packageRelease = '1' - into('/tmp') { - from project.configurations.myconf - } - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - assertThat(['./tmp/hamcrest-core-1.3.jar', './tmp/junit-4.12.jar'], is(result.files*.name)) - } -} diff --git a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmPluginIntegrationTest.groovy b/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmPluginIntegrationTest.groovy deleted file mode 100644 index 575175a..0000000 --- a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmPluginIntegrationTest.groovy +++ /dev/null @@ -1,57 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.testkit.runner.BuildResult -import org.gradle.testkit.runner.GradleRunner -import org.gradle.testkit.runner.TaskOutcome -import org.junit.jupiter.api.BeforeEach -import org.junit.jupiter.api.Test -import org.junit.jupiter.api.io.TempDir - -import static org.junit.jupiter.api.Assertions.assertEquals - -class RpmPluginIntegrationTest { - - private File projectDir - - private File settingsFile - - private File buildFile - - @BeforeEach - void setup(@TempDir File testProjectDir) throws IOException { - this.projectDir = testProjectDir - this.settingsFile = new File(testProjectDir, "settings.gradle") - this.buildFile = new File(testProjectDir, "build.gradle") - } - - @Test - void testPlugin() { - String settingsFileContent = ''' -rootProject.name = 'rpm-test' -''' - settingsFile.write(settingsFileContent) - String buildFileContent = ''' -plugins { - id 'org.xbib.gradle.plugin.rpm' -} - -rpm { - enabled = true -} - -task myRpm(type: Rpm) { - packageName = 'rpmIsUpToDate' - arch = org.xbib.rpm.lead.Architecture.NOARCH - os = org.xbib.rpm.lead.Os.LINUX -} -''' - buildFile.write(buildFileContent) - BuildResult result = GradleRunner.create() - .withProjectDir(projectDir) - .withArguments(":build", "--info") - .withPluginClasspath() - .forwardOutput() - .build() - assertEquals(TaskOutcome.UP_TO_DATE, result.task(":build").getOutcome()) - } -} diff --git a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmScriptTest.groovy b/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmScriptTest.groovy deleted file mode 100644 index 6fe77d3..0000000 --- a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmScriptTest.groovy +++ /dev/null @@ -1,156 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.Project -import org.gradle.testfixtures.ProjectBuilder -import org.junit.jupiter.api.BeforeEach -import org.junit.jupiter.api.Test -import org.xbib.rpm.RpmReader -import org.xbib.rpm.changelog.ChangelogParser -import org.xbib.rpm.format.Format -import org.xbib.rpm.header.EntryType -import org.xbib.rpm.header.IntegerList -import org.xbib.rpm.header.StringList -import org.xbib.rpm.header.entry.SpecEntry -import java.time.LocalDateTime -import java.time.ZoneOffset -import static org.hamcrest.MatcherAssert.assertThat -import static org.hamcrest.CoreMatchers.* -import static org.junit.jupiter.api.Assertions.assertEquals -import static org.junit.jupiter.api.Assertions.assertNotNull -import static org.xbib.rpm.header.HeaderTag.POSTINSCRIPT -import static org.xbib.rpm.header.HeaderTag.POSTTRANSSCRIPT -import static org.xbib.rpm.header.HeaderTag.POSTUNSCRIPT -import static org.xbib.rpm.header.HeaderTag.PREINSCRIPT -import static org.xbib.rpm.header.HeaderTag.PRETRANSSCRIPT -import static org.xbib.rpm.header.HeaderTag.PREUNSCRIPT -import static org.xbib.rpm.header.HeaderTag.CHANGELOGNAME -import static org.xbib.rpm.header.HeaderTag.CHANGELOGTEXT -import static org.xbib.rpm.header.HeaderTag.CHANGELOGTIME - -class RpmScriptTest { - - File projectDir - - @BeforeEach - void setup() { - projectDir = new File("build/testrpm") - projectDir.mkdirs() - } - - @Test - void testInstallScripts() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'installscripts' - packageVersion = '1.0' - packageRelease = '1' - preInstall = "echo 'Hello Pre World'" - postInstall = "echo 'Hello Post World'" - preUninstall = "echo 'Hello PreUn World'" - postUninstall = "echo 'Hello PostUn World'" - preTrans = "echo 'Hello PreTrans World'" - postTrans = "echo 'Hello PostTrans World'" - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - def result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - Format format = result.format - assertThat(["echo 'Hello Pre World'"], is(format.header.getEntry(PREINSCRIPT)?.values)) - assertThat(["echo 'Hello Post World'"], is(format.header.getEntry(POSTINSCRIPT)?.values)) - assertThat(["echo 'Hello PreUn World'"], is(format.header.getEntry(PREUNSCRIPT)?.values)) - assertThat(["echo 'Hello PostUn World'"], is(format.header.getEntry(POSTUNSCRIPT)?.values)) - assertThat(["echo 'Hello PreTrans World'"], is(format.header.getEntry(PRETRANSSCRIPT)?.values)) - assertThat(["echo 'Hello PostTrans World'"], is(format.header.getEntry(POSTTRANSSCRIPT)?.values)) - } - - - @Test - void testInstallScriptFiles() { - String preinstall = getClass().getResource('preinstall.sh').text - File scriptDir = new File(projectDir, 'scripts') - scriptDir.mkdirs() - new File(scriptDir, 'preinstall.sh').withWriter { out -> out.write(preinstall) } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'installscripts' - packageVersion = '1.0' - packageRelease = '1' - preInstallFile = project.file('scripts/preinstall.sh') - postInstall = "echo 'Hello Post World'" - preUninstall = "echo 'Hello PreUn World'" - postUninstall = "echo 'Hello PostUn World'" - preTrans = "echo 'Hello PreTrans World'" - postTrans = "echo 'Hello PostTrans World'" - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - def result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - Format format = result.format - assertThat(["#!/usr/bin/env bash\necho 'Hello from file'\n"], is(format.header.getEntry(PREINSCRIPT)?.values)) - assertThat(["echo 'Hello Post World'"], is(format.header.getEntry(POSTINSCRIPT)?.values)) - assertThat(["echo 'Hello PreUn World'"], is(format.header.getEntry(PREUNSCRIPT)?.values)) - assertThat(["echo 'Hello PostUn World'"], is(format.header.getEntry(POSTUNSCRIPT)?.values)) - assertThat(["echo 'Hello PreTrans World'"], is(format.header.getEntry(PRETRANSSCRIPT)?.values)) - assertThat(["echo 'Hello PostTrans World'"], is(format.header.getEntry(POSTTRANSSCRIPT)?.values)) - } - - @Test - void testChangeLog() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - String changelog = getClass().getResource('changelog').text - File changelogDir = new File(projectDir, 'changelog') - changelogDir.mkdirs() - new File(changelogDir, 'changelog').withWriter { out -> out.write(changelog) } - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'changelog' - packageVersion = '1.0' - packageRelease = '1' - changeLogFile = project.file('changelog/changelog') - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - def result = rpmReader.read(project.tasks.buildRpm.outputs.files.first().toPath()) - Format format = result.format - assertDateEntryHeaderEqualsAt("Tue Feb 24 2015", format, - CHANGELOGTIME, 10, 0) - assertHeaderEqualsAt("Thomas Jefferson", format, - CHANGELOGNAME, 10, 4) - assertHeaderEqualsAt("- Initial rpm for this package", format, - CHANGELOGTEXT, 10, 9) - assertHeaderEqualsAt("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod \n" + - "tempor incididunt ut labore et dolore magna aliqua", format, - CHANGELOGTEXT, 10, 0) - } - - private static void assertDateEntryHeaderEqualsAt(String expected, Format format, EntryType entryType, int size, int pos) { - assertNotNull(format, "null format") - SpecEntry entry = format.getHeader().getEntry(entryType) - assertNotNull(entry, "Entry not found : " + entryType.getName()) - assertEquals(4, entry.getType(), "Entry type : " + entryType.getName()) - IntegerList values = (IntegerList) entry.getValues() - assertNotNull(values, "null values") - assertEquals(size, values.size(), "Entry size : " + entryType.getName()) - LocalDateTime localDate = LocalDateTime.ofEpochSecond(values.get(pos), 0, ZoneOffset.UTC) - assertEquals(expected, ChangelogParser.CHANGELOG_FORMAT.format(localDate), "Entry value : " + entryType.getName()) - } - - private static void assertHeaderEqualsAt(String expected, Format format, EntryType entryType, int size, int pos) { - assertNotNull(format, "null format") - SpecEntry entry = format.getHeader().getEntry(entryType) - assertNotNull(entry, "Entry not found : " + entryType.getName()) - assertEquals(8, entry.getType(), "Entry type : " + entryType.getName()) - StringList values = (StringList) entry.getValues() - assertNotNull(values, "null values") - assertEquals(size, values.size(), "Entry size : " + entryType.getName()) - assertEquals(expected, values.get(pos), "Entry value : " + entryType.getName()) - } -} diff --git a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSignTest.groovy b/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSignTest.groovy deleted file mode 100644 index 907e823..0000000 --- a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSignTest.groovy +++ /dev/null @@ -1,62 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.Project -import org.gradle.testfixtures.ProjectBuilder -import org.junit.jupiter.api.BeforeEach -import org.junit.jupiter.api.Test -import org.xbib.rpm.RpmReader -import org.xbib.rpm.signature.SignatureTag -import java.nio.file.Paths -import static org.junit.jupiter.api.Assertions.assertNotNull -import static org.junit.jupiter.api.Assertions.assertNull -import static org.xbib.rpm.lead.Architecture.I386 - -class RpmSignTest { - - File projectDir - - @BeforeEach - void setup() { - projectDir = new File("build/testrpm") - projectDir.mkdirs() - } - - @Test - void testUnsigned() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'bleah' - packageVersion = '1.0' - packageRelease = '1' - arch = I386 - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - def res = rpmReader.read(Paths.get(projectDir.toString(), 'build', 'distributions', 'bleah-1.0-1.i386.rpm')) - assertNull(res.format.signatureHeader.getEntry(SignatureTag.LEGACY_PGP)) - } - - @Test - void testSign() { - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'bleah' - packageVersion = '1.0' - packageRelease = '1' - arch = I386 - signingKeyId = 'F02C6D2C' - signingKeyPassphrase = 'test' - signingKeyRing = 'src/test/resources/test-secring.gpg' - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - def res = rpmReader.read(Paths.get(projectDir.toString(), 'build', 'distributions', 'bleah-1.0-1.i386.rpm')) - assertNotNull(res.format.signatureHeader.getEntry(SignatureTag.LEGACY_PGP)) - } -} diff --git a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSimpleTest.groovy b/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSimpleTest.groovy deleted file mode 100644 index 450bfae..0000000 --- a/gradle-plugin-rpm/src/test/groovy/org/xbib/gradle/plugin/RpmSimpleTest.groovy +++ /dev/null @@ -1,104 +0,0 @@ -package org.xbib.gradle.plugin - -import org.gradle.api.Project -import org.gradle.testfixtures.ProjectBuilder -import org.junit.jupiter.api.BeforeEach -import org.junit.jupiter.api.Test -import org.xbib.rpm.RpmReaderResult -import org.xbib.rpm.RpmReader -import org.xbib.rpm.format.Format -import java.nio.file.Paths -import static org.hamcrest.MatcherAssert.assertThat -import static org.hamcrest.CoreMatchers.* -import static org.junit.jupiter.api.Assertions.assertTrue -import static org.xbib.rpm.format.Flags.EQUAL -import static org.xbib.rpm.format.Flags.GREATER -import static org.xbib.rpm.header.HeaderTag.ARCH -import static org.xbib.rpm.header.HeaderTag.DISTRIBUTION -import static org.xbib.rpm.header.HeaderTag.EPOCH -import static org.xbib.rpm.header.HeaderTag.NAME -import static org.xbib.rpm.header.HeaderTag.OS -import static org.xbib.rpm.header.HeaderTag.RELEASE -import static org.xbib.rpm.header.HeaderTag.VERSION -import static org.xbib.rpm.lead.Architecture.I386 -import static org.xbib.rpm.lead.Os.LINUX -import static org.xbib.rpm.lead.PackageType.BINARY - -class RpmSimpleTest { - - File projectDir - - @BeforeEach - void setup() { - projectDir = new File("build/testrpm") - projectDir.mkdirs() - } - - @Test - void simpleRpm() { - File srcDir = new File(projectDir, 'src') - srcDir.mkdirs() - new File(srcDir, 'apple').withWriter { out -> - out.write('apple') - } - File noParentsDir = new File(projectDir, 'noParentsDir') - noParentsDir.mkdirs() - new File(noParentsDir, 'alone').withWriter { out -> - out.write('alone') - } - Project project = ProjectBuilder.builder() - .withProjectDir(projectDir) - .build() - project.apply plugin: 'org.xbib.gradle.plugin.rpm' - project.task([type: Rpm], 'buildRpm', { - packageName = 'bleah' - packageVersion = '1.0' - packageRelease = '1' - packageType = BINARY - arch = I386 - os = LINUX - packageGroup = 'Development/Libraries' - packageDescription = 'Not a very interesting library.' - summary = 'Bleah blarg' - license = 'Free' - distribution = 'SuperSystem' - vendor = 'Super Associates, LLC' - url = 'http://www.example.com/' - requires('blarg', '1.0', GREATER | EQUAL) - requires('blech') - into '/opt/bleah' - from('src') { - fileType = ['config', 'noreplace'] - } - from('noParentsDir') { - into '/a/path/not/to/create' - } - link('/opt/bleah/banana', '/opt/bleah/apple') - }) - project.tasks.buildRpm.copy() - RpmReader rpmReader = new RpmReader() - RpmReaderResult result = rpmReader.read(Paths.get(projectDir.toString(), 'build', 'distributions', 'bleah-1.0-1.i386.rpm')) - Format format = result.format - assertThat(['bleah'], is(format.header.getEntry(NAME)?.values)) - assertThat(['1.0'], is(format.header.getEntry(VERSION)?.values)) - assertThat(['1'], is(format.header.getEntry(RELEASE)?.values)) - assertThat([0], is(format.header.getEntry(EPOCH)?.values)) - assertThat(['i386'], is(format.header.getEntry(ARCH)?.values)) - assertThat(['linux'], is(format.header.getEntry(OS)?.values)) - assertThat(['SuperSystem'], is(format.header.getEntry(DISTRIBUTION)?.values)) - assertTrue(result.files*.name.every { fileName -> - ['./a/path/not/to/create/alone', - './opt/bleah', - './opt/bleah/apple', - './opt/bleah/banana' - ].any { path -> - path.startsWith(fileName) - } - }) - assertTrue(result.files*.name.every { fileName -> - ['./a/path/not/to/create'].every { path -> - !path.startsWith(fileName) - } - }) - } -} diff --git a/gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/changelog b/gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/changelog deleted file mode 100644 index 6c3ab5b..0000000 --- a/gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/changelog +++ /dev/null @@ -1,24 +0,0 @@ -* Tue Feb 24 2015 George Washington -Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod -tempor incididunt ut labore et dolore magna aliqua -* Tue Feb 10 2015 George Washington -quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. -* Mon Nov 17 2014 George Washington - consectetur, adipisci velit, sed quia non numquam eius modi - sunt explicabo. Nemo enim ipsam voluptatem quia vol - eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat - Excepteur sint occaecat cupidatat non proident, sunt -* Fri Mar 06 2009 John Adams -- nostrum exercitationem ullam corporis suscipit -* Thu Oct 16 2008 Thomas Jefferson -- Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, -* Thu Aug 23 2007 James Madison -eaque ipsa quae ab illo inventore veritatis et quasi architecto -* Mon Jun 04 2007 James Monroe -- adipisci velit, sed q -* Tue May 08 2007 James Madison -- dolore eu fugiat nulla pariatur -* Tue Apr 10 2007 James Monroe --+// quis nostrum exercitationem ullam corporis -* Wed Nov 08 2006 James Madison -- Initial rpm for this package diff --git a/gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/preinstall.sh b/gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/preinstall.sh deleted file mode 100644 index 10b58f4..0000000 --- a/gradle-plugin-rpm/src/test/resources/org/xbib/gradle/plugin/preinstall.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/usr/bin/env bash -echo 'Hello from file' diff --git a/gradle-plugin-rpm/src/test/resources/test-secring.gpg b/gradle-plugin-rpm/src/test/resources/test-secring.gpg deleted file mode 100644 index 2044048a0212d321a6926cc727415cf4da5fcf81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2551 zcmVAo#(g@*%9Adr8N`H!W04^zbqGp|s z*@XictD`iQ3z27Fv1sf}W1jTn2iB$^Sq8T?r;__F`>eE&Z(`xhNL4EBE(TXiRo~o# zY>3TSf&iUhPpHISL0{UszGqN^I?hO;+h85KNB|b!IQoPxV!I4~E!x{b#Z!|Q&Y$hU- zUo~!&XQI^3A@~np78SNnh>AAE69;WPX6tj9e5s?75%r=ny0;BQ2t#ma)pb5V$73CuCVEb`^|Ayr&&!^%>qw;3) zv_!~WG|m$(pXe5^#W1BDn^fJ(PkQ*2m6}~7$U%D2og>#<0UmD8fZSQQu3v~^Mk9;M z#;!wg#1}DKfxg$sFOs|k8?1U2KXN!29_*z?fo{UCJ`K+Vr!+GX)YIdwwgM`k&E-cNGfO$p7(NvZy}8U5XQS%P5ZtAA{uezQ)yhGQqw$EVR> zSvs!qu9lk&G?)cn5az%g%w)iNqwCEv%J&bSdEq@J{Kxt{#~l0vZ*cov^*1~3b<=p) ztDeziiI~dJ%F0Vohxl*n_xJXCBglCTkaQqJ5z>AKMX}WmctN%Zv=DSj(W2Ki|~xA6%%&Z7&$eSvJ%(vYi7ZVt0o=`;yizxY50*`-LdG#1G@Yy7jvZPJXmW zk^pTeW(EKZXS{dmy2*T3NooYY`0vEJD%_-qxJ_+UcUrPae8*O{FlUS(q~8ra&`5y( zb$X&t(S{hkFO;IzD?g|+6Icy?juS`z*l6TzQGk*4K6suaGu`?fS#@u`2?rliL11?K z24_C=HdQO#8KFh!juAK6c0K$MtGquGU?}*j6ulqmKQZ z1I7ed)72&c2mrj`KHvo^DCz zj^b-JB0$3FO)bq6qjF&64ZZN~sub^37!&Xife%Oz93m*y60>s7fBJ+KwkSS{qb{5{ z%{6NBIg$h)AJJdmoi9jSlNapOdIYvM6Q5q5y8=mxm`6RNvNRVe)uk6wi2s1G#H+-J zOwYzY_7}_h)UB{PE{zFqZubptV{w~@Po%h66>>}=pQhJzxz0gXNx59*iato{Yg~9e ztua4;{E+|=0RRF12?Gchy$jF`KlRJNK~8%_2;TSwdUfY&qd_D0%L@b`ucNqc?-;MCk4z1wWzvGr+w(>2eE)|; zO%f|hhgoeI==|bx*x41%k`|&$^tU_~p-bFFbbyR|R;G0FyFFxS^x2d8fDdmH7$(I; zcaE@d@Z)1PD1?299f_$5wzSL~6qJ*iu)lFLI2onQhLoonlV>3s_sd+@r3G=^~4FR$rfvQQ@4SGFlH;dc;D4~GtL&mo9JG!WiS9N(Uq6e}bD z-#sHdigow5Tr5|tT}$kyS$kg8GNh!tREkF7Bl7NX@b?gD8QtY2sjRvT9FyOWW!4e+ zi;lESrv!(pAJ}hBVTeyr9p(!DbPhaE)&zI*%|VMH(?MHq)QL0LGyuy70%uM4GET~}G)yh1qsqPTk|0wFSeGP0C=o7;; zZZ8pbiYrGnNzCo?|t4?M!8opwr zQ;B?t&ocQWTGqEWTuX-B3xWv$2PLw%csMRtklDGu|4mbJDUUyn z2@tx{NEYxcZ7d-E2mp_L6hp!C#7Xi@K_9PR;&b(XNZ1TSkfD#tziBd&x&&&lMl>8s zyOmhBpufP2??1vJ*9XmV2YCEhGkX=C)>(CYaV=^L=#!>!_>RB`9#<;0+*a-jt diff --git a/maven-plugin-rpm/NOTICE.txt b/maven-plugin-rpm/NOTICE.txt deleted file mode 100644 index 87335d8..0000000 --- a/maven-plugin-rpm/NOTICE.txt +++ /dev/null @@ -1,13 +0,0 @@ -This is a derived work of - -https://github.com/spaulg/redlinerpm-maven-plugin - -licensed under Apache Software License 2.0 - -Copyright 2014 Simon Paulger spaulger@codezen.co.uk - -Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. \ No newline at end of file diff --git a/maven-plugin-rpm/build.gradle b/maven-plugin-rpm/build.gradle deleted file mode 100644 index 0105f26..0000000 --- a/maven-plugin-rpm/build.gradle +++ /dev/null @@ -1,75 +0,0 @@ -apply plugin: 'maven' - -// for this script, see https://gist.github.com/fikovnik/ffc1fed1867bc7fa679aaf8e48f00c21 - -configurations { - mavenEmbedder -} - -dependencies { - api project(':rpm-core') - api "org.apache.ant:ant:${project.property('ant.version')}" - implementation "org.mvel:mvel2:${project.property('mvel.version')}" - compileOnly "org.apache.maven:maven-core:${project.property('maven.version')}" - compileOnly "org.apache.maven:maven-plugin-api:${project.property('maven.version')}" - compileOnly "org.apache.maven.plugin-tools:maven-plugin-annotations:${project.property('maven-plugin-annotations.version')}" - testImplementation "org.apache.maven:maven-core:${project.property('maven.version')}" - testImplementation "org.apache.maven:maven-plugin-api:${project.property('maven.version')}" - testImplementation "org.apache.maven.plugin-tools:maven-plugin-annotations:${project.property('maven-plugin-annotations.version')}" - mavenEmbedder "org.apache.maven:maven-embedder:${project.property('maven.version')}" - mavenEmbedder "org.apache.maven:maven-compat:${project.property('maven.version')}" - mavenEmbedder "org.slf4j:slf4j-simple:${project.property('slf4j.version')}" - mavenEmbedder "org.apache.maven.wagon:wagon-http:${project.property('maven-wagon.version')}:shaded" - mavenEmbedder "org.apache.maven.wagon:wagon-provider-api:${project.property('maven-wagon.version')}" - mavenEmbedder "org.eclipse.aether:aether-connector-basic:${project.property('aether-connector-basic.version')}" - mavenEmbedder "org.eclipse.aether:aether-transport-wagon:${project.property('aether-transport-wagon.version')}" -} - -test { - systemProperty 'project.build.testOutputDirectory', project.buildDir.path + "/resources/test" -} - -install.repositories.mavenInstaller.pom.with { - groupId = project.group - artifactId = project.name - version = project.version - packaging = 'maven-plugin' -} - -task generatePluginDescriptor(type: JavaExec, dependsOn: compileJava) { - def pomFile = file("$buildDir/pom.xml") - def pluginDescriptorFile = new File(file(project.compileJava.destinationDir), 'META-INF/maven/plugin.xml') - def directory = buildDir.canonicalPath - def outputDirectory = compileJava.destinationDir.canonicalPath - inputs.files project.compileJava.outputs.files - outputs.file pluginDescriptorFile - classpath = configurations.mavenEmbedder - main = 'org.apache.maven.cli.MavenCli' - systemProperties['maven.multiModuleProjectDirectory'] = projectDir - args = [ - '--update-snapshots', - '--errors', - '--batch-mode', - '--settings', "${project.projectDir}/config/maven/repo-settings.xml", - '--file', "${buildDir}/pom.xml", - "org.apache.maven.plugins:maven-plugin-plugin:${project.property('maven-plugin-plugin.version')}:descriptor" - ] - doFirst { - install.repositories.mavenInstaller.pom.withXml { - asNode().appendNode('build').with { - appendNode('directory', directory) - appendNode('outputDirectory', outputDirectory) - } - }.writeTo(pomFile) - assert pomFile.file, "${pomFile.canonicalPath}: was not generated" - logger.info("POM is generated in ${pomFile.canonicalPath}") - } - doLast { - assert pluginDescriptorFile.file, "${pluginDescriptorFile.canonicalPath}: was not generated" - logger.info("Maven plugin descriptor generated in ${pluginDescriptorFile.canonicalPath}") - } -} - -project.jar.dependsOn(generatePluginDescriptor) - -apply from: rootProject.file('gradle/publishing/publication.gradle') diff --git a/maven-plugin-rpm/config/maven/repo-settings.xml b/maven-plugin-rpm/config/maven/repo-settings.xml deleted file mode 100644 index 6e83096..0000000 --- a/maven-plugin-rpm/config/maven/repo-settings.xml +++ /dev/null @@ -1,24 +0,0 @@ - - ~/.m2/repository - - xbib - - - - xbib - - - xbib - https://xbib.org/repository - - true - always - - - true - - - - - - \ No newline at end of file diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmBaseObject.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmBaseObject.java deleted file mode 100644 index 9fffd2b..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmBaseObject.java +++ /dev/null @@ -1,95 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -/** - * - */ -public abstract class RpmBaseObject { - /** - * Destination permissions. - */ - private int permissions = 0; - - /** - * Destination file owner. - */ - private String owner = null; - - /** - * Destination file group. - */ - private String group = null; - - protected abstract RpmPackage getPackage(); - - /** - * Set permissions. - * - * @param permissions permissions - */ - public void setPermissions(int permissions) { - this.permissions = permissions; - } - - /** - * Get permissions, or the default setting if not set. - * - * @return permissions - */ - public int getPermissionsOrDefault() { - if (0 == permissions) { - return getPackage().getMojo().getDefaultFileMode(); - } else { - return permissions; - } - } - - /** - * Set owner. - * - * @param owner owner - */ - public void setOwner(String owner) { - if (null != owner && owner.equals("")) { - owner = null; - } - this.owner = owner; - } - - /** - * Get owner, or the default setting if not set. - * - * @return owner - */ - public String getOwnerOrDefault() { - if (null == this.owner) { - return this.getPackage().getMojo().getDefaultOwner(); - } else { - return this.owner; - } - } - - /** - * Set group. - * - * @param group group - */ - public void setGroup(String group) { - if (null != group && group.equals("")) { - group = null; - } - this.group = group; - } - - /** - * Get group, or the default setting if not set. - * - * @return group - */ - public String getGroupOrDefault() { - if (null == this.group) { - return this.getPackage().getMojo().getDefaultGroup(); - } else { - return this.group; - } - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmLink.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmLink.java deleted file mode 100644 index 8a15153..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmLink.java +++ /dev/null @@ -1,68 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -/** - * - */ -public class RpmLink extends RpmBaseObject { - - private RpmPackage rpmPackage; - - private String path; - - private String target; - - /** - * Get associated RPM package. - * - * @return RPM package - */ - @Override - public RpmPackage getPackage() { - return this.rpmPackage; - } - - /** - * Set associated RPM package. - * - * @param rpmPackage RPM package - */ - public void setPackage(RpmPackage rpmPackage) { - this.rpmPackage = rpmPackage; - } - - /** - * Get symlink path. - * - * @return symlink path - */ - public String getPath() { - return path; - } - - /** - * Set symlink path. - * - * @param path symlink path - */ - public void setPath(String path) { - this.path = path; - } - - /** - * Get symlink target. - * - * @return symlink target - */ - public String getTarget() { - return target; - } - - /** - * Set symlink target. - * - * @param target symlink target - */ - public void setTarget(String target) { - this.target = target; - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackage.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackage.java deleted file mode 100644 index d4aa5eb..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackage.java +++ /dev/null @@ -1,1338 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import org.apache.maven.plugin.logging.Log; -import org.xbib.maven.plugin.rpm.mojo.RpmMojo; -import org.xbib.rpm.RpmBuilder; -import org.xbib.rpm.exception.RpmException; -import org.xbib.rpm.exception.SigningKeyNotFoundException; -import org.xbib.rpm.exception.UnknownArchitectureException; -import org.xbib.rpm.exception.UnknownOperatingSystemException; -import org.xbib.rpm.format.Flags; -import org.xbib.rpm.lead.Architecture; -import org.xbib.rpm.lead.Os; -import org.xbib.rpm.lead.PackageType; -import org.xbib.rpm.payload.CompressionType; -import org.xbib.rpm.security.HashAlgo; -import org.xbib.rpm.trigger.Trigger; - -import java.io.IOException; -import java.io.InputStream; -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.nio.channels.FileChannel; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.nio.file.StandardOpenOption; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * RPM package. - */ -public class RpmPackage { - /** - * Plugin mojo currently in use. - */ - private RpmMojo mojo = null; - - /** - * Package name. - */ - private String name = null; - - /** - * Package version. - */ - private String version = null; - - /** - * Project version. - */ - private String projectVersion = null; - - /** - * Package release. - */ - private String release = null; - - /** - * Final name of RPM artifact. - */ - private String finalName = null; - - /** - * Package url. - */ - private String url = null; - - /** - * Package group. - */ - private String group = null; - - /** - * Package license. - */ - private String license = null; - - /** - * Package summary. - */ - private String summary = null; - - /** - * Package description. - */ - private String description = null; - - /** - * Package distribution. - */ - private String distribution = null; - - /** - * Build architecture. - * Defaults to detected architecture of build environment if non given - */ - private Architecture architecture = null; - - /** - * Build operating system. - * Defaults to detected operating system of build environment if non given - */ - private Os operatingSystem = null; - - /** - * Build host name. - * Defaults to hostname of build server provided by hostname service - */ - private String buildHostName = null; - - /** - * Packager of RPM. - */ - private String packager = null; - - /** - * Source RPM Name. - */ - private String sourceRpm = null; - - /** - * Attach the artifact. - */ - private boolean attach = true; - - /** - * Artifact classifier. - */ - private String classifier = null; - - /** - * Pre transaction event hook script file. - */ - private Path preTransactionScriptPath = null; - - /** - * Pre transaction event hook script program. - */ - private String preTransactionProgram = null; - - /** - * Pre install event hook script file. - */ - private Path preInstallScriptPath = null; - - /** - * Pre install event hook program. - */ - private String preInstallProgram = null; - - /** - * Post install event hook script file. - */ - private Path postInstallScriptPath = null; - - /** - * Post install event hook program. - */ - private String postInstallProgram = null; - - /** - * Pre uninstall event hook script file. - */ - private Path preUninstallScriptPath = null; - - /** - * Pre uninstall event hook script program. - */ - private String preUninstallProgram = null; - - /** - * Post uninstall event hook script file. - */ - private Path postUninstallScriptPath = null; - - /** - * Post uninstall event hook program. - */ - private String postUninstallProgram = null; - - /** - * Post transaction event hook script file. - */ - private Path postTransactionScriptPath = null; - - /** - * Post transaction event hook program. - */ - private String postTransactionProgram = null; - - /** - * List of triggers. - */ - private List triggers = new ArrayList<>(); - - /** - * Signing key. - */ - private String signingKey = null; - - /** - * Signing key pass phrase. - */ - private String signingKeyPassPhrase = null; - - /** - * Signing key id. - */ - private Long signingKeyId = null; - - /** - * Prefixes. - */ - private List prefixes = new ArrayList<>(); - - /** - * Builtins. - */ - private List builtins = new ArrayList<>(); - - /** - * Dependencies. - */ - private List dependencies = new ArrayList<>(); - - /** - * Obsoletes. - */ - private List obsoletes = new ArrayList<>(); - - /** - * Conflicts. - */ - private List conflicts = new ArrayList<>(); - - /** - * Links. - */ - private List links = new ArrayList<>(); - - /** - * Package file matching rules. - */ - private List rules = new ArrayList<>(); - - /** - * Get mojo in use by Maven. - * - * @return Current maven mojo - */ - public RpmMojo getMojo() { - return mojo; - } - - /** - * Set mojo in use by Maven. - * - * @param mojo Current maven mojo - */ - public void setMojo(RpmMojo mojo) { - this.mojo = mojo; - } - - /** - * Get package name. - * - * @return Package name - */ - public String getName() { - if (null == name) { - name = getMojo().getProjectArtifactId(); - } - - return name; - } - - /** - * Set package name. - * - * @param name Package name - */ - public void setName(String name) { - this.name = name; - } - - /** - * Get package version. - * - * @return Package version - */ - public String getVersion() { - if (null == version) { - version = sanitiseVersion(getMojo().getProjectVersion()); - } - - return version; - } - - /** - * Set package version. - * - * @param version Package version - */ - public void setVersion(String version) { - if (null != version && version.equals("")) { - version = null; - } - projectVersion = version; - this.version = sanitiseVersion(version); - } - - /** - * Get project version. - * - * @return Project version - */ - public String getProjectVersion() { - if (null == projectVersion) { - projectVersion = getMojo().getProjectVersion(); - } - - return projectVersion; - } - - /** - * Sanitise the version number for use in packaging. - * - * @param version Un-sanitised version - * @return Sanitised version number - */ - private String sanitiseVersion(String version) { - if (null != version && !version.replaceAll("[a-zA-Z0-9\\.]", "").equals("")) { - version = version.replaceAll("-", "."); - version = version.replaceAll("[^a-zA-Z0-9\\.]", ""); - } - return version; - } - - /** - * Get package release. - * - * @return Package release - */ - public String getRelease() { - if (null == release) { - release = Long.toString(System.currentTimeMillis() / 1000); - } - return release; - } - - /** - * Set package release. - * - * @param release Package release - */ - public void setRelease(String release) { - this.release = release; - } - - /** - * Get final name of the RPM artifact. - * If a final name is not set, the final name will default to {name}-{version}-{release}.{architecture}.rpm - * - * @return Final name of RPM artifact - */ - public String getFinalName() { - if (finalName == null) { - finalName = String.format("%s-%s-%s.%s.rpm", - getName(), getVersion(), getRelease(), - getArchitecture().toString().toLowerCase()); - } - return finalName; - } - - /** - * Set final name of RPM artifact. - * - * @param finalName Final name of RPM artifact - */ - public void setFinalName(String finalName) { - this.finalName = finalName; - } - - /** - * Get package dependencies. - * - * @return Package dependencies - */ - public List getDependencies() { - return dependencies; - } - - /** - * Set package dependencies. - * - * @param dependencies Package dependencies - */ - public void setDependencies(List dependencies) { - this.dependencies = dependencies; - } - - /** - * Get package obsoletes. - * - * @return Package obsoletes - */ - public List getObsoletes() { - return obsoletes; - } - - /** - * Set package obsoletes. - * - * @param obsoletes Package obsoletes - */ - public void setObsoletes(List obsoletes) { - this.obsoletes = obsoletes; - } - - /** - * Get package conflicts. - * - * @return Package conflicts - */ - public List getConflicts() { - return conflicts; - } - - /** - * Set package conflicts. - * - * @param conflicts Package conflicts - */ - public void setConflicts(List conflicts) { - this.conflicts = conflicts; - } - - /** - * Get package links. - * - * @return Package links - */ - public List getLinks() { - return links; - } - - /** - * Set package links. - * - * @param links Package links - */ - public void setLinks(List links) { - if (null != links) { - for (RpmLink link : links) { - link.setPackage(this); - } - } - this.links = links; - } - - /** - * Get package url. - * - * @return Package url - */ - public String getUrl() { - if (null == url) { - url = getMojo().getProjectUrl(); - } - return url; - } - - /** - * Set package url. - * - * @param url Package url - */ - public void setUrl(String url) { - this.url = url; - } - - /** - * Get package group. - * - * @return Package group - */ - public String getGroup() { - return group; - } - - /** - * Set package group. - * - * @param group Package group - */ - public void setGroup(String group) { - this.group = group; - } - - /** - * Get package license. - * - * @return Package license - */ - public String getLicense() { - if (null == license) { - license = getMojo().getCollapsedProjectLicense(); - } - return license; - } - - /** - * Set package license. - * - * @param license Package license - */ - public void setLicense(String license) { - this.license = license; - } - - /** - * Get package summary. - * - * @return Package summary - */ - public String getSummary() { - return summary; - } - - /** - * Set package summary. - * - * @param summary Package summary - */ - public void setSummary(String summary) { - this.summary = summary; - } - - /** - * Get package description. - * - * @return Package description - */ - public String getDescription() { - return description; - } - - /** - * Set package description. - * - * @param description Package description - */ - public void setDescription(String description) { - this.description = description; - } - - /** - * Get package distribution. - * - * @return Package distribution - */ - public String getDistribution() { - return distribution; - } - - /** - * Set package distribution. - * - * @param distribution Package distribution - */ - public void setDistribution(String distribution) { - this.distribution = distribution; - } - - /** - * Get package architecture. - * - * @return Package architecture - */ - public Architecture getArchitecture() { - if (null == architecture) { - architecture = Architecture.NOARCH; - } - return architecture; - } - - /** - * Set package architecture. - * - * @param architecture Package architecture - * @throws UnknownArchitectureException The architecture supplied is not recognised. - */ - public void setArchitecture(String architecture) throws UnknownArchitectureException { - if (null == architecture || architecture.equals("")) { - throw new UnknownArchitectureException(architecture); - } - architecture = architecture.toUpperCase(); - try { - this.architecture = Architecture.valueOf(architecture); - } catch (IllegalArgumentException ex) { - throw new UnknownArchitectureException(architecture, ex); - } - } - - /** - * Get package operating system. - * Defaults to LINUX if not set. - * - * @return Package operating system - */ - public Os getOperatingSystem() { - if (null == operatingSystem) { - operatingSystem = Os.LINUX; - } - return operatingSystem; - } - - /** - * Set package operating system. - * - * @param operatingSystem Package operating system - * @throws UnknownOperatingSystemException The operating system supplied is not recognised. - */ - public void setOperatingSystem(String operatingSystem) throws UnknownOperatingSystemException { - if (null == operatingSystem || operatingSystem.equals("")) { - throw new UnknownOperatingSystemException(operatingSystem); - } - operatingSystem = operatingSystem.toUpperCase(); - try { - this.operatingSystem = Os.valueOf(operatingSystem); - } catch (IllegalArgumentException ex) { - throw new UnknownOperatingSystemException(operatingSystem, ex); - } - } - - /** - * Get package build host name. - * If one is not supplied, the default hostname of the machine running the build is used. - * - * @return Package build host name - * @throws UnknownHostException The build host could not be retrieved automatically. - */ - public String getBuildHostName() throws UnknownHostException { - if (null == buildHostName) { - buildHostName = InetAddress.getLocalHost().getHostName(); - } - return buildHostName; - } - - /** - * Set package build host name. - * - * @param buildHostName Package build host name - */ - public void setBuildHostName(String buildHostName) { - this.buildHostName = buildHostName; - } - - /** - * Get packager. - * - * @return Packager - */ - public String getPackager() { - return packager; - } - - /** - * Set package packager. - * - * @param packager Package packager - */ - public void setPackager(String packager) { - this.packager = packager; - } - - /** - * Get source RPM name. - * - * @return sourceRpm - */ - public String getSourceRpm() { - return sourceRpm; - } - - /** - * Set source RPM name. - * - * @param sourceRpm Package sourceRpm - */ - public void setSourceRpm(String sourceRpm) { - this.sourceRpm = sourceRpm; - } - - /** - * Get artifact attachment. - * - * @return Artifact is attached - */ - public boolean isAttach() { - return attach; - } - - /** - * Set artifact attachment. - * - * @param attach Artifact attachment - */ - public void setAttach(boolean attach) { - this.attach = attach; - } - - /** - * Get the artifact classifier. - * - * @return Artifact classifier - */ - public String getClassifier() { - return classifier; - } - - /** - * Set the artifact classifier. - * - * @param classifier Artifact classifier - */ - public void setClassifier(String classifier) { - this.classifier = classifier; - } - - /** - * Get pre transactions script path. - * - * @return Pre transaction script path - */ - public Path getPreTransactionScriptPath() { - return preTransactionScriptPath; - } - - /** - * Set pre transaction script path. - * - * @param preTransactionScriptPath Pre transaction script path - */ - public void setPreTransactionScriptPath(Path preTransactionScriptPath) { - this.preTransactionScriptPath = preTransactionScriptPath; - } - - /** - * Get pre transaction program. - * - * @return Pre transaction program - */ - public String getPreTransactionProgram() { - return preTransactionProgram; - } - - /** - * Set pre transaction program. - * - * @param preTransactionProgram Pre transaction program - */ - public void setPreTransactionProgram(String preTransactionProgram) { - this.preTransactionProgram = preTransactionProgram; - } - - /** - * Get pre install script path. - * - * @return Pre install script path - */ - public Path getPreInstallScriptPath() { - return preInstallScriptPath; - } - - /** - * Set pre install script path. - * - * @param preInstallScriptPath Pre install script path - */ - public void setPreInstallScriptPath(Path preInstallScriptPath) { - this.preInstallScriptPath = preInstallScriptPath; - } - - /** - * Get pre install program. - * - * @return Pre install program - */ - public String getPreInstallProgram() { - return preInstallProgram; - } - - /** - * Set pre install program. - * - * @param preInstallProgram Pre install program - */ - public void setPreInstallProgram(String preInstallProgram) { - this.preInstallProgram = preInstallProgram; - } - - /** - * Get post install script path. - * - * @return Post install script path - */ - public Path getPostInstallScriptPath() { - return postInstallScriptPath; - } - - /** - * Set post install script path. - * - * @param postInstallScriptPath Post install script path - */ - public void setPostInstallScriptPath(Path postInstallScriptPath) { - this.postInstallScriptPath = postInstallScriptPath; - } - - /** - * Get post install program. - * - * @return Post install program - */ - public String getPostInstallProgram() { - return postInstallProgram; - } - - /** - * Set post install program. - * - * @param postInstallProgram Post install program - */ - public void setPostInstallProgram(String postInstallProgram) { - this.postInstallProgram = postInstallProgram; - } - - /** - * Get pre uninstall script path. - * - * @return Pre uninstall script path - */ - public Path getPreUninstallScriptPath() { - return preUninstallScriptPath; - } - - /** - * Set pre uninstall script path. - * - * @param preUninstallScriptPath Pre uninstall script path - */ - public void setPreUninstallScriptPath(Path preUninstallScriptPath) { - this.preUninstallScriptPath = preUninstallScriptPath; - } - - /** - * Get pre uninstall program. - * - * @return Pre uninstall program - */ - public String getPreUninstallProgram() { - return preUninstallProgram; - } - - /** - * Set pre uninstall program. - * - * @param preUninstallProgram Pre uninstall program - */ - public void setPreUninstallProgram(String preUninstallProgram) { - this.preUninstallProgram = preUninstallProgram; - } - - /** - * Get post uninstall script path. - * - * @return Post uninstall script path - */ - public Path getPostUninstallScriptPath() { - return postUninstallScriptPath; - } - - /** - * Set post uninstall script path. - * - * @param postUninstallScriptPath Post uninstall script path - */ - public void setPostUninstallScriptPath(Path postUninstallScriptPath) { - this.postUninstallScriptPath = postUninstallScriptPath; - } - - /** - * Get post uninstall program. - * - * @return Post uninstall program - */ - public String getPostUninstallProgram() { - return postUninstallProgram; - } - - /** - * Set post uninstall program. - * - * @param postUninstallProgram Post uninstall program - */ - public void setPostUninstallProgram(String postUninstallProgram) { - this.postUninstallProgram = postUninstallProgram; - } - - /** - * Get post transaction script path. - * - * @return Post transaction script path - */ - public Path getPostTransactionScriptPath() { - return postTransactionScriptPath; - } - - /** - * Set post transaction script path. - * - * @param postTransactionScriptPath Post transaction script path - */ - public void setPostTransactionScriptPath(Path postTransactionScriptPath) { - this.postTransactionScriptPath = postTransactionScriptPath; - } - - /** - * Get post transaction program. - * - * @return Post transaction program - */ - public String getPostTransactionProgram() { - return postTransactionProgram; - } - - /** - * Set post transaction program. - * - * @param postTransactionProgram Post transaction program - */ - public void setPostTransactionProgram(String postTransactionProgram) { - this.postTransactionProgram = postTransactionProgram; - } - - /** - * Get triggers. - * - * @return Triggers - */ - public List getTriggers() { - return triggers; - } - - /** - * Set triggers. - * - * @param triggers Triggers - */ - public void setTriggers(List triggers) { - this.triggers = triggers; - } - - /** - * Get signing key. - * - * @return Signing key - */ - public String getSigningKey() { - return signingKey; - } - - /** - * Set signing key. - * - * @param signingKey Signing key - */ - public void setSigningKey(String signingKey) { - this.signingKey = signingKey; - } - - /** - * Get signing key id. - * - * @return Signing key id - */ - public Long getSigningKeyId() { - return signingKeyId; - } - - /** - * Set signing key id. - * - * @param signingKeyId Signing key id - */ - public void setSigningKeyId(Long signingKeyId) { - this.signingKeyId = signingKeyId; - } - - /** - * Get signing key pass phrase. - * - * @return Signing key pass phrase - */ - public String getSigningKeyPassPhrase() { - return signingKeyPassPhrase; - } - - /** - * Set signing key pass phrase. - * - * @param signingKeyPassPhrase Signing key pass phrase - */ - public void setSigningKeyPassPhrase(String signingKeyPassPhrase) { - this.signingKeyPassPhrase = signingKeyPassPhrase; - } - - /** - * Get list of prefixes. - * - * @return List of prefixes - */ - public List getPrefixes() { - return prefixes; - } - - /** - * Set list of prefixes. - * - * @param prefixes List of Prefixes - */ - public void setPrefixes(List prefixes) { - if (null == prefixes) { - prefixes = new ArrayList(); - } - this.prefixes = prefixes; - } - - /** - * Get list of builtin directories. - * - * @return List of builtin directories - */ - public List getBuiltins() { - return builtins; - } - - /** - * Set list of builtin directories. - * - * @param builtins List of Builtin Directories - */ - public void setBuiltins(List builtins) { - if (null == builtins) { - builtins = new ArrayList<>(); - } - this.builtins = builtins; - } - - /** - * Get package rules. - * - * @return Package rules - */ - public List getRules() { - return rules; - } - - /** - * Set package rules. - * - * @param rules Package rules - */ - public void setRules(List rules) { - if (null != rules) { - for (RpmPackageRule rpmPackageRule : rules) { - rpmPackageRule.setPackage(this); - } - } - this.rules = rules; - } - - /** - * Get the logger. - * - * @return logger - */ - public Log getLog() { - return getMojo().getLog(); - } - - /** - * Build the package. - * - * @return Files included within the package - * @throws IOException if writing the package fails - * @throws RpmException if building the package fails - */ - public Set build() throws IOException, RpmException { - Set fileList = new HashSet<>(); - String buildDirectory = getMojo().getBuildDirectory(); - getLog().debug("Creating RPM archive"); - RpmBuilder builder = new RpmBuilder(HashAlgo.SHA256, CompressionType.GZIP); - builder.setType(PackageType.BINARY); - getLog().debug("Setting package information"); - builder.setPackage(getName(), getVersion(), getRelease()); - builder.setPlatform(getArchitecture(), getOperatingSystem()); - builder.setGroup(getGroup()); - builder.setLicense(getLicense()); - builder.setSummary(getSummary()); - builder.setDescription(getDescription()); - builder.setDistribution(getDistribution()); - builder.setBuildHost(getBuildHostName()); - builder.setPackager(getPackager()); - builder.setUrl(getUrl()); - builder.setPrefixes(getPrefixes()); - builder.setSourceRpm(getSourceRpm()); - for (String builtin : getBuiltins()) { - builder.addBuiltinDirectory(builtin); - } - for (RpmPackageAssociation dependency : getDependencies()) { - if (null != dependency.getName()) { - if (dependency.isVersionRange()) { - if (null != dependency.getMinVersion()) { - builder.addDependency(dependency.getName(), Flags.GREATER | Flags.EQUAL, dependency.getMinVersion()); - } - if (null != dependency.getMaxVersion()) { - builder.addDependency(dependency.getName(), Flags.LESS, dependency.getMaxVersion()); - } - } else { - if (null != dependency.getVersion()) { - builder.addDependency(dependency.getName(), Flags.EQUAL, dependency.getVersion()); - } else { - builder.addDependency(dependency.getName(), 0, ""); - } - } - } - } - for (RpmPackageAssociation obsolete : getObsoletes()) { - if (null != obsolete.getName()) { - if (obsolete.isVersionRange()) { - if (null != obsolete.getMinVersion()) { - builder.addObsoletes(obsolete.getName(), Flags.GREATER | Flags.EQUAL, obsolete.getMinVersion()); - } - - if (null != obsolete.getMaxVersion()) { - builder.addObsoletes(obsolete.getName(), Flags.LESS, obsolete.getMaxVersion()); - } - } else { - if (null != obsolete.getVersion()) { - builder.addObsoletes(obsolete.getName(), Flags.EQUAL, obsolete.getVersion()); - } else { - builder.addObsoletes(obsolete.getName(), 0, ""); - } - } - } - } - for (RpmPackageAssociation conflict : getConflicts()) { - if (null != conflict.getName()) { - if (conflict.isVersionRange()) { - if (null != conflict.getMinVersion()) { - builder.addConflicts(conflict.getName(), Flags.GREATER | Flags.EQUAL, conflict.getMinVersion()); - } - - if (null != conflict.getMaxVersion()) { - builder.addConflicts(conflict.getName(), Flags.LESS, conflict.getMaxVersion()); - } - } else { - if (null != conflict.getVersion()) { - builder.addConflicts(conflict.getName(), Flags.EQUAL, conflict.getVersion()); - } else { - builder.addConflicts(conflict.getName(), 0, ""); - } - } - } - } - for (RpmLink link : getLinks()) { - builder.addLink(link.getPath(), link.getTarget(), - link.getPermissionsOrDefault(), - link.getOwnerOrDefault(), - link.getGroupOrDefault()); - } - getLog().debug("Setting trigger scripts"); - RpmScriptTemplateRenderer scriptTemplateRenderer = getMojo().getTemplateRenderer(); - Path scriptPath = Paths.get(buildDirectory, getName() + "-" + getProjectVersion()); - Path scriptTemplate; - scriptTemplate = getPreTransactionScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-pretrans-hook", scriptPath.toString())); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.setPreTrans(scriptFile); - builder.setPreTransProgram(getPreTransactionProgram()); - } - scriptTemplate = getPreInstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-preinstall-hook", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.setPreInstall(scriptFile); - builder.setPreInstallProgram(getPreInstallProgram()); - } - scriptTemplate = getPostInstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-postinstall-hook", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.setPostInstall(scriptFile); - builder.setPostInstallProgram(getPostInstallProgram()); - } - scriptTemplate = getPreUninstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-preuninstall-hook", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.setPreUninstall(scriptFile); - builder.setPreUninstallProgram(getPreUninstallProgram()); - } - scriptTemplate = getPostUninstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-postuninstall-hook", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.setPostUninstall(scriptFile); - builder.setPostUninstallProgram(getPostUninstallProgram()); - } - scriptTemplate = getPostTransactionScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-posttrans-hook", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.setPostTrans(scriptFile); - builder.setPostTransProgram(getPostTransactionProgram()); - } - for (RpmTrigger trigger : getTriggers()) { - Map depends = new HashMap<>(); - for (RpmPackageAssociation dependency : trigger.getDependencies()) { - int flags = 0; - String version = ""; - if (null != dependency.getVersion()) { - version = dependency.getVersion(); - } else if (null != dependency.getMinVersion()) { - flags = Flags.GREATER | Flags.EQUAL; - version = dependency.getMinVersion(); - } else if (null != dependency.getMaxVersion()) { - flags = Flags.LESS; - version = dependency.getMaxVersion(); - } - depends.put(dependency.getName(), new Trigger.IntString(flags, version)); - } - scriptTemplate = trigger.getPreInstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-preinstall-trigger", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.addTrigger(scriptFile, trigger.getPreInstallProgram(), depends, Flags.SCRIPT_TRIGGERPREIN); - } - scriptTemplate = trigger.getPostInstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-postinstall-trigger", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.addTrigger(scriptFile, trigger.getPostInstallProgram(), depends, Flags.SCRIPT_TRIGGERIN); - } - scriptTemplate = trigger.getPreUninstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-preuninstall-trigger", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.addTrigger(scriptFile, trigger.getPreUninstallProgram(), depends, Flags.SCRIPT_TRIGGERUN); - } - scriptTemplate = trigger.getPostUninstallScriptPath(); - if (null != scriptTemplate) { - Path scriptFile = Paths.get(String.format("%s-postuninstall-trigger", scriptPath)); - scriptTemplateRenderer.render(scriptTemplate, scriptFile); - builder.addTrigger(scriptFile, trigger.getPostUninstallProgram(), depends, Flags.SCRIPT_TRIGGERPOSTUN); - } - } - String keyFileName = getSigningKey(); - if (keyFileName != null) { - Path keyFile = Paths.get(keyFileName); - if (!Files.exists(keyFile)) { - throw new SigningKeyNotFoundException(keyFileName); - } - String keyPassPhrase = getSigningKeyPassPhrase(); - if (null != keyPassPhrase && !keyPassPhrase.equals("")) { - builder.setPrivateKeyPassphrase(keyPassPhrase); - } - builder.setPrivateKeyId(getSigningKeyId()); - try (InputStream inputStream = getClass().getResourceAsStream(keyFileName)) { - builder.setPrivateKeyRing(inputStream); - } - } - getLog().debug("Adding files matched from each rule"); - for (RpmPackageRule packageRule : getRules()) { - Collections.addAll(fileList, packageRule.addFiles(builder)); - } - Path rpmFileName = Paths.get(buildDirectory, getFinalName()); - getLog().info(String.format("Generating RPM file %s", rpmFileName)); - try (FileChannel fileChannel = FileChannel.open(rpmFileName, - StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING, - StandardOpenOption.WRITE)) { - builder.build(fileChannel); - } - RpmMojo mojo = getMojo(); - if (mojo.getProjectPackagingType().equals("rpm") - && mojo.getProjectArtifactId().equals(getName()) - && mojo.getProjectVersion().equals(getProjectVersion())) { - getLog().info(String.format("Attaching %s as primary artifact", rpmFileName.toString())); - mojo.setPrimaryArtifact(rpmFileName, getClassifier()); - } else if (isAttach()) { - getLog().info(String.format("Attaching %s as secondary artifact", rpmFileName.toString())); - mojo.addSecondaryArtifact(rpmFileName, getName(), getProjectVersion(), getClassifier()); - } - return fileList; - } - - /** - * List files matched for the package. - * - * @return the file names included within the package - * @throws RpmException if method fails - */ - public Set listFiles() throws RpmException { - int counter = 1; - Set fileList = new HashSet<>(); - getMojo().getLog().info(String.format(" Package: %s", getFinalName())); - for (RpmPackageRule packageRule : getRules()) { - getMojo().getLog().info(String.format(" \\ Rule: %d", counter++)); - String[] packageRuleFileList = packageRule.listFiles(); - String scanPath = packageRule.getScanPath(); - for (String packageRulefileName : packageRuleFileList) { - getMojo().getLog().info(String.format(" - %s/%s", scanPath, packageRulefileName)); - } - Collections.addAll(fileList, packageRuleFileList); - } - getMojo().getLog().info(""); - return fileList; - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageAssociation.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageAssociation.java deleted file mode 100644 index 011ce34..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageAssociation.java +++ /dev/null @@ -1,124 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -/** - * RPM package association (i.e. obsoletes, dependencies, conflicts). - */ -public class RpmPackageAssociation { - /** - * Association name. - */ - private String name = null; - - /** - * Association maven style version. - */ - private String version = null; - - /** - * Min version requirement. - */ - private String minVersion = null; - - /** - * Max version requirement. - */ - private String maxVersion = null; - - /** - * Version requirement has range. - */ - private boolean isRange = false; - - /** - * Get name. - * - * @return Association name - */ - public String getName() { - return this.name; - } - - /** - * Set name. - * - * @param name Association name - */ - public void setName(String name) { - this.name = name; - } - - /** - * Is version range. - * - * @return Version range, true or false - */ - public boolean isVersionRange() { - return isRange; - } - - /** - * Get version. - * - * @return Maven style version. - */ - public String getVersion() { - return version; - } - - /** - * Set version. - * - * @param version Maven style version. - */ - public void setVersion(String version) { - if (version == null || version.equals("RELEASE") || version.equals("")) { - isRange = false; - this.version = null; - minVersion = null; - maxVersion = null; - return; - } - Pattern versionPattern = Pattern.compile("\\[([0-9\\.]*),([0-9\\.]*)\\)"); - Matcher matcher = versionPattern.matcher(version); - if (matcher.matches()) { - this.isRange = true; - this.version = null; - String minVersion = matcher.group(1); - String maxVersion = matcher.group(2); - if (minVersion.equals("")) { - minVersion = null; - } - if (maxVersion.equals("")) { - maxVersion = null; - } - this.minVersion = minVersion; - this.maxVersion = maxVersion; - } else { - this.isRange = false; - this.version = version; - this.minVersion = null; - this.maxVersion = null; - } - } - - /** - * Get min version requirement. - * - * @return Min version requirement - */ - public String getMinVersion() { - return this.minVersion; - } - - /** - * Get max version requirement. - * - * @return Max version requirement - */ - public String getMaxVersion() { - return this.maxVersion; - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageRule.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageRule.java deleted file mode 100644 index b93e3be..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmPackageRule.java +++ /dev/null @@ -1,259 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import org.apache.maven.plugin.logging.Log; -import org.apache.tools.ant.DirectoryScanner; -import org.xbib.maven.plugin.rpm.mojo.RpmMojo; -import org.xbib.rpm.RpmBuilder; -import org.xbib.rpm.exception.InvalidDirectiveException; -import org.xbib.rpm.exception.InvalidPathException; -import org.xbib.rpm.exception.PathOutsideBuildPathException; -import org.xbib.rpm.exception.RpmException; -import org.xbib.rpm.payload.Directive; - -import java.io.File; -import java.io.IOException; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.EnumSet; -import java.util.List; - -/** - * RPM rule, represents a file to be included within the RPM. - */ -public class RpmPackageRule extends RpmBaseObject { - /** - * RPM package. - */ - private RpmPackage rpmPackage = null; - - /** - * Rule base path, relative to plugin buildPath. - */ - private String base = File.separator; - - /** - * Destination path of files within RPM. - */ - private String destination = null; - - /** - * List of file include rules. - */ - private List includes = new ArrayList<>(); - - /** - * List of file exclude rules. - */ - private List excludes = new ArrayList<>(); - - /** - * File directives. - */ - private EnumSet directive; - - /** - * Get associated RPM package. - * - * @return RPM package - */ - @Override - public RpmPackage getPackage() { - return this.rpmPackage; - } - - /** - * Set associated RPM package. - * - * @param rpmPackage RPM package - */ - public void setPackage(RpmPackage rpmPackage) { - this.rpmPackage = rpmPackage; - } - - /** - * Get base path, relative to the buildPath. - * - * @return Base path - */ - public String getBase() { - return this.base; - } - - /** - * Set base path, relative to the buildPath. - * - * @param base Base path - */ - public void setBase(String base) { - if (null == base || base.equals("")) { - base = File.separator; - } - - this.base = base; - } - - /** - * Get file destination. - * - * @return File destination - */ - public String getDestination() { - return this.destination; - } - - /** - * Set file destination. - * - * @param destination File destination - */ - public void setDestination(String destination) { - if (null != destination && destination.equals("")) { - destination = null; - } - this.destination = destination; - } - - /** - * Get the file destination, or the default setting if not set. - * - * @return File destination - */ - public String getDestinationOrDefault() { - if (null == this.destination) { - return this.getPackage().getMojo().getDefaultDestination(); - } else { - return this.destination; - } - } - - /** - * Get file inclusion rules. - * - * @return File inclusion rules - */ - public List getIncludes() { - return this.includes; - } - - /** - * Set file inclusion rules. - * - * @param includes File inclusion rules - */ - public void setIncludes(List includes) { - this.includes = includes; - } - - /** - * Get file exclusion rules. - * - * @return File exclusion rules - */ - public List getExcludes() { - return this.excludes; - } - - /** - * Set file exclusion rules. - * - * @param excludes File exclusion rules - */ - public void setExcludes(List excludes) { - this.excludes = excludes; - } - - /** - * Get file directives. - * - * @return File directives - */ - public EnumSet getDirectives() { - return this.directive; - } - - /** - * Set file directives. - * - * @param directives File directives - * @throws InvalidDirectiveException if there is an invalid RPM directive - */ - public void setDirectives(List directives) throws InvalidDirectiveException { - this.directive = Directive.newDirective(directives); - } - - /** - * Get path used for scanning for files to be included by the rule. - * - * @return Scan path - * @throws InvalidPathException if path is invalid - */ - public String getScanPath() throws InvalidPathException { - String scanPath = String.format("%s%s%s", - this.rpmPackage.getMojo().getBuildPath(), File.separator, this.getBase()); - try { - return Paths.get(scanPath).toRealPath().toString(); - } catch (IOException ex) { - throw new InvalidPathException(scanPath, ex); - } - } - - /** - * Get the Maven logger. - * - * @return Maven logger - */ - public Log getLog() { - return this.getPackage().getMojo().getLog(); - } - - /** - * List all files found by the rule to the package. - * - * @return Matched file list - * @throws RpmException if files can not be listed - */ - public String[] listFiles() throws RpmException { - RpmMojo mojo = rpmPackage.getMojo(); - String buildPath = mojo.getBuildPath(); - String scanPath = getScanPath(); - if (!String.format("%s%s", scanPath, File.separator).startsWith(String.format("%s%s", buildPath, File.separator))) { - throw new PathOutsideBuildPathException(scanPath, buildPath); - } - DirectoryScanner ds = new DirectoryScanner(); - ds.setIncludes(getIncludes().toArray(new String[0])); - ds.setExcludes(getExcludes().toArray(new String[0])); - ds.setBasedir(scanPath); - ds.setFollowSymlinks(false); - ds.setCaseSensitive(true); - getLog().debug("Scanning for files for package rule"); - ds.scan(); - return ds.getIncludedFiles(); - } - - /** - * Add all files found by the rule to the package. - * - * @param builder RPM builder - * @return Matched file list - * @throws IOException if file could not be added - * @throws RpmException if RPM archive could not be listed - */ - public String[] addFiles(RpmBuilder builder) throws IOException, RpmException { - String[] includedFiles = listFiles(); - String scanPath = getScanPath(); - getLog().debug(String.format("Adding %d files found to package.", includedFiles.length)); - for (String includedFile : includedFiles) { - String destinationPath = this.getDestinationOrDefault() + File.separator + includedFile; - String sourcePath = String.format("%s%s%s", scanPath, File.separator, includedFile); - String owner = getOwnerOrDefault(); - String group = getGroupOrDefault(); - int fileMode = getPermissionsOrDefault(); - getLog().debug(String.format("Adding file: %s to path %s with owner '%s', " + - "group '%s', with file mode %o.", - sourcePath, destinationPath, owner, group, fileMode)); - builder.addFile(destinationPath, Paths.get(sourcePath), fileMode, -1, - getDirectives(), owner, group, true); - } - return includedFiles; - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRenderer.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRenderer.java deleted file mode 100644 index f7d0c5f..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRenderer.java +++ /dev/null @@ -1,53 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import org.mvel2.templates.TemplateRuntime; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.HashMap; -import java.util.Map; - -/** - * RPM script template renderer. - */ -public class RpmScriptTemplateRenderer { - /** - * Template parameter map. - */ - private Map parameterMap = new HashMap<>(); - - /** - * Add parameter to parameter map. - * - * @param name Parameter Name - * @param value Parameter value - */ - public void addParameter(String name, Object value) { - this.parameterMap.put(name, value); - } - - /** - * Render a script template file. - * - * @param templateFile Template file - * @param renderedFile Rendered output file - * @throws IOException if rendering fails - */ - public void render(Path templateFile, Path renderedFile) throws IOException { - char[] buffer = new char[1024]; - StringBuilder stringBuilder = new StringBuilder(); - try (BufferedReader reader = Files.newBufferedReader(templateFile)) { - int bytesRead; - while (-1 != (bytesRead = reader.read(buffer))) { - stringBuilder.append(buffer, 0, bytesRead); - } - } - String renderedTemplate = (String) TemplateRuntime.eval(stringBuilder.toString(), this.parameterMap); - try (BufferedWriter writer = Files.newBufferedWriter(renderedFile)) { - writer.write(renderedTemplate); - } - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmTrigger.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmTrigger.java deleted file mode 100644 index 972ae23..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/RpmTrigger.java +++ /dev/null @@ -1,217 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.List; - -/** - * RPM trigger. - */ -public class RpmTrigger { - /** - * Pre install event hook script path. - */ - private Path preInstallScriptPath = null; - - /** - * Pre install event hook program. - */ - private String preInstallProgram = null; - - /** - * Post install event hook script path. - */ - private Path postInstallScriptPath = null; - - /** - * Post install event hook program. - */ - private String postInstallProgram = null; - - /** - * Pre uninstall event hook script path. - */ - private Path preUninstallScriptPath = null; - - /** - * Pre uninstall event hook script program. - */ - private String preUninstallProgram = null; - - /** - * Post uninstall event hook script path. - */ - private Path postUninstallScriptPath = null; - - /** - * Post uninstall event hook program. - */ - private String postUninstallProgram = null; - - /** - * Trigger package associations. - */ - private List dependencies = new ArrayList<>(); - - /** - * Get pre install script path. - * - * @return Pre install script path - */ - public Path getPreInstallScriptPath() { - return this.preInstallScriptPath; - } - - /** - * Set pre install script path. - * - * @param preInstallScriptPath Pre install script path - */ - public void setPreInstallScriptPath(Path preInstallScriptPath) { - this.preInstallScriptPath = preInstallScriptPath; - } - - /** - * Get pre install program. - * - * @return Pre install program - */ - public String getPreInstallProgram() { - return this.preInstallProgram; - } - - /** - * Set pre install program. - * - * @param preInstallProgram Pre install program - */ - public void setPreInstallProgram(String preInstallProgram) { - this.preInstallProgram = preInstallProgram; - } - - /** - * Get post install script path. - * - * @return Post install script path - */ - public Path getPostInstallScriptPath() { - return this.postInstallScriptPath; - } - - /** - * Set post install script path. - * - * @param postInstallScriptPath Post install script path - */ - public void setPostInstallScriptPath(Path postInstallScriptPath) { - this.postInstallScriptPath = postInstallScriptPath; - } - - /** - * Get post install program. - * - * @return Post install program - */ - public String getPostInstallProgram() { - return this.postInstallProgram; - } - - /** - * Set post install program. - * - * @param postInstallProgram Post install program - */ - public void setPostInstallProgram(String postInstallProgram) { - this.postInstallProgram = postInstallProgram; - } - - /** - * Get pre uninstall script path. - * - * @return Pre uninstall script path - */ - public Path getPreUninstallScriptPath() { - return this.preUninstallScriptPath; - } - - /** - * Set pre uninstall script path. - * - * @param preUninstallScriptPath Pre uninstall script path - */ - public void setPreUninstallScriptPath(Path preUninstallScriptPath) { - this.preUninstallScriptPath = preUninstallScriptPath; - } - - /** - * Get pre uninstall program. - * - * @return Pre uninstall program - */ - public String getPreUninstallProgram() { - return this.preUninstallProgram; - } - - /** - * Set pre uninstall program. - * - * @param preUninstallProgram Pre uninstall program - */ - public void setPreUninstallProgram(String preUninstallProgram) { - this.preUninstallProgram = preUninstallProgram; - } - - /** - * Get post uninstall script path. - * - * @return Post uninstall script path - */ - public Path getPostUninstallScriptPath() { - return this.postUninstallScriptPath; - } - - /** - * Set post uninstall script path. - * - * @param postUninstallScriptPath Post uninstall script path - */ - public void setPostUninstallScriptPath(Path postUninstallScriptPath) { - this.postUninstallScriptPath = postUninstallScriptPath; - } - - /** - * Get post uninstall program. - * - * @return Post uninstall program - */ - public String getPostUninstallProgram() { - return this.postUninstallProgram; - } - - /** - * Set post uninstall program. - * - * @param postUninstallProgram Post uninstall program - */ - public void setPostUninstallProgram(String postUninstallProgram) { - this.postUninstallProgram = postUninstallProgram; - } - - /** - * Get trigger packages. - * - * @return Trigger packages - */ - public List getDependencies() { - return dependencies; - } - - /** - * Set trigger packages. - * - * @param dependencies Trigger packages - */ - public void setDependencies(List dependencies) { - this.dependencies = dependencies; - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojo.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojo.java deleted file mode 100644 index 46afd4f..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojo.java +++ /dev/null @@ -1,407 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import org.apache.maven.artifact.Artifact; -import org.apache.maven.artifact.DefaultArtifact; -import org.apache.maven.artifact.handler.DefaultArtifactHandler; -import org.apache.maven.model.License; -import org.apache.maven.plugin.AbstractMojo; -import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProject; -import org.apache.tools.ant.DirectoryScanner; -import org.xbib.maven.plugin.rpm.RpmPackage; -import org.xbib.maven.plugin.rpm.RpmScriptTemplateRenderer; -import org.xbib.rpm.exception.InvalidPathException; - -import java.io.File; -import java.io.IOException; -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashSet; -import java.util.List; -import java.util.Properties; -import java.util.Set; - -/** - * - */ -public abstract class AbstractRpmMojo extends AbstractMojo implements RpmMojo { - /** - * Set of master files (all files in build path). - */ - protected Set masterFiles = new HashSet<>(); - - /** - * Event hook template renderer. - */ - private RpmScriptTemplateRenderer templateRenderer = null; - - /** - * Maven project. - */ - @Parameter(defaultValue = "${project}", readonly = true) - protected MavenProject project = null; - - /** - * Build path. - */ - @Parameter(defaultValue = "${project.build.outputDirectory}") - private String buildPath = null; - - /** - * RPM package declarations from configuration. - */ - @Parameter - protected List packages = new ArrayList<>(); - - /** - * Default mode. - */ - @Parameter - private int defaultFileMode = 0644; - - /** - * Default owner. - */ - @Parameter - private String defaultOwner = "root"; - - /** - * Default group. - */ - @Parameter - private String defaultGroup = "root"; - - /** - * Default installation destination. - */ - @Parameter - private String defaultDestination = File.separator; - - /** - * List of file exclude patterns. - */ - @Parameter - protected List excludes = new ArrayList<>(); - - /** - * Perform checking for extra files not included within any packages, - * or excluded from all packages. - */ - @Parameter - private boolean performCheckingForExtraFiles = true; - - /** - * Get Maven project. - * - * @return Maven project - */ - protected MavenProject getProject() { - return project; - } - - /** - * Set Maven project. - * - * @param project Maven project - */ - public void setProject(MavenProject project) { - this.project = project; - } - - /** - * Get event hook template renderer. - * - * @return Event hook template renderer - */ - @Override - public RpmScriptTemplateRenderer getTemplateRenderer() { - if (templateRenderer == null) { - templateRenderer = new RpmScriptTemplateRenderer(); - templateRenderer.addParameter("project", getProject()); - templateRenderer.addParameter("env", System.getenv()); - Properties systemProperties = System.getProperties(); - for (String propertyName : systemProperties.stringPropertyNames()) { - templateRenderer.addParameter(propertyName, systemProperties.getProperty(propertyName)); - } - Properties projectProperties = getProject().getProperties(); - for (String propertyName : projectProperties.stringPropertyNames()) { - templateRenderer.addParameter(propertyName, projectProperties.getProperty(propertyName)); - } - } - return templateRenderer; - } - - /** - * Get the project artifact id. - * - * @return Artifact id - */ - @Override - public String getProjectArtifactId() { - return getProject().getArtifactId(); - } - - /** - * Get the project version. - * - * @return Project version - */ - @Override - public String getProjectVersion() { - return getProject().getVersion(); - } - - /** - * Get the project url. - * - * @return Project url - */ - @Override - public String getProjectUrl() { - return getProject().getUrl(); - } - - /** - * Get project packaging type. - * - * @return Packaging type - */ - @Override - public String getProjectPackagingType() { - return getProject().getPackaging(); - } - - /** - * Get collapsed project licensing. - * - * @return Project licenses, collapsed in to a single line, separated by commas. - */ - @Override - public String getCollapsedProjectLicense() { - StringBuilder collapsedLicenseList = new StringBuilder(); - for (License license : getProject().getLicenses()) { - if (collapsedLicenseList.toString().equals("")) { - collapsedLicenseList = new StringBuilder(license.getName()); - } else { - collapsedLicenseList.append(", ").append(license.getName()); - } - } - return (collapsedLicenseList.length() > 0 ? collapsedLicenseList.toString() : null); - } - - /** - * Get build output directory. - * - * @return Build output directory - */ - @Override - public String getBuildDirectory() { - return project.getBuild().getDirectory(); - } - - /** - * Set the primary artifact. - * - * @param artifactFile Primary artifact - * @param classifier Artifact classifier - */ - @Override - public void setPrimaryArtifact(Path artifactFile, String classifier) { - DefaultArtifactHandler handler = new DefaultArtifactHandler(); - handler.setExtension("rpm"); - Artifact artifact = new DefaultArtifact(getProject().getGroupId(), - getProject().getArtifactId(), - getProject().getVersion(), - null, - "rpm", - classifier, - handler - ); - artifact.setFile(artifactFile.toFile()); - getProject().setArtifact(artifact); - } - - /** - * Add a secondary artifact. - * - * @param artifactFile Secondary artifact file - * @param artifactId Artifact Id - * @param version Artifact version - * @param classifier Artifact classifier - */ - @Override - public void addSecondaryArtifact(Path artifactFile, String artifactId, String version, String classifier) { - DefaultArtifactHandler handler = new DefaultArtifactHandler(); - handler.setExtension("rpm"); - Artifact artifact = new DefaultArtifact( - getProject().getGroupId(), - artifactId, - version, - null, - "rpm", - classifier, - handler - ); - artifact.setFile(artifactFile.toFile()); - getProject().addAttachedArtifact(artifact); - } - - /** - * Get the build root path. - * - * @return Build root path - */ - @Override - public String getBuildPath() throws InvalidPathException { - try { - return new File(buildPath).getCanonicalPath(); - } catch (IOException ex) { - throw new InvalidPathException(buildPath, ex); - } - } - - /** - * Set the build root path. - * - * @param buildPath Build root path - */ - public void setBuildPath(String buildPath) { - this.buildPath = buildPath; - } - - /** - * Set the RPM packages defined by the configuration. - * - * @param packages List of RPM packages - */ - public void setPackages(List packages) { - for (RpmPackage rpmPackage : packages) { - rpmPackage.setMojo(this); - } - this.packages = packages; - } - - /** - * Get default mode. - * - * @return Default mode - */ - @Override - public int getDefaultFileMode() { - return defaultFileMode; - } - - /** - * Set default mode. - * - * @param defaultFileMode Default mode - */ - public void setDefaultFileMode(int defaultFileMode) { - this.defaultFileMode = defaultFileMode; - } - - /** - * Get default owner. - * - * @return Default owner - */ - @Override - public String getDefaultOwner() { - return defaultOwner; - } - - /** - * Set default owner. - * - * @param defaultOwner Default owner - */ - public void setDefaultOwner(String defaultOwner) { - this.defaultOwner = defaultOwner; - } - - /** - * Get default group. - * - * @return Default group - */ - @Override - public String getDefaultGroup() { - return defaultGroup; - } - - /** - * Set default group. - * - * @param defaultGroup Default group - */ - public void setDefaultGroup(String defaultGroup) { - this.defaultGroup = defaultGroup; - } - - /** - * Get default destination. - * - * @return Default destination - */ - @Override - public String getDefaultDestination() { - return defaultDestination; - } - - /** - * Set default destination. - * - * @param defaultDestination Default destination - */ - public void setDefaultDestination(String defaultDestination) { - this.defaultDestination = defaultDestination; - } - - /** - * Set the list of file exclude patterns. - * - * @param excludes List of file exclude patterns - */ - public void setExcludes(List excludes) { - this.excludes = excludes; - } - - /** - * Get ignore extra files. - * - * @return Ignore extra files - */ - public boolean isPerformCheckingForExtraFiles() { - return performCheckingForExtraFiles; - } - - /** - * Set ignore extra files. - * - * @param performCheckingForExtraFiles Ignore extra files - */ - public void setPerformCheckingForExtraFiles(boolean performCheckingForExtraFiles) { - this.performCheckingForExtraFiles = performCheckingForExtraFiles; - } - - /** - * Scan the build path for all files for inclusion in an RPM archive. - * Excludes are applied also. This is because it doesn't matter - * if a file ends up being included within an RPM as the master list - * is only for us to know which files have been missed by a packaging - * rule. - */ - protected void scanMasterFiles() { - DirectoryScanner ds = new DirectoryScanner(); - ds.setIncludes(null); - ds.setExcludes(excludes.toArray(new String[0])); - ds.setBasedir(buildPath); - ds.setFollowSymlinks(false); - ds.setCaseSensitive(true); - ds.scan(); - String[] fileMatches = ds.getIncludedFiles(); - masterFiles = new HashSet<>(fileMatches.length); - Collections.addAll(masterFiles, fileMatches); - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojo.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojo.java deleted file mode 100644 index 72260e4..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojo.java +++ /dev/null @@ -1,43 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugins.annotations.LifecyclePhase; -import org.apache.maven.plugins.annotations.Mojo; -import org.xbib.maven.plugin.rpm.RpmPackage; -import org.xbib.rpm.exception.RpmException; - -import java.util.Set; - -/** - * - */ -@Mojo(name = "listfiles", defaultPhase = LifecyclePhase.PACKAGE) -public class ListFilesRpmMojo extends AbstractRpmMojo { - - /** - * Execute goal. - * - * @throws MojoExecutionException There was a problem running the Mojo. - * Further details are available in the message and cause properties. - */ - @Override - public void execute() throws MojoExecutionException { - getLog().info("Declared packages:"); - scanMasterFiles(); - for (RpmPackage rpmPackage : this.packages) { - Set includedFiles; - try { - includedFiles = rpmPackage.listFiles(); - } catch (RpmException e) { - throw new MojoExecutionException(e.getMessage()); - } - masterFiles.removeAll(includedFiles); - } - if (masterFiles.size() > 0) { - getLog().info("Unmatched files:"); - for (String unmatchedFile : this.masterFiles) { - getLog().info(String.format(" - %s", unmatchedFile)); - } - } - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojo.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojo.java deleted file mode 100644 index ee113e2..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojo.java +++ /dev/null @@ -1,54 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugins.annotations.LifecyclePhase; -import org.apache.maven.plugins.annotations.Mojo; -import org.xbib.maven.plugin.rpm.RpmPackage; - -import java.util.Set; - -/** - * Build an RPM using Maven, allowing for operating system agnostic RPM builds. - */ -@Mojo(name = "package", defaultPhase = LifecyclePhase.PACKAGE) -public class PackageRpmMojo extends AbstractRpmMojo { - - /** - * Execute goal. - * - * @throws MojoExecutionException There was a problem running the Mojo. - * Further details are available in the message and cause properties. - */ - public void execute() throws MojoExecutionException { - scanMasterFiles(); - long totalFilesPackaged = 0; - for (RpmPackage rpmPackage : this.packages) { - Set includedFiles; - try { - includedFiles = rpmPackage.build(); - } catch (Exception ex) { - getLog().error(String.format("Unable to build package %s", rpmPackage.getName()), ex); - throw new MojoExecutionException(String.format("Unable to build package %s", rpmPackage.getName()), ex); - } - masterFiles.removeAll(includedFiles); - totalFilesPackaged += includedFiles.size(); - } - if (isPerformCheckingForExtraFiles() && masterFiles.size() > 0) { - getLog().error(String.format("%d file(s) listed below were found in the build path that have not been " + - "included in any package or explicitly excluded. Maybe you need to exclude them?", masterFiles.size())); - for (String missedFile : this.masterFiles) { - getLog().error(String.format(" - %s", missedFile)); - } - throw new MojoExecutionException(String.format("%d file(s) were found in the build path that have not been " + - "included or explicitly excluded. Maybe you need to exclude them?", - masterFiles.size())); - } - if (0 < packages.size() && 0 == totalFilesPackaged) { - // No files were actually packaged. Perhaps something got missed. - getLog().error("No files were included when packaging RPM artifacts. " + - "Did you specify the correct output path?"); - throw new MojoExecutionException("No files were included when packaging RPM artifacts. " + - "Did you specify the correct output path?"); - } - } -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/RpmMojo.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/RpmMojo.java deleted file mode 100644 index edeba5a..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/RpmMojo.java +++ /dev/null @@ -1,122 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import org.apache.maven.plugin.logging.Log; -import org.xbib.maven.plugin.rpm.RpmScriptTemplateRenderer; -import org.xbib.rpm.exception.InvalidPathException; - -import java.nio.file.Path; - -/** - * Plugin mojo implementation. - */ -public interface RpmMojo { - /** - * Get event hook template renderer. - * - * @return Event hook template renderer - */ - RpmScriptTemplateRenderer getTemplateRenderer(); - - /** - * Set the primary artifact. - * - * @param artifactFile Primary artifact - * @param classifier Artifact classifier - */ - void setPrimaryArtifact(Path artifactFile, String classifier); - - /** - * Add a secondary artifact. - * - * @param artifactFile Secondary artifact file - * @param artifactId Artifact Id - * @param version Artifact version - * @param classifier Artifact classifier - */ - void addSecondaryArtifact(Path artifactFile, String artifactId, String version, String classifier); - - /** - * Get build output directory. - * - * @return Build output directory - */ - String getBuildDirectory(); - - /** - * Get the project artifact id. - * - * @return Artifact id - */ - String getProjectArtifactId(); - - /** - * Get the project version. - * - * @return Project version - */ - String getProjectVersion(); - - /** - * Get the project url. - * - * @return Project url - */ - String getProjectUrl(); - - /** - * Get project packaging type. - * - * @return Packaging type - */ - String getProjectPackagingType(); - - /** - * Get collapsed project licensing. - * - * @return Project licenses, collapsed in to a single line, separated by commas. - */ - String getCollapsedProjectLicense(); - - /** - * Get the build root path. - * - * @return Build root path - * @throws InvalidPathException Build path is invalid and could not be retrieved - */ - String getBuildPath() throws InvalidPathException; - - /** - * Get default mode. - * - * @return Default mode - */ - int getDefaultFileMode(); - - /** - * Get default owner. - * - * @return Default owner - */ - String getDefaultOwner(); - - /** - * Get default group. - * - * @return Default group - */ - String getDefaultGroup(); - - /** - * Get default destination. - * - * @return Default destination - */ - String getDefaultDestination(); - - /** - * Get logger. - * - * @return Logger - */ - Log getLog(); -} diff --git a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/package-info.java b/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/package-info.java deleted file mode 100644 index 425d0bb..0000000 --- a/maven-plugin-rpm/src/main/java/org/xbib/maven/plugin/rpm/mojo/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * - */ -package org.xbib.maven.plugin.rpm.mojo; diff --git a/maven-plugin-rpm/src/main/resources/META-INF/plexus/components.xml b/maven-plugin-rpm/src/main/resources/META-INF/plexus/components.xml deleted file mode 100644 index 0c09c42..0000000 --- a/maven-plugin-rpm/src/main/resources/META-INF/plexus/components.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - org.apache.maven.lifecycle.mapping.LifecycleMapping - rpm - org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping - per-lookup - - - org.apache.maven.plugins:maven-resources-plugin:resources - org.apache.maven.plugins:maven-compiler-plugin:compile - org.xbib:maven-plugin-rpm:package - org.apache.maven.plugins:maven-install-plugin:install - org.apache.maven.plugins:maven-deploy-plugin:deploy - - - - - diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockBuilder.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockBuilder.java deleted file mode 100644 index b4f1859..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockBuilder.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import org.xbib.rpm.RpmBuilder; - -import java.io.IOException; -import java.nio.channels.SeekableByteChannel; -import java.nio.file.Path; - -/** - * - */ -public class MockBuilder extends RpmBuilder { - - @Override - public void build(Path directory) throws IOException { - } - - @Override - public void build(SeekableByteChannel channel) throws IOException { - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockMojo.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockMojo.java deleted file mode 100644 index 54cfdaf..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/MockMojo.java +++ /dev/null @@ -1,49 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import org.apache.maven.plugin.MojoExecutionException; -import org.xbib.maven.plugin.rpm.mojo.AbstractRpmMojo; - -import java.util.List; -import java.util.Set; - -/** - * - */ -public class MockMojo extends AbstractRpmMojo { - - @Override - public void execute() throws MojoExecutionException { - } - - @Override - public void scanMasterFiles() { - super.scanMasterFiles(); - } - - /** - * Get master file set. - * - * @return Master file set - */ - public Set getMasterFiles() { - return this.masterFiles; - } - - /** - * Get excludes. - * - * @return Excludes - */ - public List getExcludes() { - return this.excludes; - } - - /** - * Get packages. - * - * @return Packages - */ - public List getPackages() { - return this.packages; - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmBaseObjectTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmBaseObjectTest.java deleted file mode 100644 index 05971f7..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmBaseObjectTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import org.junit.jupiter.api.Test; - -/** - * - */ -public abstract class RpmBaseObjectTest { - - protected abstract RpmBaseObject getRpmBaseObject(); - - @Test - public void modeAccessors() { - assertEquals(0644, getRpmBaseObject().getPermissionsOrDefault()); - getRpmBaseObject().setPermissions(0755); - assertEquals(0755, getRpmBaseObject().getPermissionsOrDefault()); - } - - @Test - public void ownerAccessors() { - getRpmBaseObject().setOwner(""); - assertEquals("root", getRpmBaseObject().getOwnerOrDefault()); - getRpmBaseObject().setOwner(null); - assertEquals("root", getRpmBaseObject().getOwnerOrDefault()); - assertEquals("root", getRpmBaseObject().getOwnerOrDefault()); - getRpmBaseObject().setOwner("owner"); - assertEquals("owner", getRpmBaseObject().getOwnerOrDefault()); - getRpmBaseObject().setOwner(""); - assertEquals("root", getRpmBaseObject().getOwnerOrDefault()); - } - - @Test - public void groupAccessors() { - getRpmBaseObject().setGroup(""); - assertEquals("root", getRpmBaseObject().getGroupOrDefault()); - getRpmBaseObject().setGroup(null); - assertEquals("root", getRpmBaseObject().getGroupOrDefault()); - assertEquals("root", getRpmBaseObject().getGroupOrDefault()); - getRpmBaseObject().setGroup("group"); - assertEquals("group", getRpmBaseObject().getGroupOrDefault()); - getRpmBaseObject().setGroup(""); - assertEquals("root", getRpmBaseObject().getGroupOrDefault()); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmLinkTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmLinkTest.java deleted file mode 100644 index a142cf6..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmLinkTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import org.apache.maven.monitor.logging.DefaultLog; -import org.apache.maven.plugin.logging.Log; -import org.apache.maven.project.MavenProject; -import org.codehaus.plexus.logging.console.ConsoleLogger; -import org.junit.jupiter.api.BeforeEach; -import org.xbib.maven.plugin.rpm.mojo.PackageRpmMojo; - -import java.io.File; - -/** - * - */ -public class RpmLinkTest extends RpmBaseObjectTest { - - private RpmLink rpmLink; - - @BeforeEach - public void setUp() throws Exception { - String testOutputPath = System.getProperty("project.build.testOutputDirectory"); - PackageRpmMojo mojo = new PackageRpmMojo(); - mojo.setDefaultFileMode(0644); - mojo.setDefaultOwner("root"); - mojo.setDefaultGroup("root"); - mojo.setDefaultDestination(String.format("%svar%swww%stest", File.separator, File.separator, File.separator)); - mojo.setBuildPath(testOutputPath); - MavenProject mavenProject = new MavenProject(); - mojo.setProject(mavenProject); - Log log = new DefaultLog(new ConsoleLogger()); - mojo.setLog(log); - RpmPackage rpmPackage = new RpmPackage(); - rpmPackage.setMojo(mojo); - rpmLink = new RpmLink(); - rpmLink.setPackage(rpmPackage); - } - - @Override - public RpmBaseObject getRpmBaseObject() { - return rpmLink; - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageAssociationTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageAssociationTest.java deleted file mode 100644 index 2f4dc3e..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageAssociationTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNull; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -/** - * - */ -public class RpmPackageAssociationTest { - - private RpmPackageAssociation association; - - @BeforeEach - public void setUp() { - association = new RpmPackageAssociation(); - } - - @Test - public void nameAccessors() { - assertNull(association.getName()); - association.setName("testname"); - assertEquals("testname", association.getName()); - } - - @Test - public void unassignedVersion() { - assertNull(association.getVersion()); - assertNull(association.getMinVersion()); - assertNull(association.getMaxVersion()); - } - - @Test - public void latestVersion() { - association.setVersion(null); - assertNull(association.getVersion()); - assertNull(association.getMinVersion()); - assertNull(association.getMaxVersion()); - association.setVersion(""); - assertNull(association.getVersion()); - assertNull(association.getMinVersion()); - assertNull(association.getMaxVersion()); - association.setVersion("RELEASE"); - assertNull(association.getVersion()); - assertNull(association.getMinVersion()); - assertNull(association.getMaxVersion()); - } - - @Test - public void specificVersion() { - association.setVersion("1.2.3"); - assertEquals("1.2.3", association.getVersion()); - assertNull(association.getMinVersion()); - assertNull(association.getMaxVersion()); - } - - @Test - public void minVersionRange() { - association.setVersion("[1.2.3,)"); - assertNull(association.getVersion()); - assertEquals("1.2.3", association.getMinVersion()); - assertNull(association.getMaxVersion()); - } - - @Test - public void maxVersionRange() { - association.setVersion("[,1.2.3)"); - assertNull(association.getVersion()); - assertNull(association.getMinVersion()); - assertEquals("1.2.3", association.getMaxVersion()); - } - - @Test - public void minMaxVersionRange() { - association.setVersion("[1.2.3,1.2.5)"); - assertNull(association.getVersion()); - assertEquals("1.2.3", association.getMinVersion()); - assertEquals("1.2.5", association.getMaxVersion()); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleDirectiveTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleDirectiveTest.java deleted file mode 100644 index dac8b54..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleDirectiveTest.java +++ /dev/null @@ -1,135 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; -import org.junit.jupiter.api.Test; -import org.xbib.rpm.exception.InvalidDirectiveException; -import org.xbib.rpm.payload.Directive; - -import java.util.EnumSet; - -/** - * - */ -public class RpmPackageRuleDirectiveTest { - - @Test - public void configDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.CONFIG); - assertTrue(directiveList.contains(Directive.CONFIG)); - assertFalse(directiveList.contains(Directive.DOC)); - } - - @Test - public void docDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.DOC); - assertTrue(directiveList.contains(Directive.DOC)); - assertFalse(directiveList.contains(Directive.ICON)); - } - - @Test - public void iconDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.ICON); - assertTrue(directiveList.contains(Directive.ICON)); - assertFalse(directiveList.contains(Directive.MISSINGOK)); - } - - @Test - public void missingOkDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.MISSINGOK); - assertTrue(directiveList.contains(Directive.MISSINGOK)); - assertFalse(directiveList.contains(Directive.NOREPLACE)); - } - - @Test - public void noReplaceDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.NOREPLACE); - assertTrue(directiveList.contains(Directive.NOREPLACE)); - assertFalse(directiveList.contains(Directive.SPECFILE)); - } - - @Test - public void specFileDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.SPECFILE); - assertTrue(directiveList.contains(Directive.SPECFILE)); - assertFalse(directiveList.contains(Directive.GHOST)); - } - - @Test - public void ghostDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.GHOST); - assertTrue(directiveList.contains(Directive.GHOST)); - assertFalse(directiveList.contains(Directive.LICENSE)); - } - - @Test - public void licenseDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.LICENSE); - assertTrue(directiveList.contains(Directive.LICENSE)); - assertFalse(directiveList.contains(Directive.README)); - } - - @Test - public void readmeDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.README); - assertTrue(directiveList.contains(Directive.README)); - assertFalse(directiveList.contains(Directive.EXCLUDE)); - } - - @Test - public void excludeDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.EXCLUDE); - assertTrue(directiveList.contains(Directive.EXCLUDE)); - assertFalse(directiveList.contains(Directive.UNPATCHED)); - } - - @Test - public void unpatchedDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.UNPATCHED); - assertTrue(directiveList.contains(Directive.UNPATCHED)); - assertFalse(directiveList.contains(Directive.POLICY)); - } - - @Test - public void pubkeyDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.PUBKEY); - assertTrue(directiveList.contains(Directive.PUBKEY)); - assertFalse(directiveList.contains(Directive.POLICY)); - } - - @Test - public void policyDirective() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.POLICY); - assertTrue(directiveList.contains(Directive.POLICY)); - } - - @Test - public void multipleDirectives() throws InvalidDirectiveException { - EnumSet directiveList = EnumSet.of(Directive.NONE); - directiveList.add(Directive.CONFIG); - directiveList.add(Directive.NOREPLACE); - directiveList.add(Directive.LICENSE); - directiveList.add(Directive.README); - assertTrue(directiveList.contains(Directive.CONFIG)); - assertTrue(directiveList.contains(Directive.NOREPLACE)); - assertTrue(directiveList.contains(Directive.LICENSE)); - assertTrue(directiveList.contains(Directive.README)); - assertFalse(directiveList.contains(Directive.UNPATCHED)); - assertFalse(directiveList.contains(Directive.PUBKEY)); - assertFalse(directiveList.contains(Directive.POLICY)); - assertFalse(directiveList.contains(Directive.DOC)); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleTest.java deleted file mode 100644 index e3b1293..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageRuleTest.java +++ /dev/null @@ -1,156 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import org.apache.maven.monitor.logging.DefaultLog; -import org.apache.maven.plugin.logging.Log; -import org.apache.maven.project.MavenProject; -import org.codehaus.plexus.logging.console.ConsoleLogger; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.xbib.maven.plugin.rpm.mojo.PackageRpmMojo; -import org.xbib.rpm.exception.InvalidDirectiveException; -import org.xbib.rpm.exception.InvalidPathException; -import org.xbib.rpm.exception.PathOutsideBuildPathException; -import org.xbib.rpm.exception.RpmException; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -/** - * - */ -public class RpmPackageRuleTest extends RpmBaseObjectTest { - - private String testOutputPath; - - private Log log; - - private RpmPackageRule rpmFileRule; - - private RpmPackage rpmPackage; - - @BeforeEach - public void setUp() { - testOutputPath = System.getProperty("project.build.testOutputDirectory"); - PackageRpmMojo mojo = new PackageRpmMojo(); - mojo.setDefaultFileMode(0644); - mojo.setDefaultOwner("root"); - mojo.setDefaultGroup("root"); - mojo.setDefaultDestination(String.format("%svar%swww%stest", File.separator, File.separator, File.separator)); - mojo.setBuildPath(testOutputPath); - MavenProject mavenProject = new MavenProject(); - mojo.setProject(mavenProject); - log = new DefaultLog(new ConsoleLogger()); - mojo.setLog(log); - rpmPackage = new RpmPackage(); - rpmPackage.setMojo(mojo); - rpmFileRule = new RpmPackageRule(); - rpmFileRule.setPackage(rpmPackage); - rpmFileRule.setBase("files"); - } - - @Override - public RpmBaseObject getRpmBaseObject() { - return rpmFileRule; - } - - @Test - public void directiveAccessors() throws InvalidDirectiveException { - List directives = new ArrayList<>(); - directives.add("noreplace"); - rpmFileRule.setDirectives(directives); - assertNotNull(rpmFileRule.getDirectives()); - } - - @Test - public void packageAccessors() { - assertEquals(rpmPackage, rpmFileRule.getPackage()); - } - - @Test - public void baseAccessors() { - rpmFileRule.setBase(""); - assertEquals(File.separator, rpmFileRule.getBase()); - rpmFileRule.setBase(null); - assertEquals(File.separator, rpmFileRule.getBase()); - rpmFileRule.setBase(String.format("%sfoo", File.separator)); - assertEquals(String.format("%sfoo", File.separator), rpmFileRule.getBase()); - } - - @Test - public void destinationAccessors() { - rpmFileRule.setDestination(""); - assertNull(rpmFileRule.getDestination()); - rpmFileRule.setDestination(null); - assertNull(rpmFileRule.getDestination()); - assertEquals(String.format("%svar%swww%stest", File.separator, File.separator, File.separator), - rpmFileRule.getDestinationOrDefault()); - rpmFileRule.setDestination(String.format("%sfoo", File.separator)); - assertEquals(String.format("%sfoo", File.separator), rpmFileRule.getDestination()); - assertEquals(String.format("%sfoo", File.separator), rpmFileRule.getDestinationOrDefault()); - } - - @Test - public void includeAccessors() { - List includes = new ArrayList<>(); - rpmFileRule.setIncludes(includes); - assertEquals(includes, rpmFileRule.getIncludes()); - } - - @Test - public void excludeAccessors() { - List excludes = new ArrayList<>(); - rpmFileRule.setExcludes(excludes); - assertEquals(excludes, rpmFileRule.getExcludes()); - } - - @Test - public void logAccessor() { - assertEquals(log, rpmFileRule.getLog()); - } - - @Test - public void scanPathAccessor() throws InvalidPathException { - String scanPath = String.format("%s%sfiles", new File(testOutputPath).getAbsolutePath(), File.separator); - assertEquals(scanPath, rpmFileRule.getScanPath()); - } - - @Test - public void testListFiles() throws RpmException { - List includes = new ArrayList<>(); - includes.add("**"); - List excludes = new ArrayList<>(); - excludes.add("composer.*"); - rpmFileRule.setIncludes(includes); - rpmFileRule.setExcludes(excludes); - String[] files = rpmFileRule.listFiles(); - assertEquals(62, files.length); - } - - @Test - public void testListFilesOutsideBuildPath() throws RpmException { - Assertions.assertThrows(PathOutsideBuildPathException.class, () -> { - rpmFileRule.setBase(String.format("..%s", File.separator)); - rpmFileRule.listFiles(); - }); - } - - @Test - public void testAddFiles() throws IOException, RpmException { - MockBuilder builder = new MockBuilder(); - List includes = new ArrayList<>(); - includes.add("**"); - List excludes = new ArrayList<>(); - excludes.add("composer.*"); - rpmFileRule.setIncludes(includes); - rpmFileRule.setExcludes(excludes); - String[] files = rpmFileRule.addFiles(builder); - assertEquals(62, files.length); - assertEquals(92, builder.getContents().size()); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageTest.java deleted file mode 100644 index 3161e83..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmPackageTest.java +++ /dev/null @@ -1,407 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; -import org.apache.maven.model.Build; -import org.apache.maven.project.MavenProject; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.xbib.maven.plugin.rpm.mojo.PackageRpmMojo; -import org.xbib.rpm.exception.RpmException; -import org.xbib.rpm.exception.UnknownArchitectureException; -import org.xbib.rpm.exception.UnknownOperatingSystemException; -import org.xbib.rpm.lead.Architecture; -import org.xbib.rpm.lead.Os; -import java.io.File; -import java.io.IOException; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; - -/** - * - */ -public class RpmPackageTest { - - private String testOutputPath; - - private RpmPackage rpmPackage; - - private MavenProject project; - - @BeforeEach - public void setUp() { - testOutputPath = System.getProperty("project.build.testOutputDirectory"); - Build projectBuild = new Build(); - projectBuild.setDirectory(testOutputPath); - rpmPackage = new RpmPackage(); - project = new MavenProject(); - project.setArtifactId("test-artifact"); - project.setName("test"); - project.setVersion("1.0"); - project.setBuild(projectBuild); - PackageRpmMojo mojo = new PackageRpmMojo(); - mojo.setProject(project); - mojo.setBuildPath(String.format("%s%sfiles", testOutputPath, File.separator)); - rpmPackage.setMojo(mojo); - } - - @Test - public void nameAccessors() { - assertEquals("test-artifact", rpmPackage.getName()); - rpmPackage.setName("name"); - assertEquals("name", rpmPackage.getName()); - } - - @Test - public void versionAccessors() { - assertEquals("1.0", rpmPackage.getVersion()); - assertEquals("1.0", rpmPackage.getProjectVersion()); - rpmPackage.setVersion("2.0"); - assertEquals("2.0", rpmPackage.getVersion()); - assertEquals("2.0", rpmPackage.getProjectVersion()); - rpmPackage.setVersion("2.0-SNAPSHOT"); - assertEquals("2.0.SNAPSHOT", rpmPackage.getVersion()); - assertEquals("2.0-SNAPSHOT", rpmPackage.getProjectVersion()); - rpmPackage.setVersion(null); - assertEquals("1.0", rpmPackage.getVersion()); - assertEquals("1.0", rpmPackage.getProjectVersion()); - rpmPackage.setVersion(""); - assertEquals("1.0", rpmPackage.getVersion()); - assertEquals("1.0", rpmPackage.getProjectVersion()); - } - - @Test - public void releaseAccessors() { - assertTrue(rpmPackage.getRelease().matches("\\d+")); - rpmPackage.setRelease("release"); - assertEquals("release", rpmPackage.getRelease()); - } - - @Test - public void finalNameAccessors() { - rpmPackage.setName("name"); - rpmPackage.setVersion("1.0-SNAPSHOT"); - rpmPackage.setRelease("3"); - assertEquals("name-1.0.SNAPSHOT-3.noarch.rpm", rpmPackage.getFinalName()); - rpmPackage.setFinalName("finalname"); - assertEquals("finalname", rpmPackage.getFinalName()); - } - - @Test - public void dependenciesAccessors() { - List dependencies = new ArrayList<>(); - assertNotNull(rpmPackage.getDependencies()); - rpmPackage.setDependencies(dependencies); - assertEquals(dependencies, rpmPackage.getDependencies()); - } - - @Test - public void obsoletesAccessors() { - List obsoletes = new ArrayList<>(); - assertNotNull(rpmPackage.getObsoletes()); - rpmPackage.setObsoletes(obsoletes); - assertEquals(obsoletes, rpmPackage.getObsoletes()); - } - - @Test - public void conflictsAccessors() { - List conflicts = new ArrayList<>(); - assertNotNull(rpmPackage.getConflicts()); - rpmPackage.setConflicts(conflicts); - assertEquals(conflicts, rpmPackage.getConflicts()); - } - - @Test - public void urlAccessors() { - assertNull(rpmPackage.getUrl()); - rpmPackage.setUrl("http://www.example.com/foo"); - assertEquals("http://www.example.com/foo", rpmPackage.getUrl()); - } - - @Test - public void groupAccessors() { - assertNull(rpmPackage.getGroup()); - rpmPackage.setGroup("group/subgroup"); - assertEquals("group/subgroup", rpmPackage.getGroup()); - } - - @Test - public void licenseAccessors() { - assertNull(rpmPackage.getLicense()); - rpmPackage.setLicense("license"); - assertEquals("license", rpmPackage.getLicense()); - } - - @Test - public void summaryAccessors() { - assertNull(rpmPackage.getSummary()); - rpmPackage.setSummary("summary"); - assertEquals("summary", rpmPackage.getSummary()); - } - - @Test - public void descriptionAccessors() { - assertNull(rpmPackage.getDescription()); - rpmPackage.setDescription("description"); - assertEquals("description", rpmPackage.getDescription()); - } - - @Test - public void distributionAccessors() { - assertNull(rpmPackage.getDistribution()); - rpmPackage.setDistribution("distribution"); - assertEquals("distribution", rpmPackage.getDistribution()); - } - - @Test - public void architectureAccessors() throws UnknownArchitectureException { - assertEquals(Architecture.NOARCH, rpmPackage.getArchitecture()); - rpmPackage.setArchitecture("SPARC"); - assertEquals(Architecture.SPARC, rpmPackage.getArchitecture()); - } - - @Test - public void architectureInvalidException() { - Assertions.assertThrows(UnknownArchitectureException.class, () -> - rpmPackage.setArchitecture("NONEXISTENT")); - } - - @Test - public void architectureBlankException() { - Assertions.assertThrows(UnknownArchitectureException.class, () -> - rpmPackage.setArchitecture("")); - } - - @Test - public void architectureNullException() { - Assertions.assertThrows(UnknownArchitectureException.class, () -> - rpmPackage.setArchitecture(null)); - } - - @Test - public void operatingSystemAccessors() throws UnknownOperatingSystemException { - assertEquals(Os.LINUX, rpmPackage.getOperatingSystem()); - rpmPackage.setOperatingSystem("LINUX390"); - assertEquals(Os.LINUX390, rpmPackage.getOperatingSystem()); - } - - @Test - public void operatingSystemInvalidException() { - Assertions.assertThrows(UnknownOperatingSystemException.class, () -> - rpmPackage.setOperatingSystem("NONEXISTENT")); - } - - @Test - public void operatingSystemBlankException() { - Assertions.assertThrows(UnknownOperatingSystemException.class, () -> - rpmPackage.setOperatingSystem("")); - } - - @Test - public void operatingSystemNullException() { - Assertions.assertThrows(UnknownOperatingSystemException.class, () -> - rpmPackage.setOperatingSystem(null)); - } - - @Test - public void buildHostNameAccessors() throws Exception { - assertNotNull(rpmPackage.getBuildHostName()); - rpmPackage.setBuildHostName("buildhost"); - assertEquals("buildhost", rpmPackage.getBuildHostName()); - } - - @Test - public void packagerAccessors() { - assertNull(rpmPackage.getPackager()); - rpmPackage.setPackager("packager"); - assertEquals("packager", rpmPackage.getPackager()); - } - - @Test - public void attachAccessors() { - assertTrue(rpmPackage.isAttach()); - rpmPackage.setAttach(false); - assertFalse(rpmPackage.isAttach()); - } - - @Test - public void classifierAccessors() { - assertNull(rpmPackage.getClassifier()); - rpmPackage.setClassifier("classifier"); - assertEquals("classifier", rpmPackage.getClassifier()); - } - - @Test - public void rulesAccessors() { - List rules = new ArrayList<>(); - rules.add(new RpmPackageRule()); - rules.add(new RpmPackageRule()); - rpmPackage.setRules(rules); - assertEquals(rules, rpmPackage.getRules()); - rpmPackage.setRules(null); - assertNull(rpmPackage.getRules()); - } - - @Test - public void eventHookAccessors() { - Path scriptFile = Paths.get("samplescript.sh"); - assertNull(rpmPackage.getPreTransactionScriptPath()); - rpmPackage.setPreTransactionScriptPath(scriptFile); - assertEquals(scriptFile, rpmPackage.getPreTransactionScriptPath()); - assertNull(rpmPackage.getPreTransactionProgram()); - rpmPackage.setPreTransactionProgram("/bin/sh"); - assertEquals("/bin/sh", rpmPackage.getPreTransactionProgram()); - assertNull(rpmPackage.getPreInstallScriptPath()); - rpmPackage.setPreInstallScriptPath(scriptFile); - assertEquals(scriptFile, rpmPackage.getPreInstallScriptPath()); - assertNull(rpmPackage.getPreInstallProgram()); - rpmPackage.setPreInstallProgram("/bin/sh"); - assertEquals("/bin/sh", rpmPackage.getPreInstallProgram()); - assertNull(rpmPackage.getPostInstallScriptPath()); - rpmPackage.setPostInstallScriptPath(scriptFile); - assertEquals(scriptFile, rpmPackage.getPostInstallScriptPath()); - assertNull(rpmPackage.getPostInstallProgram()); - rpmPackage.setPostInstallProgram("/bin/sh"); - assertEquals("/bin/sh", rpmPackage.getPostInstallProgram()); - assertNull(rpmPackage.getPreUninstallScriptPath()); - rpmPackage.setPreUninstallScriptPath(scriptFile); - assertEquals(scriptFile, rpmPackage.getPreUninstallScriptPath()); - assertNull(rpmPackage.getPreUninstallProgram()); - rpmPackage.setPreUninstallProgram("/bin/sh"); - assertEquals("/bin/sh", rpmPackage.getPreUninstallProgram()); - assertNull(rpmPackage.getPostUninstallScriptPath()); - rpmPackage.setPostUninstallScriptPath(scriptFile); - assertEquals(scriptFile, rpmPackage.getPostUninstallScriptPath()); - assertNull(rpmPackage.getPostUninstallProgram()); - rpmPackage.setPostUninstallProgram("/bin/sh"); - assertEquals("/bin/sh", rpmPackage.getPostUninstallProgram()); - assertNull(rpmPackage.getPostTransactionScriptPath()); - rpmPackage.setPostTransactionScriptPath(scriptFile); - assertEquals(scriptFile, rpmPackage.getPostTransactionScriptPath()); - assertNull(rpmPackage.getPostTransactionProgram()); - rpmPackage.setPostTransactionProgram("/bin/sh"); - assertEquals("/bin/sh", rpmPackage.getPostTransactionProgram()); - } - - @Test - public void triggerAccessors() { - List triggers = new ArrayList<>(); - assertNotNull(rpmPackage.getTriggers()); - rpmPackage.setTriggers(triggers); - assertEquals(triggers, rpmPackage.getTriggers()); - } - - @Test - public void signingKeyAccessors() { - assertNull(rpmPackage.getSigningKey()); - rpmPackage.setSigningKey("key"); - assertEquals("key", rpmPackage.getSigningKey()); - assertNull(rpmPackage.getSigningKeyId()); - rpmPackage.setSigningKeyId(0L); - assertEquals(Long.valueOf(0L), rpmPackage.getSigningKeyId()); - assertNull(rpmPackage.getSigningKeyPassPhrase()); - rpmPackage.setSigningKeyPassPhrase("passphrase"); - assertEquals("passphrase", rpmPackage.getSigningKeyPassPhrase()); - } - - @Test - public void prefixesAccessors() { - List prefixes = new ArrayList<>(); - assertNotNull(rpmPackage.getPrefixes()); - rpmPackage.setPrefixes(null); - assertNotNull(rpmPackage.getPrefixes()); - rpmPackage.setPrefixes(prefixes); - assertEquals(prefixes, rpmPackage.getPrefixes()); - } - - @Test - public void builtinsAccessors() { - List builtins = new ArrayList<>(); - assertNotNull(rpmPackage.getBuiltins()); - rpmPackage.setBuiltins(null); - assertNotNull(rpmPackage.getBuiltins()); - rpmPackage.setBuiltins(builtins); - assertEquals(builtins, rpmPackage.getBuiltins()); - } - - @Test - public void build() throws IOException, RpmException { - project.setArtifactId("build"); - List dependencies = new ArrayList<>(); - RpmPackageAssociation dependency = new RpmPackageAssociation(); - dependency.setName("dependency"); - dependencies.add(dependency); - rpmPackage.setDependencies(dependencies); - List obsoletes = new ArrayList<>(); - RpmPackageAssociation obsolete = new RpmPackageAssociation(); - obsolete.setName("obsolete"); - obsoletes.add(obsolete); - rpmPackage.setObsoletes(obsoletes); - List conflicts = new ArrayList<>(); - RpmPackageAssociation conflict = new RpmPackageAssociation(); - conflict.setName("conflict"); - conflicts.add(conflict); - rpmPackage.setConflicts(conflicts); - List rules = new ArrayList<>(); - RpmPackageRule rule = new RpmPackageRule(); - rules.add(rule); - rpmPackage.setRules(rules); - Path scriptFile = Paths.get(String.format("%s%s/rpm/RpmPackage.sh", - testOutputPath, File.separator)); - rpmPackage.setPreTransactionScriptPath(scriptFile); - rpmPackage.setPreTransactionProgram("/bin/sh"); - rpmPackage.setPreInstallScriptPath(scriptFile); - rpmPackage.setPreInstallProgram("/bin/sh"); - rpmPackage.setPostInstallScriptPath(scriptFile); - rpmPackage.setPostInstallProgram("/bin/sh"); - rpmPackage.setPreUninstallScriptPath(scriptFile); - rpmPackage.setPreUninstallProgram("/bin/sh"); - rpmPackage.setPostUninstallScriptPath(scriptFile); - rpmPackage.setPostUninstallProgram("/bin/sh"); - rpmPackage.setPostTransactionScriptPath(scriptFile); - rpmPackage.setPostTransactionProgram("/bin/sh"); - rpmPackage.build(); - String rpmFileName = String.format("%s%s%s", testOutputPath, File.separator, rpmPackage.getFinalName()); - assertTrue(new File(rpmFileName).exists()); - } - - @Test - public void buildSecondaryAttachmentNameDifference() throws IOException, RpmException { - rpmPackage.setName("buildSecondaryAttachment"); - rpmPackage.build(); - String rpmFileName = String.format("%s%s%s", testOutputPath, File.separator, rpmPackage.getFinalName()); - assertTrue(new File(rpmFileName).exists()); - } - - @Test - public void buildSecondaryAttachmentVersionDifference() throws IOException, RpmException { - rpmPackage.setVersion("2.0"); - rpmPackage.build(); - String rpmFileName = String.format("%s%s%s", testOutputPath, File.separator, rpmPackage.getFinalName()); - assertTrue(new File(rpmFileName).exists()); - } - - @Test - public void buildSecondaryAttachmentNameAndVersionDifference() throws IOException, RpmException { - rpmPackage.setName("buildSecondaryAttachmentNameAndVersionDifference"); - rpmPackage.setVersion("2.0"); - rpmPackage.build(); - String rpmFileName = String.format("%s%s%s", testOutputPath, File.separator, rpmPackage.getFinalName()); - assertTrue(new File(rpmFileName).exists()); - } - - @Test - public void buildWithoutAttachment() throws IOException, RpmException { - project.setArtifactId("buildWithoutAttachment"); - rpmPackage.setAttach(false); - rpmPackage.build(); - String rpmFileName = String.format("%s%s%s", testOutputPath, File.separator, rpmPackage.getFinalName()); - assertTrue(new File(rpmFileName).exists()); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRendererTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRendererTest.java deleted file mode 100644 index c130d99..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmScriptTemplateRendererTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import java.io.Reader; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; - -/** - * - */ -public class RpmScriptTemplateRendererTest { - private String testOutputPath; - - @BeforeEach - public void setUp() { - this.testOutputPath = System.getProperty("project.build.testOutputDirectory"); - } - - @Test - public void render() throws Exception { - Path templateScriptFile = Paths.get( - String.format("%s/rpm/RpmScriptTemplateRenderer-template", - this.testOutputPath)); - Path expectedScriptFile = Paths.get( - String.format("%s/rpm/RpmScriptTemplateRenderer-template-expected", - this.testOutputPath)); - Path actualScriptFile = Paths.get( - String.format("%s/rpm/RpmScriptTemplateRenderer-template-actual", - this.testOutputPath)); - RpmScriptTemplateRenderer renderer = new RpmScriptTemplateRenderer(); - renderer.addParameter("testdata1", true); - renderer.addParameter("testdata2", "test"); - renderer.addParameter("testdata3", 123); - //assertFalse(Files.exists(actualScriptFile)); - renderer.render(templateScriptFile, actualScriptFile); - assertTrue(Files.exists(actualScriptFile)); - char[] buff = new char[1024]; - StringBuilder stringBuilder; - int bytesRead; - stringBuilder = new StringBuilder(); - try (Reader reader = Files.newBufferedReader(actualScriptFile)) { - while (-1 != (bytesRead = reader.read(buff))) { - stringBuilder.append(buff, 0, bytesRead); - } - } - String actualTemplateContents = stringBuilder.toString(); - stringBuilder = new StringBuilder(); - try (Reader reader = Files.newBufferedReader(expectedScriptFile)) { - while (-1 != (bytesRead = reader.read(buff))) { - stringBuilder.append(buff, 0, bytesRead); - } - } - String expectedTemplateContents = stringBuilder.toString(); - assertEquals(expectedTemplateContents, actualTemplateContents); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmTriggerTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmTriggerTest.java deleted file mode 100644 index 8fdbbe6..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/RpmTriggerTest.java +++ /dev/null @@ -1,48 +0,0 @@ -package org.xbib.maven.plugin.rpm; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNull; -import org.junit.jupiter.api.Test; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; - -/** - * - */ -public class RpmTriggerTest { - - @Test - public void accessors() { - List dependencies = new ArrayList<>(); - RpmTrigger trigger = new RpmTrigger(); - Path triggerScript = Paths.get("/path/to/file"); - assertNull(trigger.getPreInstallScriptPath()); - trigger.setPreInstallScriptPath(triggerScript); - assertEquals(triggerScript, trigger.getPreInstallScriptPath()); - assertNull(trigger.getPreInstallProgram()); - trigger.setPreInstallProgram("/bin/sh"); - assertEquals("/bin/sh", trigger.getPreInstallProgram()); - assertNull(trigger.getPostInstallScriptPath()); - trigger.setPostInstallScriptPath(triggerScript); - assertEquals(triggerScript, trigger.getPostInstallScriptPath()); - assertNull(trigger.getPostInstallProgram()); - trigger.setPostInstallProgram("/bin/sh"); - assertEquals("/bin/sh", trigger.getPostInstallProgram()); - assertNull(trigger.getPreUninstallScriptPath()); - trigger.setPreUninstallScriptPath(triggerScript); - assertEquals(triggerScript, trigger.getPreUninstallScriptPath()); - assertNull(trigger.getPreUninstallProgram()); - trigger.setPreUninstallProgram("/bin/sh"); - assertEquals("/bin/sh", trigger.getPreUninstallProgram()); - assertNull(trigger.getPostUninstallScriptPath()); - trigger.setPostUninstallScriptPath(triggerScript); - assertEquals(triggerScript, trigger.getPostUninstallScriptPath()); - assertNull(trigger.getPostUninstallProgram()); - trigger.setPostUninstallProgram("/bin/sh"); - assertEquals("/bin/sh", trigger.getPostUninstallProgram()); - trigger.setDependencies(dependencies); - assertEquals(dependencies, trigger.getDependencies()); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojoTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojoTest.java deleted file mode 100644 index c680d37..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/AbstractRpmMojoTest.java +++ /dev/null @@ -1,170 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; -import org.apache.maven.model.Build; -import org.apache.maven.model.License; -import org.apache.maven.project.MavenProject; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.xbib.maven.plugin.rpm.MockMojo; -import org.xbib.maven.plugin.rpm.RpmPackage; -import org.xbib.maven.plugin.rpm.RpmScriptTemplateRenderer; -import org.xbib.rpm.exception.InvalidPathException; - -import java.io.BufferedReader; -import java.io.File; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - -/** - * - */ -public class AbstractRpmMojoTest { - - private String testOutputPath; - - private MockMojo mojo; - private MavenProject project; - - @BeforeEach - public void setUp() { - testOutputPath = System.getProperty("project.build.testOutputDirectory"); - Build projectBuild = new Build(); - projectBuild.setDirectory("target"); - project = new MavenProject(); - project.setGroupId("org.xbib"); - project.setArtifactId("test-artifact"); - project.setName("test"); - project.setVersion("1.0-SNAPSHOT"); - project.setUrl("http://www.example.com"); - project.setBuild(projectBuild); - List licenses = new ArrayList<>(); - License license1 = new License(); - license1.setName("GPL"); - licenses.add(license1); - License license2 = new License(); - license2.setName("LGPL"); - licenses.add(license2); - project.setLicenses(licenses); - mojo = new MockMojo(); - mojo.setProject(project); - } - - @Test - public void projectAccessors() { - mojo.setProject(null); - assertNull(mojo.getProject()); - mojo.setProject(project); - assertEquals(project, mojo.getProject()); - assertEquals("test-artifact", mojo.getProjectArtifactId()); - assertEquals("1.0-SNAPSHOT", mojo.getProjectVersion()); - assertEquals("http://www.example.com", mojo.getProjectUrl()); - assertEquals("GPL, LGPL", mojo.getCollapsedProjectLicense()); - assertEquals("target", mojo.getBuildDirectory()); - } - - @Test - public void templateRenderer() throws IOException { - RpmScriptTemplateRenderer renderer = mojo.getTemplateRenderer(); - assertNotNull(renderer); - Path templateScriptFile = - Paths.get(testOutputPath, "mojo/AbstractRpmMojo-template"); - Path expectedScriptFile = - Paths.get(testOutputPath, "mojo/AbstractRpmMojo-template-expected"); - Path actualScriptFile = - Paths.get(testOutputPath, "mojo/AbstractRpmMojo-template-actual"); - renderer.render(templateScriptFile, actualScriptFile); - assertTrue(Files.exists(actualScriptFile)); - char[] buff = new char[1024]; - StringBuilder stringBuilder; - int bytesRead; - stringBuilder = new StringBuilder(); - try (BufferedReader reader = Files.newBufferedReader(actualScriptFile)) { - while (-1 != (bytesRead = reader.read(buff))) { - stringBuilder.append(buff, 0, bytesRead); - } - } - String actualTemplateContents = stringBuilder.toString(); - stringBuilder = new StringBuilder(); - try (BufferedReader reader = Files.newBufferedReader(expectedScriptFile)) { - while (-1 != (bytesRead = reader.read(buff))) { - stringBuilder.append(buff, 0, bytesRead); - } - } - String expectedTemplateContents = stringBuilder.toString(); - assertEquals(expectedTemplateContents, actualTemplateContents); - assertEquals(renderer, mojo.getTemplateRenderer()); - } - - @Test - public void projectArtifacts() { - Path artifact = Paths.get(String.format("%s/artifact.rpm", testOutputPath)); - mojo.setPrimaryArtifact(artifact, "test"); - mojo.addSecondaryArtifact(artifact, "secondary-artifact", "1.0", "test"); - mojo.addSecondaryArtifact(artifact, "secondary-artifact", "1.0", null); - assertNotNull(project.getArtifact()); - assertEquals(2, project.getAttachedArtifacts().size()); - } - - @Test - public void buildPath() throws InvalidPathException { - mojo.setBuildPath(testOutputPath); - assertEquals(testOutputPath, mojo.getBuildPath()); - } - - @Test - public void packages() { - List packages = new ArrayList<>(); - packages.add(new RpmPackage()); - mojo.setPackages(packages); - assertEquals(packages, mojo.getPackages()); - } - - @Test - public void defaults() { - assertEquals(0644, mojo.getDefaultFileMode()); - mojo.setDefaultFileMode(0755); - assertEquals(0755, mojo.getDefaultFileMode()); - assertEquals("root", mojo.getDefaultOwner()); - mojo.setDefaultOwner("nobody"); - assertEquals("nobody", mojo.getDefaultOwner()); - assertEquals("root", mojo.getDefaultGroup()); - mojo.setDefaultGroup("nobody"); - assertEquals("nobody", mojo.getDefaultGroup()); - assertEquals(File.separator, mojo.getDefaultDestination()); - mojo.setDefaultDestination(String.format("%sdestination", File.separator)); - assertEquals(String.format("%sdestination", File.separator), mojo.getDefaultDestination()); - } - - @Test - public void excludes() { - List excludes = new ArrayList<>(); - mojo.setExcludes(excludes); - assertEquals(excludes, mojo.getExcludes()); - } - - @Test - public void checkingForExtraFiles() { - mojo.setPerformCheckingForExtraFiles(true); - assertTrue(mojo.isPerformCheckingForExtraFiles()); - mojo.setPerformCheckingForExtraFiles(false); - assertFalse(mojo.isPerformCheckingForExtraFiles()); - } - - @Test - public void scanMasterFiles() { - mojo.setBuildPath(String.format("%s%sfiles", testOutputPath, File.separator)); - mojo.scanMasterFiles(); - Set masterFiles = mojo.getMasterFiles(); - assertEquals(62, masterFiles.size()); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojoTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojoTest.java deleted file mode 100644 index d4fe56c..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/ListFilesRpmMojoTest.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import org.apache.maven.model.Build; -import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.project.MavenProject; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.xbib.maven.plugin.rpm.RpmPackage; -import org.xbib.maven.plugin.rpm.RpmPackageRule; - -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -/** - * - */ -public class ListFilesRpmMojoTest { - - private String testOutputPath; - private ListFilesRpmMojo mojo; - private RpmPackageRule packageRule; - - @BeforeEach - public void setUp() { - this.testOutputPath = System.getProperty("project.build.testOutputDirectory"); - Build projectBuild = new Build(); - projectBuild.setDirectory(this.testOutputPath); - MavenProject project = new MavenProject(); - project.setGroupId("uk.co.codezen"); - project.setArtifactId("listfilesmojo-artifact"); - project.setName("test"); - project.setVersion("1.0-SNAPSHOT"); - project.setUrl("http://www.example.com"); - project.setBuild(projectBuild); - this.mojo = new ListFilesRpmMojo(); - this.mojo.setProject(project); - List packageRules = new ArrayList<>(); - this.packageRule = new RpmPackageRule(); - packageRules.add(this.packageRule); - RpmPackage rpmPackage = new RpmPackage(); - rpmPackage.setRules(packageRules); - List packages = new ArrayList<>(); - packages.add(rpmPackage); - this.mojo.setPackages(packages); - this.mojo.setBuildPath(String.format("%s%sfiles", this.testOutputPath, File.separator)); - } - - @Test - public void packageRpm() throws MojoExecutionException { - List includes = new ArrayList<>(); - includes.add("**"); - packageRule.setIncludes(includes); - this.mojo.execute(); - } - - @Test - public void packageRpmMissedFiles() throws MojoExecutionException { - List includes = new ArrayList<>(); - packageRule.setIncludes(includes); - this.mojo.execute(); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojoTest.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojoTest.java deleted file mode 100644 index d3ab0a8..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/PackageRpmMojoTest.java +++ /dev/null @@ -1,115 +0,0 @@ -package org.xbib.maven.plugin.rpm.mojo; - -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertTrue; -import org.apache.maven.model.Build; -import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.project.MavenProject; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.xbib.maven.plugin.rpm.RpmPackage; -import org.xbib.maven.plugin.rpm.RpmPackageRule; -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -/** - * - */ -public class PackageRpmMojoTest { - - private PackageRpmMojo mojo; - - private MavenProject project; - - private RpmPackageRule packageRule; - - @BeforeEach - public void setUp() { - // Test output path - String testOutputPath = System.getProperty("project.build.testOutputDirectory"); - Build projectBuild = new Build(); - projectBuild.setDirectory(testOutputPath); - project = new MavenProject(); - project.setGroupId("org.xbib"); - project.setArtifactId("packagerpmmojo-artifact"); - project.setName("test"); - project.setUrl("http://www.example.com"); - project.setBuild(projectBuild); - project.setPackaging("rpm"); - mojo = new PackageRpmMojo(); - mojo.setProject(project); - List packageRules = new ArrayList<>(); - packageRule = new RpmPackageRule(); - packageRules.add(packageRule); - RpmPackage rpmPackage = new RpmPackage(); - rpmPackage.setRules(packageRules); - List packages = new ArrayList<>(); - packages.add(rpmPackage); - mojo.setPackages(packages); - mojo.setBuildPath(String.format("%s%sfiles", testOutputPath, File.separator)); - } - - @Test - public void packageRpm() throws MojoExecutionException { - project.setVersion("1.0-SNAPSHOT"); - List includes = new ArrayList<>(); - includes.add("**"); - packageRule.setIncludes(includes); - mojo.execute(); - assertTrue(project.getArtifact().getFile().exists()); - } - - @Test - public void packageRpmNonRpmPackagingType() throws MojoExecutionException { - project.setPackaging("jar"); - project.setVersion("1.1-SNAPSHOT"); - List includes = new ArrayList<>(); - includes.add("**"); - packageRule.setIncludes(includes); - mojo.execute(); - assertNull(project.getArtifact()); - } - - @Test - public void packageRpmMissedFiles() throws MojoExecutionException { - Assertions.assertThrows(MojoExecutionException.class, () -> { - project.setVersion("2.0-SNAPSHOT"); - List includes = new ArrayList<>(); - packageRule.setIncludes(includes); - mojo.execute(); - }); - } - - @Test - public void packageRpmMissedFilesWithoutChecks() throws MojoExecutionException { - mojo.setPerformCheckingForExtraFiles(false); - project.setVersion("3.0-SNAPSHOT"); - List includes = new ArrayList<>(); - includes.add("**/*.php"); - packageRule.setIncludes(includes); - mojo.execute(); - } - - @Test - public void packageRpmNoFilesPackaged() throws MojoExecutionException { - Assertions.assertThrows(MojoExecutionException.class, () -> { - mojo.setPerformCheckingForExtraFiles(false); - project.setVersion("4.0-SNAPSHOT"); - List includes = new ArrayList<>(); - packageRule.setIncludes(includes); - mojo.execute(); - }); - } - - @Test - public void packageRpmNoFilesPackagedNoPackages() throws MojoExecutionException { - mojo.setPackages(new ArrayList<>()); - mojo.setPerformCheckingForExtraFiles(false); - project.setVersion("5.0-SNAPSHOT"); - List includes = new ArrayList<>(); - packageRule.setIncludes(includes); - mojo.execute(); - } -} diff --git a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/package-info.java b/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/package-info.java deleted file mode 100644 index 425d0bb..0000000 --- a/maven-plugin-rpm/src/test/java/org/xbib/maven/plugin/rpm/mojo/package-info.java +++ /dev/null @@ -1,4 +0,0 @@ -/** - * - */ -package org.xbib.maven.plugin.rpm.mojo; diff --git a/maven-plugin-rpm/src/test/resources/files/.gitignore b/maven-plugin-rpm/src/test/resources/files/.gitignore deleted file mode 100644 index fa563fa..0000000 --- a/maven-plugin-rpm/src/test/resources/files/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -/web/bundles/ -/app/bootstrap.php.cache -/app/cache/* -/app/config/parameters.yml -/app/logs/* -!app/cache/.gitkeep -!app/logs/.gitkeep -/build/ -/vendor/ -/bin/ -/composer.phar diff --git a/maven-plugin-rpm/src/test/resources/files/README.md b/maven-plugin-rpm/src/test/resources/files/README.md deleted file mode 100644 index 0b8211b..0000000 --- a/maven-plugin-rpm/src/test/resources/files/README.md +++ /dev/null @@ -1,170 +0,0 @@ -Symfony Standard Edition -======================== - -Welcome to the Symfony Standard Edition - a fully-functional Symfony2 -application that you can use as the skeleton for your new applications. - -This document contains information on how to download, install, and start -using Symfony. For a more detailed explanation, see the [Installation][1] -chapter of the Symfony Documentation. - -1) Installing the Standard Edition ----------------------------------- - -When it comes to installing the Symfony Standard Edition, you have the -following options. - -### Use Composer (*recommended*) - -As Symfony uses [Composer][2] to manage its dependencies, the recommended way -to create a new project is to use it. - -If you don't have Composer yet, download it following the instructions on -http://getcomposer.org/ or just run the following command: - - curl -s http://getcomposer.org/installer | php - -Then, use the `create-project` command to generate a new Symfony application: - - php composer.phar create-project symfony/framework-standard-edition path/to/install - -Composer will install Symfony and all its dependencies under the -`path/to/install` directory. - -### Download an Archive File - -To quickly test Symfony, you can also download an [archive][3] of the Standard -Edition and unpack it somewhere under your web server root directory. - -If you downloaded an archive "without vendors", you also need to install all -the necessary dependencies. Download composer (see above) and run the -following command: - - php composer.phar install - -2) Checking your System Configuration -------------------------------------- - -Before starting coding, make sure that your local system is properly -configured for Symfony. - -Execute the `check.php` script from the command line: - - php app/check.php - -The script returns a status code of `0` if all mandatory requirements are met, -`1` otherwise. - -Access the `config.php` script from a browser: - - http://localhost/path-to-project/web/config.php - -If you get any warnings or recommendations, fix them before moving on. - -3) Browsing the Demo Application --------------------------------- - -Congratulations! You're now ready to use Symfony. - -From the `config.php` page, click the "Bypass configuration and go to the -Welcome page" link to load up your first Symfony page. - -You can also use a web-based configurator by clicking on the "Configure your -Symfony Application online" link of the `config.php` page. - -To see a real-live Symfony page in action, access the following page: - - web/app_dev.php/demo/hello/Fabien - -4) Getting started with Symfony -------------------------------- - -This distribution is meant to be the starting point for your Symfony -applications, but it also contains some sample code that you can learn from -and play with. - -A great way to start learning Symfony is via the [Quick Tour][4], which will -take you through all the basic features of Symfony2. - -Once you're feeling good, you can move onto reading the official -[Symfony2 book][5]. - -A default bundle, `AcmeDemoBundle`, shows you Symfony2 in action. After -playing with it, you can remove it by following these steps: - - * delete the `src/Acme` directory; - - * remove the routing entry referencing AcmeDemoBundle in `app/config/routing_dev.yml`; - - * remove the AcmeDemoBundle from the registered bundles in `app/AppKernel.php`; - - * remove the `web/bundles/acmedemo` directory; - - * empty the `security.yml` file or tweak the security configuration to fit - your needs. - -What's inside? ---------------- - -The Symfony Standard Edition is configured with the following defaults: - - * Twig is the only configured template engine; - - * Doctrine ORM/DBAL is configured; - - * Swiftmailer is configured; - - * Annotations for everything are enabled. - -It comes pre-configured with the following bundles: - - * **FrameworkBundle** - The core Symfony framework bundle - - * [**SensioFrameworkExtraBundle**][6] - Adds several enhancements, including - template and routing annotation capability - - * [**DoctrineBundle**][7] - Adds support for the Doctrine ORM - - * [**TwigBundle**][8] - Adds support for the Twig templating engine - - * [**SecurityBundle**][9] - Adds security by integrating Symfony's security - component - - * [**SwiftmailerBundle**][10] - Adds support for Swiftmailer, a library for - sending emails - - * [**MonologBundle**][11] - Adds support for Monolog, a logging library - - * [**AsseticBundle**][12] - Adds support for Assetic, an asset processing - library - - * **WebProfilerBundle** (in dev/test env) - Adds profiling functionality and - the web debug toolbar - - * **SensioDistributionBundle** (in dev/test env) - Adds functionality for - configuring and working with Symfony distributions - - * [**SensioGeneratorBundle**][13] (in dev/test env) - Adds code generation - capabilities - - * **AcmeDemoBundle** (in dev/test env) - A demo bundle with some example - code - -All libraries and bundles included in the Symfony Standard Edition are -released under the MIT or BSD license. - -Enjoy! - -[1]: http://symfony.com/doc/2.5/book/installation.html -[2]: http://getcomposer.org/ -[3]: http://symfony.com/download -[4]: http://symfony.com/doc/2.5/quick_tour/the_big_picture.html -[5]: http://symfony.com/doc/2.5/index.html -[6]: http://symfony.com/doc/2.5/bundles/SensioFrameworkExtraBundle/index.html -[7]: http://symfony.com/doc/2.5/book/doctrine.html -[8]: http://symfony.com/doc/2.5/book/templating.html -[9]: http://symfony.com/doc/2.5/book/security.html -[10]: http://symfony.com/doc/2.5/cookbook/email.html -[11]: http://symfony.com/doc/2.5/cookbook/logging/monolog.html -[12]: http://symfony.com/doc/2.5/cookbook/assetic/asset_management.html -[13]: http://symfony.com/doc/2.5/bundles/SensioGeneratorBundle/index.html diff --git a/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.2.md b/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.2.md deleted file mode 100644 index cad9eeb..0000000 --- a/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.2.md +++ /dev/null @@ -1,30 +0,0 @@ -UPGRADE FROM 2.1 to 2.2 -======================= - - * The [`web/.htaccess`](https://github.com/symfony/symfony-standard/blob/2.2/web/.htaccess) - file has been enhanced substantially to prevent duplicate content with and - without `/app.php` in the URI. It also improves functionality when using - Apache aliases or when mod_rewrite is not available. So you might want to - update your `.htaccess` file as well. - - * The ``_internal`` route is not used any more. It should then be removed - from both your routing and security configurations. A ``fragments`` key has - been added to the framework configuration and must be specified when ESI or - Hinclude are in use. No security configuration is required for this path as - by default ESI access is only permitted for trusted hosts and Hinclude - access uses an URL signing mechanism. - - ``` - framework: - # ... - fragments: { path: /_proxy } - ``` - -Functional Tests ----------------- - - * The profiler has been disabled by default in the test environment. You can - enable it again by modifying the ``config_test.yml`` configuration file or - even better, you can just enable it for the very next request by calling - ``$client->enableProfiler()`` when you need the profiler in a test (that - speeds up functional tests quite a bit). diff --git a/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.3.md b/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.3.md deleted file mode 100644 index eb4b3ec..0000000 --- a/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.3.md +++ /dev/null @@ -1,52 +0,0 @@ -UPGRADE FROM 2.2 to 2.3 -======================= - -When upgrading Symfony from 2.2 to 2.3, you need to do the following changes -to the code that came from the Standard Edition: - - * The debugging tools are not enabled by default anymore and should be added - to the - [`web/app_dev.php`](https://github.com/symfony/symfony-standard/blob/2.3/web/app_dev.php) - front controller manually, just after including the bootstrap cache: - - use Symfony\Component\Debug\Debug; - - Debug::enable(); - - You also need to enable debugging in the - [`app/console`](https://github.com/symfony/symfony-standard/blob/2.3/app/console) - script, after the `$debug` variable is defined: - - use Symfony\Component\Debug\Debug; - - if ($debug) { - Debug::enable(); - } - - * The `parameters.yml` file can now be managed by the - `incenteev/composer-parameter-handler` bundle that comes with the 2.3 - Standard Edition: - - * add `"incenteev/composer-parameter-handler": "~2.0"` to your - `composer.json` file; - - * add `/app/config/parameters.yml` to your `.gitignore` file; - - * create a - [`app/config/parameters.yml.dist`](https://github.com/symfony/symfony-standard/blob/2.3/app/config/parameters.yml.dist) - file with sensible values for all your parameters. - - * It is highly recommended that you switch the minimum stability to `stable` - in your `composer.json` file. - - * If you are using Apache, have a look at the new - [`.htaccess`](https://github.com/symfony/symfony-standard/blob/2.3/web/.htaccess) - configuration and change yours accordingly. - - * In the - [`app/autoload.php`](https://github.com/symfony/symfony-standard/blob/2.3/app/autoload.php) - file, the section about `intl` should be removed as it is not needed anymore. - -You can also have a look at the -[diff](https://github.com/symfony/symfony-standard/compare/v2.2.0%E2%80%A62.3) -between the 2.2 version of the Standard Edition and the 2.3 version. diff --git a/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.4.md b/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.4.md deleted file mode 100644 index a3e3395..0000000 --- a/maven-plugin-rpm/src/test/resources/files/UPGRADE-2.4.md +++ /dev/null @@ -1,9 +0,0 @@ -UPGRADE FROM 2.3 to 2.4 -======================= - -When upgrading Symfony from 2.3 to 2.4, you need to do the following changes -to the code that came from the Standard Edition: - - * We recommend to comment or remove the `firephp` and `chromephp` Monolog - handlers as they might cause issues with some configuration (`chromephp` - with Nginx for instance). diff --git a/maven-plugin-rpm/src/test/resources/files/UPGRADE.md b/maven-plugin-rpm/src/test/resources/files/UPGRADE.md deleted file mode 100644 index a206d37..0000000 --- a/maven-plugin-rpm/src/test/resources/files/UPGRADE.md +++ /dev/null @@ -1,268 +0,0 @@ -Symfony Standard Edition Upgrade -================================ - -From Symfony 2.0 to Symfony 2.1 -------------------------------- - -### Project Dependencies - -As of Symfony 2.1, project dependencies are managed by -[Composer](http://getcomposer.org/): - -* The `bin/vendors` script can be removed as `composer.phar` does all the work - now (it is recommended to install it globally on your machine). - -* The `deps` file need to be replaced with the `composer.json` one. - -* The `composer.lock` is the equivalent of the generated `deps.lock` file and - it is automatically generated by Composer. - -Download the default -[`composer.json`](https://raw.github.com/symfony/symfony-standard/2.1/composer.json) -and -[`composer.lock`](https://raw.github.com/symfony/symfony-standard/2.1/composer.lock) -files for Symfony 2.1 and put them into the main directory of your project. If -you have customized your `deps` file, move the added dependencies to the -`composer.json` file (many bundles and PHP libraries are already available as -Composer packages -- search for them on [Packagist](http://packagist.org/)). - -Remove your current `vendor` directory. - -Finally, run Composer: - - $ composer.phar install - -Note: You must complete the upgrade steps below so composer can successfully generate the autoload files. - -### `app/autoload.php` - -The default `autoload.php` reads as follows (it has been simplified a lot as -autoloading for libraries and bundles declared in your `composer.json` file is -automatically managed by the Composer autoloader): - - add('', __DIR__.'/../vendor/symfony/symfony/src/Symfony/Component/Locale/Resources/stubs'); - } - - AnnotationRegistry::registerLoader(array($loader, 'loadClass')); - - return $loader; - -### `app/config/config.yml` - -The `framework.charset` setting must be removed. If you are not using `UTF-8` -for your application, override the `getCharset()` method in your `AppKernel` -class instead: - - class AppKernel extends Kernel - { - public function getCharset() - { - return 'ISO-8859-1'; - } - - // ... - } - -You might want to add the new `strict_requirements` parameter to -`framework.router` (it avoids fatal errors in the production environment when -a link cannot be generated): - - framework: - router: - strict_requirements: "%kernel.debug%" - -You can even disable the requirements check on production with `null` as you should -know that the parameters for URL generation always pass the requirements, e.g. by -validating them beforehand. This additionally enhances performance. See -[config_prod.yml](https://github.com/symfony/symfony-standard/blob/master/app/config/config_prod.yml). - -The `default_locale` parameter is now a setting of the main `framework` -configuration (it was under the `framework.session` in 2.0): - - framework: - default_locale: "%locale%" - -The `auto_start` setting under `framework.session` must be removed as it is -not used anymore (the session is now always started on-demand). If -`auto_start` was the only setting under the `framework.session` entry, don't -remove it entirely, but set its value to `~` (`~` means `null` in YAML) -instead: - - framework: - session: ~ - -The `trust_proxy_headers` setting was added in the default configuration file -(as it should be set to `true` when you install your application behind a -reverse proxy): - - framework: - trust_proxy_headers: false - -An empty `bundles` entry was added to the `assetic` configuration: - - assetic: - bundles: [] - -The default `swiftmailer` configuration now has the `spool` setting configured -to the `memory` type to defer email sending after the response is sent to the -user (recommended for better end-user performance): - - swiftmailer: - spool: { type: memory } - -The `jms_security_extra` configuration was moved to the `security.yml` -configuration file. - -### `app/config/config_dev.yml` - -An example of how to send all emails to a unique address was added: - - #swiftmailer: - # delivery_address: me@example.com - -### `app/config/config_test.yml` - -The `storage_id` setting must be changed to `session.storage.mock_file`: - - framework: - session: - storage_id: session.storage.mock_file - -### `app/config/parameters.ini` - -The file has been converted to a YAML file which reads as follows: - - parameters: - database_driver: pdo_mysql - database_host: localhost - database_port: ~ - database_name: symfony - database_user: root - database_password: ~ - - mailer_transport: smtp - mailer_host: localhost - mailer_user: ~ - mailer_password: ~ - - locale: en - secret: ThisTokenIsNotSoSecretChangeIt - -Note that if you convert your parameters file to YAML, you must also change -its reference in `app/config/config.yml`. - -### `app/config/routing_dev.yml` - -The `_assetic` entry was removed: - - #_assetic: - # resource: . - # type: assetic - -### `app/config/security.yml` - -Under `security.access_control`, the default rule for internal routes was changed: - - security: - access_control: - #- { path: ^/_internal/secure, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 } - -Under `security.providers`, the `in_memory` example was updated to the following: - - security: - providers: - in_memory: - memory: - users: - user: { password: userpass, roles: [ 'ROLE_USER' ] } - admin: { password: adminpass, roles: [ 'ROLE_ADMIN' ] } - -### `app/AppKernel.php` - -The following bundles have been added to the list of default registered bundles: - - new JMS\AopBundle\JMSAopBundle(), - new JMS\DiExtraBundle\JMSDiExtraBundle($this), - -You must also rename the DoctrineBundle from: - - new Symfony\Bundle\DoctrineBundle\DoctrineBundle(), - -to: - - new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(), - -### `web/app.php` - -The default `web/app.php` file now reads as follows: - - register(true); - */ - - require_once __DIR__.'/../app/AppKernel.php'; - //require_once __DIR__.'/../app/AppCache.php'; - - $kernel = new AppKernel('prod', false); - $kernel->loadClassCache(); - //$kernel = new AppCache($kernel); - $request = Request::createFromGlobals(); - $response = $kernel->handle($request); - $response->send(); - $kernel->terminate($request, $response); - -### `web/app_dev.php` - -The default `web/app_dev.php` file now reads as follows: - - loadClassCache(); - $request = Request::createFromGlobals(); - $response = $kernel->handle($request); - $response->send(); - $kernel->terminate($request, $response); diff --git a/maven-plugin-rpm/src/test/resources/files/app/.htaccess b/maven-plugin-rpm/src/test/resources/files/app/.htaccess deleted file mode 100644 index fb1de45..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/.htaccess +++ /dev/null @@ -1,7 +0,0 @@ - - Require all denied - - - Order deny,allow - Deny from all - diff --git a/maven-plugin-rpm/src/test/resources/files/app/AppCache.php b/maven-plugin-rpm/src/test/resources/files/app/AppCache.php deleted file mode 100644 index ddb51db..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/AppCache.php +++ /dev/null @@ -1,9 +0,0 @@ -getEnvironment(), array('dev', 'test'))) { - $bundles[] = new Acme\DemoBundle\AcmeDemoBundle(); - $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle(); - $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle(); - $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle(); - } - - return $bundles; - } - - public function registerContainerConfiguration(LoaderInterface $loader) - { - $loader->load(__DIR__.'/config/config_'.$this->getEnvironment().'.yml'); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/app/Resources/views/base.html.twig b/maven-plugin-rpm/src/test/resources/files/app/Resources/views/base.html.twig deleted file mode 100644 index bafd28d..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/Resources/views/base.html.twig +++ /dev/null @@ -1,13 +0,0 @@ - - - - - {% block title %}Welcome!{% endblock %} - {% block stylesheets %}{% endblock %} - - - - {% block body %}{% endblock %} - {% block javascripts %}{% endblock %} - - diff --git a/maven-plugin-rpm/src/test/resources/files/app/SymfonyRequirements.php b/maven-plugin-rpm/src/test/resources/files/app/SymfonyRequirements.php deleted file mode 100644 index 56bd35d..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/SymfonyRequirements.php +++ /dev/null @@ -1,707 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -/* - * Users of PHP 5.2 should be able to run the requirements checks. - * This is why the file and all classes must be compatible with PHP 5.2+ - * (e.g. not using namespaces and closures). - * - * ************** CAUTION ************** - * - * DO NOT EDIT THIS FILE as it will be overridden by Composer as part of - * the installation/update process. The original file resides in the - * SensioDistributionBundle. - * - * ************** CAUTION ************** - */ - -/** - * Represents a single PHP requirement, e.g. an installed extension. - * It can be a mandatory requirement or an optional recommendation. - * There is a special subclass, named PhpIniRequirement, to check a php.ini configuration. - * - * @author Tobias Schultze - */ -class Requirement -{ - private $fulfilled; - private $testMessage; - private $helpText; - private $helpHtml; - private $optional; - - /** - * Constructor that initializes the requirement. - * - * @param bool $fulfilled Whether the requirement is fulfilled - * @param string $testMessage The message for testing the requirement - * @param string $helpHtml The help text formatted in HTML for resolving the problem - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - * @param bool $optional Whether this is only an optional recommendation not a mandatory requirement - */ - public function __construct($fulfilled, $testMessage, $helpHtml, $helpText = null, $optional = false) - { - $this->fulfilled = (bool) $fulfilled; - $this->testMessage = (string) $testMessage; - $this->helpHtml = (string) $helpHtml; - $this->helpText = null === $helpText ? strip_tags($this->helpHtml) : (string) $helpText; - $this->optional = (bool) $optional; - } - - /** - * Returns whether the requirement is fulfilled. - * - * @return bool true if fulfilled, otherwise false - */ - public function isFulfilled() - { - return $this->fulfilled; - } - - /** - * Returns the message for testing the requirement. - * - * @return string The test message - */ - public function getTestMessage() - { - return $this->testMessage; - } - - /** - * Returns the help text for resolving the problem - * - * @return string The help text - */ - public function getHelpText() - { - return $this->helpText; - } - - /** - * Returns the help text formatted in HTML. - * - * @return string The HTML help - */ - public function getHelpHtml() - { - return $this->helpHtml; - } - - /** - * Returns whether this is only an optional recommendation and not a mandatory requirement. - * - * @return bool true if optional, false if mandatory - */ - public function isOptional() - { - return $this->optional; - } -} - -/** - * Represents a PHP requirement in form of a php.ini configuration. - * - * @author Tobias Schultze - */ -class PhpIniRequirement extends Requirement -{ - /** - * Constructor that initializes the requirement. - * - * @param string $cfgName The configuration name used for ini_get() - * @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false, - or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement - * @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false. - This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin. - Example: You require a config to be true but PHP later removes this config and defaults it to true internally. - * @param string|null $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived) - * @param string|null $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived) - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - * @param bool $optional Whether this is only an optional recommendation not a mandatory requirement - */ - public function __construct($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null, $optional = false) - { - $cfgValue = ini_get($cfgName); - - if (is_callable($evaluation)) { - if (null === $testMessage || null === $helpHtml) { - throw new InvalidArgumentException('You must provide the parameters testMessage and helpHtml for a callback evaluation.'); - } - - $fulfilled = call_user_func($evaluation, $cfgValue); - } else { - if (null === $testMessage) { - $testMessage = sprintf('%s %s be %s in php.ini', - $cfgName, - $optional ? 'should' : 'must', - $evaluation ? 'enabled' : 'disabled' - ); - } - - if (null === $helpHtml) { - $helpHtml = sprintf('Set %s to %s in php.ini*.', - $cfgName, - $evaluation ? 'on' : 'off' - ); - } - - $fulfilled = $evaluation == $cfgValue; - } - - parent::__construct($fulfilled || ($approveCfgAbsence && false === $cfgValue), $testMessage, $helpHtml, $helpText, $optional); - } -} - -/** - * A RequirementCollection represents a set of Requirement instances. - * - * @author Tobias Schultze - */ -class RequirementCollection implements IteratorAggregate -{ - private $requirements = array(); - - /** - * Gets the current RequirementCollection as an Iterator. - * - * @return Traversable A Traversable interface - */ - public function getIterator() - { - return new ArrayIterator($this->requirements); - } - - /** - * Adds a Requirement. - * - * @param Requirement $requirement A Requirement instance - */ - public function add(Requirement $requirement) - { - $this->requirements[] = $requirement; - } - - /** - * Adds a mandatory requirement. - * - * @param bool $fulfilled Whether the requirement is fulfilled - * @param string $testMessage The message for testing the requirement - * @param string $helpHtml The help text formatted in HTML for resolving the problem - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addRequirement($fulfilled, $testMessage, $helpHtml, $helpText = null) - { - $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, false)); - } - - /** - * Adds an optional recommendation. - * - * @param bool $fulfilled Whether the recommendation is fulfilled - * @param string $testMessage The message for testing the recommendation - * @param string $helpHtml The help text formatted in HTML for resolving the problem - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addRecommendation($fulfilled, $testMessage, $helpHtml, $helpText = null) - { - $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, true)); - } - - /** - * Adds a mandatory requirement in form of a php.ini configuration. - * - * @param string $cfgName The configuration name used for ini_get() - * @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false, - or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement - * @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false. - This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin. - Example: You require a config to be true but PHP later removes this config and defaults it to true internally. - * @param string $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived) - * @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived) - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addPhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null) - { - $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, false)); - } - - /** - * Adds an optional recommendation in form of a php.ini configuration. - * - * @param string $cfgName The configuration name used for ini_get() - * @param bool|callback $evaluation Either a boolean indicating whether the configuration should evaluate to true or false, - or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement - * @param bool $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false. - This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin. - Example: You require a config to be true but PHP later removes this config and defaults it to true internally. - * @param string $testMessage The message for testing the requirement (when null and $evaluation is a boolean a default message is derived) - * @param string $helpHtml The help text formatted in HTML for resolving the problem (when null and $evaluation is a boolean a default help is derived) - * @param string|null $helpText The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags) - */ - public function addPhpIniRecommendation($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null) - { - $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, true)); - } - - /** - * Adds a requirement collection to the current set of requirements. - * - * @param RequirementCollection $collection A RequirementCollection instance - */ - public function addCollection(RequirementCollection $collection) - { - $this->requirements = array_merge($this->requirements, $collection->all()); - } - - /** - * Returns both requirements and recommendations. - * - * @return array Array of Requirement instances - */ - public function all() - { - return $this->requirements; - } - - /** - * Returns all mandatory requirements. - * - * @return array Array of Requirement instances - */ - public function getRequirements() - { - $array = array(); - foreach ($this->requirements as $req) { - if (!$req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns the mandatory requirements that were not met. - * - * @return array Array of Requirement instances - */ - public function getFailedRequirements() - { - $array = array(); - foreach ($this->requirements as $req) { - if (!$req->isFulfilled() && !$req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns all optional recommendations. - * - * @return array Array of Requirement instances - */ - public function getRecommendations() - { - $array = array(); - foreach ($this->requirements as $req) { - if ($req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns the recommendations that were not met. - * - * @return array Array of Requirement instances - */ - public function getFailedRecommendations() - { - $array = array(); - foreach ($this->requirements as $req) { - if (!$req->isFulfilled() && $req->isOptional()) { - $array[] = $req; - } - } - - return $array; - } - - /** - * Returns whether a php.ini configuration is not correct. - * - * @return bool php.ini configuration problem? - */ - public function hasPhpIniConfigIssue() - { - foreach ($this->requirements as $req) { - if (!$req->isFulfilled() && $req instanceof PhpIniRequirement) { - return true; - } - } - - return false; - } - - /** - * Returns the PHP configuration file (php.ini) path. - * - * @return string|false php.ini file path - */ - public function getPhpIniConfigPath() - { - return get_cfg_var('cfg_file_path'); - } -} - -/** - * This class specifies all requirements and optional recommendations that - * are necessary to run the Symfony Standard Edition. - * - * @author Tobias Schultze - * @author Fabien Potencier - */ -class SymfonyRequirements extends RequirementCollection -{ - const REQUIRED_PHP_VERSION = '5.3.3'; - - /** - * Constructor that initializes the requirements. - */ - public function __construct() - { - /* mandatory requirements follow */ - - $installedPhpVersion = phpversion(); - - $this->addRequirement( - version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>='), - sprintf('PHP version must be at least %s (%s installed)', self::REQUIRED_PHP_VERSION, $installedPhpVersion), - sprintf('You are running PHP version "%s", but Symfony needs at least PHP "%s" to run. - Before using Symfony, upgrade your PHP installation, preferably to the latest version.', - $installedPhpVersion, self::REQUIRED_PHP_VERSION), - sprintf('Install PHP %s or newer (installed version is %s)', self::REQUIRED_PHP_VERSION, $installedPhpVersion) - ); - - $this->addRequirement( - version_compare($installedPhpVersion, '5.3.16', '!='), - 'PHP version must not be 5.3.16 as Symfony won\'t work properly with it', - 'Install PHP 5.3.17 or newer (or downgrade to an earlier PHP version)' - ); - - $this->addRequirement( - is_dir(__DIR__.'/../vendor/composer'), - 'Vendor libraries must be installed', - 'Vendor libraries are missing. Install composer following instructions from http://getcomposer.org/. '. - 'Then run "php composer.phar install" to install them.' - ); - - $cacheDir = is_dir(__DIR__.'/../var/cache') ? __DIR__.'/../var/cache' : __DIR__.'/cache'; - - $this->addRequirement( - is_writable($cacheDir), - 'app/cache/ or var/cache/ directory must be writable', - 'Change the permissions of either "app/cache/" or "var/cache/" directory so that the web server can write into it.' - ); - - $logsDir = is_dir(__DIR__.'/../var/logs') ? __DIR__.'/../var/logs' : __DIR__.'/logs'; - - $this->addRequirement( - is_writable($logsDir), - 'app/logs/ or var/logs/ directory must be writable', - 'Change the permissions of either "app/logs/" or "var/logs/" directory so that the web server can write into it.' - ); - - $this->addPhpIniRequirement( - 'date.timezone', true, false, - 'date.timezone setting must be set', - 'Set the "date.timezone" setting in php.ini* (like Europe/Paris).' - ); - - if (version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>=')) { - $timezones = array(); - foreach (DateTimeZone::listAbbreviations() as $abbreviations) { - foreach ($abbreviations as $abbreviation) { - $timezones[$abbreviation['timezone_id']] = true; - } - } - - $this->addRequirement( - isset($timezones[date_default_timezone_get()]), - sprintf('Configured default timezone "%s" must be supported by your installation of PHP', date_default_timezone_get()), - 'Your default timezone is not supported by PHP. Check for typos in your php.ini file and have a look at the list of deprecated timezones at http://php.net/manual/en/timezones.others.php.' - ); - } - - $this->addRequirement( - function_exists('json_encode'), - 'json_encode() must be available', - 'Install and enable the JSON extension.' - ); - - $this->addRequirement( - function_exists('session_start'), - 'session_start() must be available', - 'Install and enable the session extension.' - ); - - $this->addRequirement( - function_exists('ctype_alpha'), - 'ctype_alpha() must be available', - 'Install and enable the ctype extension.' - ); - - $this->addRequirement( - function_exists('token_get_all'), - 'token_get_all() must be available', - 'Install and enable the Tokenizer extension.' - ); - - $this->addRequirement( - function_exists('simplexml_import_dom'), - 'simplexml_import_dom() must be available', - 'Install and enable the SimpleXML extension.' - ); - - if (function_exists('apc_store') && ini_get('apc.enabled')) { - if (version_compare($installedPhpVersion, '5.4.0', '>=')) { - $this->addRequirement( - version_compare(phpversion('apc'), '3.1.13', '>='), - 'APC version must be at least 3.1.13 when using PHP 5.4', - 'Upgrade your APC extension (3.1.13+).' - ); - } else { - $this->addRequirement( - version_compare(phpversion('apc'), '3.0.17', '>='), - 'APC version must be at least 3.0.17', - 'Upgrade your APC extension (3.0.17+).' - ); - } - } - - $this->addPhpIniRequirement('detect_unicode', false); - - if (extension_loaded('suhosin')) { - $this->addPhpIniRequirement( - 'suhosin.executor.include.whitelist', - create_function('$cfgValue', 'return false !== stripos($cfgValue, "phar");'), - false, - 'suhosin.executor.include.whitelist must be configured correctly in php.ini', - 'Add "phar" to suhosin.executor.include.whitelist in php.ini*.' - ); - } - - if (extension_loaded('xdebug')) { - $this->addPhpIniRequirement( - 'xdebug.show_exception_trace', false, true - ); - - $this->addPhpIniRequirement( - 'xdebug.scream', false, true - ); - - $this->addPhpIniRecommendation( - 'xdebug.max_nesting_level', - create_function('$cfgValue', 'return $cfgValue > 100;'), - true, - 'xdebug.max_nesting_level should be above 100 in php.ini', - 'Set "xdebug.max_nesting_level" to e.g. "250" in php.ini* to stop Xdebug\'s infinite recursion protection erroneously throwing a fatal error in your project.' - ); - } - - $pcreVersion = defined('PCRE_VERSION') ? (float) PCRE_VERSION : null; - - $this->addRequirement( - null !== $pcreVersion, - 'PCRE extension must be available', - 'Install the PCRE extension (version 8.0+).' - ); - - /* optional recommendations follow */ - - $this->addRecommendation( - file_get_contents(__FILE__) === file_get_contents(__DIR__.'/../vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/skeleton/app/SymfonyRequirements.php'), - 'Requirements file should be up-to-date', - 'Your requirements file is outdated. Run composer install and re-check your configuration.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.3.4', '>='), - 'You should use at least PHP 5.3.4 due to PHP bug #52083 in earlier versions', - 'Your project might malfunction randomly due to PHP bug #52083 ("Notice: Trying to get property of non-object"). Install PHP 5.3.4 or newer.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.3.8', '>='), - 'When using annotations you should have at least PHP 5.3.8 due to PHP bug #55156', - 'Install PHP 5.3.8 or newer if your project uses annotations.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.4.0', '!='), - 'You should not use PHP 5.4.0 due to the PHP bug #61453', - 'Your project might not work properly due to the PHP bug #61453 ("Cannot dump definitions which have method calls"). Install PHP 5.4.1 or newer.' - ); - - $this->addRecommendation( - version_compare($installedPhpVersion, '5.4.11', '>='), - 'When using the logout handler from the Symfony Security Component, you should have at least PHP 5.4.11 due to PHP bug #63379 (as a workaround, you can also set invalidate_session to false in the security logout handler configuration)', - 'Install PHP 5.4.11 or newer if your project uses the logout handler from the Symfony Security Component.' - ); - - $this->addRecommendation( - (version_compare($installedPhpVersion, '5.3.18', '>=') && version_compare($installedPhpVersion, '5.4.0', '<')) - || - version_compare($installedPhpVersion, '5.4.8', '>='), - 'You should use PHP 5.3.18+ or PHP 5.4.8+ to always get nice error messages for fatal errors in the development environment due to PHP bug #61767/#60909', - 'Install PHP 5.3.18+ or PHP 5.4.8+ if you want nice error messages for all fatal errors in the development environment.' - ); - - if (null !== $pcreVersion) { - $this->addRecommendation( - $pcreVersion >= 8.0, - sprintf('PCRE extension should be at least version 8.0 (%s installed)', $pcreVersion), - 'PCRE 8.0+ is preconfigured in PHP since 5.3.2 but you are using an outdated version of it. Symfony probably works anyway but it is recommended to upgrade your PCRE extension.' - ); - } - - $this->addRecommendation( - class_exists('DomDocument'), - 'PHP-XML module should be installed', - 'Install and enable the PHP-XML module.' - ); - - $this->addRecommendation( - function_exists('mb_strlen'), - 'mb_strlen() should be available', - 'Install and enable the mbstring extension.' - ); - - $this->addRecommendation( - function_exists('iconv'), - 'iconv() should be available', - 'Install and enable the iconv extension.' - ); - - $this->addRecommendation( - function_exists('utf8_decode'), - 'utf8_decode() should be available', - 'Install and enable the XML extension.' - ); - - $this->addRecommendation( - function_exists('filter_var'), - 'filter_var() should be available', - 'Install and enable the filter extension.' - ); - - if (!defined('PHP_WINDOWS_VERSION_BUILD')) { - $this->addRecommendation( - function_exists('posix_isatty'), - 'posix_isatty() should be available', - 'Install and enable the php_posix extension (used to colorize the CLI output).' - ); - } - - $this->addRecommendation( - class_exists('Locale'), - 'intl extension should be available', - 'Install and enable the intl extension (used for validators).' - ); - - if (class_exists('Collator')) { - $this->addRecommendation( - null !== new Collator('fr_FR'), - 'intl extension should be correctly configured', - 'The intl extension does not behave properly. This problem is typical on PHP 5.3.X x64 WIN builds.' - ); - } - - if (class_exists('Locale')) { - if (defined('INTL_ICU_VERSION')) { - $version = INTL_ICU_VERSION; - } else { - $reflector = new ReflectionExtension('intl'); - - ob_start(); - $reflector->info(); - $output = strip_tags(ob_get_clean()); - - preg_match('/^ICU version +(?:=> )?(.*)$/m', $output, $matches); - $version = $matches[1]; - } - - $this->addRecommendation( - version_compare($version, '4.0', '>='), - 'intl ICU version should be at least 4+', - 'Upgrade your intl extension with a newer ICU version (4+).' - ); - } - - $accelerator = - (extension_loaded('eaccelerator') && ini_get('eaccelerator.enable')) - || - (extension_loaded('apc') && ini_get('apc.enabled')) - || - (extension_loaded('Zend Optimizer+') && ini_get('zend_optimizerplus.enable')) - || - (extension_loaded('Zend OPcache') && ini_get('opcache.enable')) - || - (extension_loaded('xcache') && ini_get('xcache.cacher')) - || - (extension_loaded('wincache') && ini_get('wincache.ocenabled')) - ; - - $this->addRecommendation( - $accelerator, - 'a PHP accelerator should be installed', - 'Install and/or enable a PHP accelerator (highly recommended).' - ); - - if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { - $this->addPhpIniRecommendation( - 'realpath_cache_size', - create_function('$cfgValue', 'return (int) $cfgValue > 1000;'), - false, - 'realpath_cache_size should be above 1024 in php.ini', - 'Set "realpath_cache_size" to e.g. "1024" in php.ini* to improve performance on windows.' - ); - } - - $this->addPhpIniRecommendation('short_open_tag', false); - - $this->addPhpIniRecommendation('magic_quotes_gpc', false, true); - - $this->addPhpIniRecommendation('register_globals', false, true); - - $this->addPhpIniRecommendation('session.auto_start', false); - - $this->addRecommendation( - class_exists('PDO'), - 'PDO should be installed', - 'Install PDO (mandatory for Doctrine).' - ); - - if (class_exists('PDO')) { - $drivers = PDO::getAvailableDrivers(); - $this->addRecommendation( - count($drivers) > 0, - sprintf('PDO should have some drivers installed (currently available: %s)', count($drivers) ? implode(', ', $drivers) : 'none'), - 'Install PDO drivers (mandatory for Doctrine).' - ); - } - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/Composer.php b/maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/Composer.php deleted file mode 100644 index f1c85f0..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/Composer.php +++ /dev/null @@ -1,22 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace SymfonyStandard; - -use Composer\Script\CommandEvent; - -class Composer -{ - public static function hookRootPackageInstall(CommandEvent $event) - { - $event->getComposer()->getEventDispatcher()->addSubscriber(new RootPackageInstallSubscriber()); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/RootPackageInstallSubscriber.php b/maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/RootPackageInstallSubscriber.php deleted file mode 100644 index 89cc289..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/SymfonyStandard/RootPackageInstallSubscriber.php +++ /dev/null @@ -1,40 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace SymfonyStandard; - -use Composer\EventDispatcher\EventSubscriberInterface; -use Composer\Script\ScriptEvents; -use Composer\Script\CommandEvent; -use Sensio\Bundle\DistributionBundle\Composer\ScriptHandler; - -class RootPackageInstallSubscriber implements EventSubscriberInterface -{ - public static function installAcmeDemoBundle(CommandEvent $event) - { - ScriptHandler::installAcmeDemoBundle($event); - } - - public static function setupNewDirectoryStructure(CommandEvent $event) - { - ScriptHandler::defineDirectoryStructure($event); - } - - public static function getSubscribedEvents() - { - return array( - ScriptEvents::POST_INSTALL_CMD => array( - array('setupNewDirectoryStructure', 512), - array('installAcmeDemoBundle', 0) - ), - ); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/app/autoload.php b/maven-plugin-rpm/src/test/resources/files/app/autoload.php deleted file mode 100644 index 70526bb..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/autoload.php +++ /dev/null @@ -1,13 +0,0 @@ -getPhpIniConfigPath(); - -echo_title('Symfony2 Requirements Checker'); - -echo '> PHP is using the following php.ini file:'.PHP_EOL; -if ($iniPath) { - echo_style('green', ' '.$iniPath); -} else { - echo_style('warning', ' WARNING: No configuration file (php.ini) used by PHP!'); -} - -echo PHP_EOL.PHP_EOL; - -echo '> Checking Symfony requirements:'.PHP_EOL.' '; - -$messages = array(); -foreach ($symfonyRequirements->getRequirements() as $req) { - /** @var $req Requirement */ - if ($helpText = get_error_message($req, $lineSize)) { - echo_style('red', 'E'); - $messages['error'][] = $helpText; - } else { - echo_style('green', '.'); - } -} - -$checkPassed = empty($messages['error']); - -foreach ($symfonyRequirements->getRecommendations() as $req) { - if ($helpText = get_error_message($req, $lineSize)) { - echo_style('yellow', 'W'); - $messages['warning'][] = $helpText; - } else { - echo_style('green', '.'); - } -} - -if ($checkPassed) { - echo_block('success', 'OK', 'Your system is ready to run Symfony2 projects', true); -} else { - echo_block('error', 'ERROR', 'Your system is not ready to run Symfony2 projects', true); - - echo_title('Fix the following mandatory requirements', 'red'); - - foreach ($messages['error'] as $helpText) { - echo ' * '.$helpText.PHP_EOL; - } -} - -if (!empty($messages['warning'])) { - echo_title('Optional recommendations to improve your setup', 'yellow'); - - foreach ($messages['warning'] as $helpText) { - echo ' * '.$helpText.PHP_EOL; - } -} - -echo PHP_EOL; -echo_style('title', 'Note'); -echo ' The command console could use a different php.ini file'.PHP_EOL; -echo_style('title', '~~~~'); -echo ' than the one used with your web server. To be on the'.PHP_EOL; -echo ' safe side, please check the requirements from your web'.PHP_EOL; -echo ' server using the '; -echo_style('yellow', 'web/config.php'); -echo ' script.'.PHP_EOL; -echo PHP_EOL; - -exit($checkPassed ? 0 : 1); - -function get_error_message(Requirement $requirement, $lineSize) -{ - if ($requirement->isFulfilled()) { - return; - } - - $errorMessage = wordwrap($requirement->getTestMessage(), $lineSize - 3, PHP_EOL.' ').PHP_EOL; - $errorMessage .= ' > '.wordwrap($requirement->getHelpText(), $lineSize - 5, PHP_EOL.' > ').PHP_EOL; - - return $errorMessage; -} - -function echo_title($title, $style = null) -{ - $style = $style ?: 'title'; - - echo PHP_EOL; - echo_style($style, $title.PHP_EOL); - echo_style($style, str_repeat('~', strlen($title)).PHP_EOL); - echo PHP_EOL; -} - -function echo_style($style, $message) -{ - // ANSI color codes - $styles = array( - 'reset' => "\033[0m", - 'red' => "\033[31m", - 'green' => "\033[32m", - 'yellow' => "\033[33m", - 'error' => "\033[37;41m", - 'success' => "\033[37;42m", - 'title' => "\033[34m", - ); - $supports = has_color_support(); - - echo ($supports ? $styles[$style] : '').$message.($supports ? $styles['reset'] : ''); -} - -function echo_block($style, $title, $message) -{ - $message = ' '.trim($message).' '; - $width = strlen($message); - - echo PHP_EOL.PHP_EOL; - - echo_style($style, str_repeat(' ', $width).PHP_EOL); - echo_style($style, str_pad(' ['.$title.']', $width, ' ', STR_PAD_RIGHT).PHP_EOL); - echo_style($style, str_pad($message, $width, ' ', STR_PAD_RIGHT).PHP_EOL); - echo_style($style, str_repeat(' ', $width).PHP_EOL); -} - -function has_color_support() -{ - static $support; - - if (null === $support) { - if (DIRECTORY_SEPARATOR == '\\') { - $support = false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI'); - } else { - $support = function_exists('posix_isatty') && @posix_isatty(STDOUT); - } - } - - return $support; -} diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/config.yml b/maven-plugin-rpm/src/test/resources/files/app/config/config.yml deleted file mode 100644 index 74650dd..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/config.yml +++ /dev/null @@ -1,72 +0,0 @@ -imports: - - { resource: parameters.yml } - - { resource: security.yml } - -framework: - #esi: ~ - #translator: { fallback: "%locale%" } - secret: "%secret%" - router: - resource: "%kernel.root_dir%/config/routing.yml" - strict_requirements: ~ - form: ~ - csrf_protection: ~ - validation: { enable_annotations: true } - templating: - engines: ['twig'] - #assets_version: SomeVersionScheme - default_locale: "%locale%" - trusted_hosts: ~ - trusted_proxies: ~ - session: - # handler_id set to null will use default session handler from php.ini - handler_id: ~ - fragments: ~ - http_method_override: true - -# Twig Configuration -twig: - debug: "%kernel.debug%" - strict_variables: "%kernel.debug%" - -# Assetic Configuration -assetic: - debug: "%kernel.debug%" - use_controller: false - bundles: [ ] - #java: /usr/bin/java - filters: - cssrewrite: ~ - #closure: - # jar: "%kernel.root_dir%/Resources/java/compiler.jar" - #yui_css: - # jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar" - -# Doctrine Configuration -doctrine: - dbal: - driver: "%database_driver%" - host: "%database_host%" - port: "%database_port%" - dbname: "%database_name%" - user: "%database_user%" - password: "%database_password%" - charset: UTF8 - # if using pdo_sqlite as your database driver: - # 1. add the path in parameters.yml - # e.g. database_path: "%kernel.root_dir%/data/data.db3" - # 2. Uncomment database_path in parameters.yml.dist - # 3. Uncomment next line: - # path: "%database_path%" - - orm: - auto_generate_proxy_classes: "%kernel.debug%" - auto_mapping: true - -# Swiftmailer Configuration -swiftmailer: - transport: "%mailer_transport%" - host: "%mailer_host%" - username: "%mailer_user%" - password: "%mailer_password%" - spool: { type: memory } diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/config_dev.yml b/maven-plugin-rpm/src/test/resources/files/app/config/config_dev.yml deleted file mode 100644 index 52b7372..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/config_dev.yml +++ /dev/null @@ -1,36 +0,0 @@ -imports: - - { resource: config.yml } - -framework: - router: - resource: "%kernel.root_dir%/config/routing_dev.yml" - strict_requirements: true - profiler: { only_exceptions: false } - -web_profiler: - toolbar: "%debug_toolbar%" - intercept_redirects: "%debug_redirects%" - -monolog: - handlers: - main: - type: stream - path: "%kernel.logs_dir%/%kernel.environment%.log" - level: debug - console: - type: console - bubble: false - # uncomment to get logging in your browser - # you may have to allow bigger header sizes in your Web server configuration - #firephp: - # type: firephp - # level: info - #chromephp: - # type: chromephp - # level: info - -assetic: - use_controller: "%use_assetic_controller%" - -#swiftmailer: -# delivery_address: me@example.com diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/config_prod.yml b/maven-plugin-rpm/src/test/resources/files/app/config/config_prod.yml deleted file mode 100644 index 342837a..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/config_prod.yml +++ /dev/null @@ -1,25 +0,0 @@ -imports: - - { resource: config.yml } - -#framework: -# validation: -# cache: apc - -#doctrine: -# orm: -# metadata_cache_driver: apc -# result_cache_driver: apc -# query_cache_driver: apc - -monolog: - handlers: - main: - type: fingers_crossed - action_level: error - handler: nested - nested: - type: stream - path: "%kernel.logs_dir%/%kernel.environment%.log" - level: debug - console: - type: console diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/config_test.yml b/maven-plugin-rpm/src/test/resources/files/app/config/config_test.yml deleted file mode 100644 index 2f6d925..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/config_test.yml +++ /dev/null @@ -1,16 +0,0 @@ -imports: - - { resource: config_dev.yml } - -framework: - test: ~ - session: - storage_id: session.storage.mock_file - profiler: - collect: false - -web_profiler: - toolbar: false - intercept_redirects: false - -swiftmailer: - disable_delivery: true diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/parameters.yml.dist b/maven-plugin-rpm/src/test/resources/files/app/config/parameters.yml.dist deleted file mode 100644 index 122c22f..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/parameters.yml.dist +++ /dev/null @@ -1,24 +0,0 @@ -# This file is a "template" of what your parameters.yml file should look like -parameters: - database_driver: pdo_mysql - database_host: 127.0.0.1 - database_port: ~ - database_name: symfony - database_user: root - database_password: ~ - # You should uncomment this if you want use pdo_sqlite - # database_path: "%kernel.root_dir%/data.db3" - - mailer_transport: smtp - mailer_host: 127.0.0.1 - mailer_user: ~ - mailer_password: ~ - - locale: en - - # A secret key that's used to generate certain security-related tokens - secret: ThisTokenIsNotSoSecretChangeIt - - debug_toolbar: true - debug_redirects: false - use_assetic_controller: true diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/routing.yml b/maven-plugin-rpm/src/test/resources/files/app/config/routing.yml deleted file mode 100644 index e69de29..0000000 diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/routing_dev.yml b/maven-plugin-rpm/src/test/resources/files/app/config/routing_dev.yml deleted file mode 100644 index 61b7263..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/routing_dev.yml +++ /dev/null @@ -1,18 +0,0 @@ -_wdt: - resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml" - prefix: /_wdt - -_profiler: - resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml" - prefix: /_profiler - -_configurator: - resource: "@SensioDistributionBundle/Resources/config/routing/webconfigurator.xml" - prefix: /_configurator - -_main: - resource: routing.yml - -# AcmeDemoBundle routes (to be removed) -_acme_demo: - resource: "@AcmeDemoBundle/Resources/config/routing.yml" \ No newline at end of file diff --git a/maven-plugin-rpm/src/test/resources/files/app/config/security.yml b/maven-plugin-rpm/src/test/resources/files/app/config/security.yml deleted file mode 100644 index ff5cede..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/config/security.yml +++ /dev/null @@ -1,52 +0,0 @@ -# you can read more about security in the related section of the documentation -# http://symfony.com/doc/current/book/security.html -security: - # http://symfony.com/doc/current/book/security.html#encoding-the-user-s-password - encoders: - Symfony\Component\Security\Core\User\User: plaintext - - # http://symfony.com/doc/current/book/security.html#hierarchical-roles - role_hierarchy: - ROLE_ADMIN: ROLE_USER - ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] - - # http://symfony.com/doc/current/book/security.html#where-do-users-come-from-user-providers - providers: - in_memory: - memory: - users: - user: { password: userpass, roles: [ 'ROLE_USER' ] } - admin: { password: adminpass, roles: [ 'ROLE_ADMIN' ] } - - # the main part of the security, where you can set up firewalls - # for specific sections of your app - firewalls: - # disables authentication for assets and the profiler, adapt it according to your needs - dev: - pattern: ^/(_(profiler|wdt)|css|images|js)/ - security: false - # the login page has to be accessible for everybody - demo_login: - pattern: ^/demo/secured/login$ - security: false - - # secures part of the application - demo_secured_area: - pattern: ^/demo/secured/ - # it's important to notice that in this case _demo_security_check and _demo_login - # are route names and that they are specified in the AcmeDemoBundle - form_login: - check_path: _demo_security_check - login_path: _demo_login - logout: - path: _demo_logout - target: _demo - #anonymous: ~ - #http_basic: - # realm: "Secured Demo Area" - - # with these settings you can restrict or allow access for different parts - # of your application based on roles, ip, host or methods - # http://symfony.com/doc/current/book/security.html#security-book-access-control-matching-options - access_control: - #- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https } \ No newline at end of file diff --git a/maven-plugin-rpm/src/test/resources/files/app/console b/maven-plugin-rpm/src/test/resources/files/app/console deleted file mode 100755 index fa6a36e..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/console +++ /dev/null @@ -1,27 +0,0 @@ -#!/usr/bin/env php -getParameterOption(array('--env', '-e'), getenv('SYMFONY_ENV') ?: 'dev'); -$debug = getenv('SYMFONY_DEBUG') !== '0' && !$input->hasParameterOption(array('--no-debug', '')) && $env !== 'prod'; - -if ($debug) { - Debug::enable(); -} - -$kernel = new AppKernel($env, $debug); -$application = new Application($kernel); -$application->run($input); diff --git a/maven-plugin-rpm/src/test/resources/files/app/phpunit.xml.dist b/maven-plugin-rpm/src/test/resources/files/app/phpunit.xml.dist deleted file mode 100644 index 4a83156..0000000 --- a/maven-plugin-rpm/src/test/resources/files/app/phpunit.xml.dist +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - ../src/*/*Bundle/Tests - ../src/*/Bundle/*Bundle/Tests - - - - - - - - ../src - - ../src/*/*Bundle/Resources - ../src/*/*Bundle/Tests - ../src/*/Bundle/*Bundle/Resources - ../src/*/Bundle/*Bundle/Tests - - - - diff --git a/maven-plugin-rpm/src/test/resources/files/src/.htaccess b/maven-plugin-rpm/src/test/resources/files/src/.htaccess deleted file mode 100644 index fb1de45..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/.htaccess +++ /dev/null @@ -1,7 +0,0 @@ - - Require all denied - - - Order deny,allow - Deny from all - diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/AcmeDemoBundle.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/AcmeDemoBundle.php deleted file mode 100644 index 269fc1e..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/AcmeDemoBundle.php +++ /dev/null @@ -1,9 +0,0 @@ -getContainer(). - * - * @author Tobias Schultze - */ -class HelloWorldCommand extends Command -{ - /** - * {@inheritdoc} - */ - protected function configure() - { - $this - ->setName('acme:hello') - ->setDescription('Hello World example command') - ->addArgument('who', InputArgument::OPTIONAL, 'Who to greet.', 'World') - ->setHelp(<<%command.name% command greets somebody or everybody: - -php %command.full_name% - -The optional argument specifies who to greet: - -php %command.full_name% Fabien -EOF - ); - } - - /** - * {@inheritdoc} - */ - protected function execute(InputInterface $input, OutputInterface $output) - { - $output->writeln(sprintf('Hello %s!', $input->getArgument('who'))); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/DemoController.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/DemoController.php deleted file mode 100644 index a99de89..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/DemoController.php +++ /dev/null @@ -1,56 +0,0 @@ - $name); - } - - /** - * @Route("/contact", name="_demo_contact") - * @Template() - */ - public function contactAction(Request $request) - { - $form = $this->createForm(new ContactType()); - $form->handleRequest($request); - - if ($form->isValid()) { - $mailer = $this->get('mailer'); - - // .. setup a message and send it - // http://symfony.com/doc/current/cookbook/email.html - - $request->getSession()->getFlashBag()->set('notice', 'Message sent!'); - - return new RedirectResponse($this->generateUrl('_demo')); - } - - return array('form' => $form->createView()); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/SecuredController.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/SecuredController.php deleted file mode 100644 index d1499e3..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/SecuredController.php +++ /dev/null @@ -1,70 +0,0 @@ -attributes->has(SecurityContext::AUTHENTICATION_ERROR)) { - $error = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR); - } else { - $error = $request->getSession()->get(SecurityContext::AUTHENTICATION_ERROR); - } - - return array( - 'last_username' => $request->getSession()->get(SecurityContext::LAST_USERNAME), - 'error' => $error, - ); - } - - /** - * @Route("/login_check", name="_demo_security_check") - */ - public function securityCheckAction() - { - // The security layer will intercept this request - } - - /** - * @Route("/logout", name="_demo_logout") - */ - public function logoutAction() - { - // The security layer will intercept this request - } - - /** - * @Route("/hello", defaults={"name"="World"}), - * @Route("/hello/{name}", name="_demo_secured_hello") - * @Template() - */ - public function helloAction($name) - { - return array('name' => $name); - } - - /** - * @Route("/hello/admin/{name}", name="_demo_secured_hello_admin") - * @Security("is_granted('ROLE_ADMIN')") - * @Template() - */ - public function helloadminAction($name) - { - return array('name' => $name); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/WelcomeController.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/WelcomeController.php deleted file mode 100644 index 884f95b..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Controller/WelcomeController.php +++ /dev/null @@ -1,19 +0,0 @@ -render('AcmeDemoBundle:Welcome:index.html.twig'); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/DependencyInjection/AcmeDemoExtension.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/DependencyInjection/AcmeDemoExtension.php deleted file mode 100644 index 6dfcc82..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/DependencyInjection/AcmeDemoExtension.php +++ /dev/null @@ -1,22 +0,0 @@ -load('services.xml'); - } - - public function getAlias() - { - return 'acme_demo'; - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/EventListener/ControllerListener.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/EventListener/ControllerListener.php deleted file mode 100644 index aa117d7..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/EventListener/ControllerListener.php +++ /dev/null @@ -1,24 +0,0 @@ -extension = $extension; - } - - public function onKernelController(FilterControllerEvent $event) - { - if (HttpKernelInterface::MASTER_REQUEST === $event->getRequestType()) { - $this->extension->setController($event->getController()); - } - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Form/ContactType.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Form/ContactType.php deleted file mode 100644 index 2c76cdb..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Form/ContactType.php +++ /dev/null @@ -1,20 +0,0 @@ -add('email', 'email'); - $builder->add('message', 'textarea'); - } - - public function getName() - { - return 'contact'; - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/routing.yml b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/routing.yml deleted file mode 100644 index 06291a2..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/routing.yml +++ /dev/null @@ -1,12 +0,0 @@ -_welcome: - path: / - defaults: { _controller: AcmeDemoBundle:Welcome:index } - -_demo_secured: - resource: "@AcmeDemoBundle/Controller/SecuredController.php" - type: annotation - -_demo: - resource: "@AcmeDemoBundle/Controller/DemoController.php" - type: annotation - prefix: /demo diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/services.xml b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/services.xml deleted file mode 100644 index d6274ce..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/config/services.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/css/demo.css b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/css/demo.css deleted file mode 100644 index 4dd2f16..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/css/demo.css +++ /dev/null @@ -1,101 +0,0 @@ -body { - font-size: 14px; - font-family: "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; -} -h1.title { - font-size: 45px; - padding-bottom: 30px; -} -.sf-reset h2 { - font-weight: bold; - color: #FFFFFF; - /* Font is duplicated of body (sans-serif) */ - font-family: "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; - - margin-bottom: 10px; - background-color: #aacd4e; - padding: 2px 4px; - display: inline-block; - text-transform: uppercase; - -} -p { - line-height: 20px; - padding-bottom: 20px; -} -ul#demo-list a { - background: url(../images/blue-arrow.png) no-repeat right 6px; - padding-right: 10px; - margin-right: 30px; -} -#symfony-header { - position: relative; - padding: 30px 30px 20px 30px; -} -.sf-reset .symfony-blocks-welcome { - overflow: hidden; -} -.sf-reset .symfony-blocks-welcome > div { - background-color: whitesmoke; - float: left; - width: 240px; - margin-right: 14px; - text-align: center; - padding: 26px 20px; -} -.sf-reset .symfony-blocks-welcome > div.block-demo { - margin-right: 0; -} -.sf-reset .symfony-blocks-welcome .illustration { - padding-bottom: 20px; -} -.sf-reset .symfony-blocks-help { - overflow: hidden; -} -.sf-reset .symfony-blocks-help { - margin-top: 30px; - padding: 18px; - border: 1px solid #E6E6E6; -} -.sf-reset .symfony-blocks-help > div { - width: 254px; - float: left; -} -.flash-message { - padding: 10px; - margin: 5px; - margin-top: 15px; - background-color: #ffe; -} -.sf-reset .error { - color: red; -} -#login label, #contact_form label { - display: block; - float: left; - width: 90px; -} -.sf-reset ul#menu { - float: right; - margin-bottom: 20px; - padding-left: 0; -} -.sf-reset #menu li { - padding-left: 0; - margin-right: 10px; - display: inline; -} -.sf-reset a, -.sf-reset li a { - color: #08C; - text-decoration: none; -} -.sf-reset a:hover, -.sf-reset li a:hover { - color: #08C; - text-decoration: underline; -} -.sf-reset .symfony-content pre { - white-space: pre; - font-family: monospace; -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/blue-arrow.png b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/blue-arrow.png deleted file mode 100644 index fa82d4b4fff6414062efb2a02049cfeb9e8e7cb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^tU%1c!3HD^Kbl$tDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9Md6+I= zhqi>4PnzMOuO)K~*(RkoSoCn7)R^#~T4CSujwM;<0=t>E&QEnQ(&y3G(9U?$#xX^m ckwt=G)hqGzYlDe*q4@=v9Pj!eSesj znO9X=ad2|Jy}yf!jHIKbv9Yp#e1F*3*>P`jS5;V~q@}*Tzl({C|Ns9mE;9fB{{R30 z000000000000000A^8LW000^QEC2ui0JZ==06+!*peBxFX^z0-1i_MJ3+p_pEh_&5dM^QH^o`2q?YC;|Y#eo6?SBFL~IkO9*W zUWrg(6a+6t1e9~gkzoUD0u)q?cL8IkHxMNMW_YDz4U&xn4G;-%fMrJwrreB*aD?3_ z1wa){Fo|t|jsdNTB$!ozNI7K6ROJ$p6pPVgF9`4wMB>|mt0D|wjG70m21m-KH6S4q zhKOfKG;JyM!j7010!F!0IkQPpts|OdaKxZQty_Z;XW06P@mIDOfgM&{!i#`0fD`e3 zQEdyS&0Nj2C9?Kr8lnz-R4p>0a~KE_K`S#&yS5Dk42ZH}fWWNn-@r{EpxZBi&EUv6 z8aN0#2?2n~qoYCA9N}^4*n51eZlv`Vo}$7KN0+^P4l3M z2>3zos9Q+@lo%19fEJ&v_eMl=Ver}i6~3L26fm|Wb=^(lB>@IXO1OprcmzanA$V+L zb^~<*z@))9>6GxyTD2hYPk$N-mINXQ^p_PtcqCwBVHzYQp9trqhK*03$jI3zp=`EL z4gk;<4l+DyFhEu)P)UL+z8NDzFH^jr%?TK>h?fa6iXfN(BusNv6&G%ik!z~7xy6*t zIl-j}Y9eFPWF!!y%L|M_g5H-VU{nL2eF8edifzfKN)iT20F<12yZv3FsjK z;Rr5efTm$DL^*<=i7qz6og;{q#A5}anraE7fn!1!py{+pbtXdbOp509;L?wY*qD(5 z06@@Q5uSu`O>_G}VTmEZ{vb*JgE&xUL1w2rpe-Fev@4h-90G~<(Y|8JzQl6785e#5UFuM(io2~!?FPxpW2UiiX#KE~* z@e34008|A3Hij{FaHUIu9SUF;&k<9N3>-uiQxHZ4U%WA%01CV85UvN?MKf#F{QQ#6 zwS{a20W27sMHohcl(Pv9{JSJU??&s;yP0%mi5&wxi^V4(W-tK+3tD074XPv%P67Jn zgWlPu)oR5^7&M*1$rz+WHy1@*`e+rU;lOHbgVTm}65KMKgaFOHA#`1H_0h5o&rIGb zE)5zmMj3GkP)KY67-azeT>((?w-JLB@U8#{nAQ0qC1>EkRbD)Is|#A0lK2~y79sN} zNG@y24sdXt_r~;iTHpx_=E*BaSP{$|$EWviZgdX{vBSluA zfC7ZqxHo|4cW)@0O6rG$hWUwSS3w4Z5G8{2&1zKz6h<&!@COo>P*Ep(L223&B{pG- z2y^&^Ds~qJqs^mjH~7XN@K6{!CC`PjdZDVeRKRC^iZLxrq7p~2JUof2D@uqT9E_kv z39)c17fSdz2oVk(|*9gP26mT@rLI(4sh?6#MCjsXOoCcz2gl2{9QVN>M zDBh=%)a0N50dPS1QV22^6&KcVi9jlXAybu*3hZqF zu;Jn-Qqr8K6@)kfNWj!GMXb&_vW`!zqp1P`D-sM~lX-ZeEsNm?6HFs{LTHX2-e5P0 zkjo5$5s}2!XM@Adqk=r!%(|SQh-ZjzVV3BW)ka{=J|u_>4l{-2o)9YhVN4aQ+W{Xl zVi%ZY#c|acCDCl7u_MR{1AEbx1k!1WaqiPJ^IWEzLb9vsZ1bQIlEVaoGL-Z@6r#YP s-o}b>F^nP~2bk%~rANzE00$7X3b6#@NZAEF2Ha}_46x5i%M$_sJDrx#NB{r; diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/search.png b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/search.png deleted file mode 100644 index 3c88b6a4234ef5bb048bcecdc210c603c629339d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 737 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 EJ3feF)c^nh diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-demo.gif b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-demo.gif deleted file mode 100644 index 0623de54c9501be250cd0907bd09f6b452c53fe6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4053 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 H0RaFzT>Bsn diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-quick-tour.gif b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/public/images/welcome-quick-tour.gif deleted file mode 100644 index b9018b11dd21302f850984fe9b49e49828101a00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4770 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%0D3*BH}7=0?8k*0Vzrykq=6t~oIX@3Ybb_LZc-J4 zwg$N=q1>88;AoNU^#wW^zIjxX2j=5zB)0%{0VpH5B_cYF)9W!jR4bq^-g@+l9tGg~ zxCCem9vp!FsDY2m^EC(ZS1sm0W>Z#*X-Vd)3^s0?L>8$nFs{u%EK*X7q&=Od>xuIt z<>I9+h44rQi(QUaa0CMTLqc5YpX;AsqAWjo@d_n zuf6>|CSQsG*ro&El10oy{$|ooY zmEOc_ttc$V+%n zUq7kyi9=ztN&Ir+1+hFPg8qTY%3Q)F5jfn7!&^XF&Q1)x&Q1ZDCnCF=!W47DCENNH4#o+7}EL=wuI@Ghl?2N@x75it~Rwx zOb!!;;W5ZTLMmD!l`oRaP{>>ae$sXF0&xFjJB19(8}JD`F+3Xyo{v0L_&(2$c`8dn z#}M#=>`Afi$qouu{H~7$D1muaq1#W$=7G(l3yanS9W7H%u Pcp^k-X1orE1J?f^bf!^p diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/contact.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/contact.html.twig deleted file mode 100644 index e5b7523..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/contact.html.twig +++ /dev/null @@ -1,15 +0,0 @@ -{% extends "AcmeDemoBundle::layout.html.twig" %} - -{% block title "Symfony - Contact form" %} - -{% block content %} -
- {{ form_errors(form) }} - - {{ form_row(form.email) }} - {{ form_row(form.message) }} - - {{ form_rest(form) }} - -
-{% endblock %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/hello.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/hello.html.twig deleted file mode 100644 index 3997ff6..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/hello.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% extends "AcmeDemoBundle::layout.html.twig" %} - -{% block title "Hello " ~ name %} - -{% block content %} -

Hello {{ name }}!

-{% endblock %} - -{% set code = code(_self) %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/index.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/index.html.twig deleted file mode 100644 index 454a320..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Demo/index.html.twig +++ /dev/null @@ -1,14 +0,0 @@ -{% extends "AcmeDemoBundle::layout.html.twig" %} - -{% block title "Symfony - Demos" %} - -{% block content_header '' %} - -{% block content %} -

Available demos

- -{% endblock %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/hello.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/hello.html.twig deleted file mode 100644 index faf95cf..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/hello.html.twig +++ /dev/null @@ -1,11 +0,0 @@ -{% extends "AcmeDemoBundle:Secured:layout.html.twig" %} - -{% block title "Hello " ~ name %} - -{% block content %} -

Hello {{ name }}!

- - Hello resource secured for admin only. -{% endblock %} - -{% set code = code(_self) %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/helloadmin.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/helloadmin.html.twig deleted file mode 100644 index 4e3649f..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/helloadmin.html.twig +++ /dev/null @@ -1,9 +0,0 @@ -{% extends "AcmeDemoBundle:Secured:layout.html.twig" %} - -{% block title "Hello " ~ name %} - -{% block content %} -

Hello {{ name }} secured for Admins only!

-{% endblock %} - -{% set code = code(_self) %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/layout.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/layout.html.twig deleted file mode 100644 index aeea55c..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/layout.html.twig +++ /dev/null @@ -1,6 +0,0 @@ -{% extends "AcmeDemoBundle::layout.html.twig" %} - -{% block content_header_more %} - {{ parent() }} -
  • logged in as {{ app.user ? app.user.username : 'Anonymous' }} - Logout
  • -{% endblock %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/login.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/login.html.twig deleted file mode 100644 index 3e76d1d..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Secured/login.html.twig +++ /dev/null @@ -1,35 +0,0 @@ -{% extends 'AcmeDemoBundle::layout.html.twig' %} - -{% block content %} -

    Login

    - -

    - Choose between two default users: user/userpass (ROLE_USER) or admin/adminpass (ROLE_ADMIN) -

    - - {% if error %} -
    {{ error.message }}
    - {% endif %} - -
    -
    - - -
    - -
    - - -
    - - -
    -{% endblock %} - -{% set code = code(_self) %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Welcome/index.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Welcome/index.html.twig deleted file mode 100644 index ea3a729..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/Welcome/index.html.twig +++ /dev/null @@ -1,83 +0,0 @@ -{% extends 'AcmeDemoBundle::layout.html.twig' %} - -{% block title %}Symfony - Welcome{% endblock %} - -{% block content_header '' %} - -{% block content %} - {% set version = constant('Symfony\\Component\\HttpKernel\\Kernel::MAJOR_VERSION') ~ '.' ~ constant('Symfony\\Component\\HttpKernel\\Kernel::MINOR_VERSION')%} - -

    Welcome!

    - -

    Congratulations! You have successfully installed a new Symfony application.

    - -
    - - {% if app.environment == 'dev' %} - - {% endif %} - -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    -{% endblock %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/layout.html.twig b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/layout.html.twig deleted file mode 100644 index d7e97d5..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Resources/views/layout.html.twig +++ /dev/null @@ -1,37 +0,0 @@ -{% extends "TwigBundle::layout.html.twig" %} - -{% block head %} - - -{% endblock %} - -{% block title 'Demo Bundle' %} - -{% block body %} - {% for flashMessage in app.session.flashbag.get('notice') %} -
    - Notice: {{ flashMessage }} -
    - {% endfor %} - - {% block content_header %} - - -
    - {% endblock %} - -
    - {% block content %}{% endblock %} -
    - - {% if code is defined %} -

    Code behind this page

    -
    -
    {{ code|raw }}
    -
    - {% endif %} -{% endblock %} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Tests/Controller/DemoControllerTest.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Tests/Controller/DemoControllerTest.php deleted file mode 100644 index d217689..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Tests/Controller/DemoControllerTest.php +++ /dev/null @@ -1,45 +0,0 @@ -request('GET', '/demo/hello/Fabien'); - - $this->assertGreaterThan(0, $crawler->filter('html:contains("Hello Fabien")')->count()); - } - - public function testSecureSection() - { - $client = static::createClient(); - - // goes to the secure page - $crawler = $client->request('GET', '/demo/secured/hello/World'); - - // redirects to the login page - $crawler = $client->followRedirect(); - - // submits the login form - $form = $crawler->selectButton('Login')->form(array('_username' => 'admin', '_password' => 'adminpass')); - $client->submit($form); - - // redirect to the original page (but now authenticated) - $crawler = $client->followRedirect(); - - // check that the page is the right one - $this->assertCount(1, $crawler->filter('h1.title:contains("Hello World!")')); - - // click on the secure link - $link = $crawler->selectLink('Hello resource secured')->link(); - $crawler = $client->click($link); - - // check that the page is the right one - $this->assertCount(1, $crawler->filter('h1.title:contains("secured for Admins only!")')); - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Twig/Extension/DemoExtension.php b/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Twig/Extension/DemoExtension.php deleted file mode 100644 index e6ce94f..0000000 --- a/maven-plugin-rpm/src/test/resources/files/src/Acme/DemoBundle/Twig/Extension/DemoExtension.php +++ /dev/null @@ -1,81 +0,0 @@ -loader = $loader; - } - - public function setController($controller) - { - $this->controller = $controller; - } - - /** - * {@inheritdoc} - */ - public function getFunctions() - { - return array( - new \Twig_SimpleFunction('code', array($this, 'getCode'), array('is_safe' => array('html'))), - ); - } - - public function getCode($template) - { - // highlight_string highlights php code only if 'getControllerCode(), true); - $controller = str_replace('<?php    ', '    ', $controller); - - $template = htmlspecialchars($this->getTemplateCode($template), ENT_QUOTES, 'UTF-8'); - - // remove the code block - $template = str_replace('{% set code = code(_self) %}', '', $template); - - return <<Controller Code

    -
    $controller
    - -

    Template Code

    -
    $template
    -EOF; - } - - protected function getControllerCode() - { - $class = get_class($this->controller[0]); - if (class_exists('CG\Core\ClassUtils')) { - $class = ClassUtils::getUserClass($class); - } - - $r = new \ReflectionClass($class); - $m = $r->getMethod($this->controller[1]); - - $code = file($r->getFilename()); - - return ' '.$m->getDocComment()."\n".implode('', array_slice($code, $m->getStartline() - 1, $m->getEndLine() - $m->getStartline() + 1)); - } - - protected function getTemplateCode($template) - { - return $this->loader->getSource($template->getTemplateName()); - } - - /** - * Returns the name of the extension. - * - * @return string The extension name - */ - public function getName() - { - return 'demo'; - } -} diff --git a/maven-plugin-rpm/src/test/resources/files/web/.htaccess b/maven-plugin-rpm/src/test/resources/files/web/.htaccess deleted file mode 100644 index b52e3ae..0000000 --- a/maven-plugin-rpm/src/test/resources/files/web/.htaccess +++ /dev/null @@ -1,56 +0,0 @@ -# Use the front controller as index file. It serves as a fallback solution when -# every other rewrite/redirect fails (e.g. in an aliased environment without -# mod_rewrite). Additionally, this reduces the matching process for the -# start page (path "/") because otherwise Apache will apply the rewriting rules -# to each configured DirectoryIndex file (e.g. index.php, index.html, index.pl). -DirectoryIndex app.php - - - RewriteEngine On - - # Determine the RewriteBase automatically and set it as environment variable. - # If you are using Apache aliases to do mass virtual hosting or installed the - # project in a subdirectory, the base path will be prepended to allow proper - # resolution of the app.php file and to redirect to the correct URI. It will - # work in environments without path prefix as well, providing a safe, one-size - # fits all solution. But as you do not need it in this case, you can comment - # the following 2 lines to eliminate the overhead. - RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ - RewriteRule ^(.*) - [E=BASE:%1] - - # Sets the HTTP_AUTHORIZATION header removed by apache - RewriteCond %{HTTP:Authorization} . - RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] - - # Redirect to URI without front controller to prevent duplicate content - # (with and without `/app.php`). Only do this redirect on the initial - # rewrite by Apache and not on subsequent cycles. Otherwise we would get an - # endless redirect loop (request -> rewrite to front controller -> - # redirect -> request -> ...). - # So in case you get a "too many redirects" error or you always get redirected - # to the start page because your Apache does not expose the REDIRECT_STATUS - # environment variable, you have 2 choices: - # - disable this feature by commenting the following 2 lines or - # - use Apache >= 2.3.9 and replace all L flags by END flags and remove the - # following RewriteCond (best solution) - RewriteCond %{ENV:REDIRECT_STATUS} ^$ - RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L] - - # If the requested filename exists, simply serve it. - # We only want to let Apache serve files and not directories. - RewriteCond %{REQUEST_FILENAME} -f - RewriteRule .? - [L] - - # Rewrite all other queries to the front controller. - RewriteRule .? %{ENV:BASE}/app.php [L] - - - - - # When mod_rewrite is not available, we instruct a temporary redirect of - # the start page to the front controller explicitly so that the website - # and the generated links can still be used. - RedirectMatch 302 ^/$ /app.php/ - # RedirectTemp cannot be used instead - - diff --git a/maven-plugin-rpm/src/test/resources/files/web/app.php b/maven-plugin-rpm/src/test/resources/files/web/app.php deleted file mode 100644 index 4f591c1..0000000 --- a/maven-plugin-rpm/src/test/resources/files/web/app.php +++ /dev/null @@ -1,29 +0,0 @@ -unregister(); -$apcLoader->register(true); -*/ - -require_once __DIR__.'/../app/AppKernel.php'; -//require_once __DIR__.'/../app/AppCache.php'; - -$kernel = new AppKernel('prod', false); -$kernel->loadClassCache(); -//$kernel = new AppCache($kernel); - -// When using the HttpCache, you need to call the method in your front controller instead of relying on the configuration parameter -//Request::enableHttpMethodParameterOverride(); -$request = Request::createFromGlobals(); -$response = $kernel->handle($request); -$response->send(); -$kernel->terminate($request, $response); diff --git a/maven-plugin-rpm/src/test/resources/files/web/app_dev.php b/maven-plugin-rpm/src/test/resources/files/web/app_dev.php deleted file mode 100644 index e0279c2..0000000 --- a/maven-plugin-rpm/src/test/resources/files/web/app_dev.php +++ /dev/null @@ -1,30 +0,0 @@ -loadClassCache(); -$request = Request::createFromGlobals(); -$response = $kernel->handle($request); -$response->send(); -$kernel->terminate($request, $response); diff --git a/maven-plugin-rpm/src/test/resources/files/web/apple-touch-icon.png b/maven-plugin-rpm/src/test/resources/files/web/apple-touch-icon.png deleted file mode 100644 index 11f17e6d89ee3b416218ede42b66ec1dd81507f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10784 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 f!getFailedRequirements(); -$minorProblems = $symfonyRequirements->getFailedRecommendations(); - -?> - - - - - - Symfony Configuration - - - - - -
    -
    - - - -
    - -
    -
    -
    -

    Welcome!

    -

    Welcome to your new Symfony project.

    -

    - This script will guide you through the basic configuration of your project. - You can also do the same by editing the ‘app/config/parameters.yml’ file directly. -

    - - -

    Major problems

    -

    Major problems have been detected and must be fixed before continuing:

    -
      - -
    1. getHelpHtml() ?>
    2. - -
    - - - -

    Recommendations

    -

    - Additionally, toTo enhance your Symfony experience, - it’s recommended that you fix the following: -

    -
      - -
    1. getHelpHtml() ?>
    2. - -
    - - - hasPhpIniConfigIssue()): ?> -

    * - getPhpIniConfigPath()): ?> - Changes to the php.ini file must be done in "getPhpIniConfigPath() ?>". - - To change settings, create a "php.ini". - -

    - - - -

    Your configuration looks good to run Symfony.

    - - - -
    -
    -
    -
    Symfony Standard Edition
    -
    - - diff --git a/maven-plugin-rpm/src/test/resources/files/web/favicon.ico b/maven-plugin-rpm/src/test/resources/files/web/favicon.ico deleted file mode 100644 index 479f7f50f404ada1e42c536097521d19f2c22f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6518 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 BFLeL_ diff --git a/maven-plugin-rpm/src/test/resources/files/web/robots.txt b/maven-plugin-rpm/src/test/resources/files/web/robots.txt deleted file mode 100644 index 214e411..0000000 --- a/maven-plugin-rpm/src/test/resources/files/web/robots.txt +++ /dev/null @@ -1,4 +0,0 @@ -# www.robotstxt.org/ -# www.google.com/support/webmasters/bin/answer.py?hl=en&answer=156449 - -User-agent: * diff --git a/maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template b/maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template deleted file mode 100644 index 5deb982..0000000 --- a/maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template +++ /dev/null @@ -1,2 +0,0 @@ -@{project.artifactId} -@{project.version} \ No newline at end of file diff --git a/maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template-expected b/maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template-expected deleted file mode 100644 index dae4def..0000000 --- a/maven-plugin-rpm/src/test/resources/mojo/AbstractRpmMojo-template-expected +++ /dev/null @@ -1,2 +0,0 @@ -test-artifact -1.0-SNAPSHOT \ No newline at end of file diff --git a/maven-plugin-rpm/src/test/resources/rpm/RpmPackage.sh b/maven-plugin-rpm/src/test/resources/rpm/RpmPackage.sh deleted file mode 100644 index 65561e0..0000000 --- a/maven-plugin-rpm/src/test/resources/rpm/RpmPackage.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -echo 'test' diff --git a/maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template b/maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template deleted file mode 100644 index a0b06c9..0000000 --- a/maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template +++ /dev/null @@ -1,412 +0,0 @@ -{ - "cols": [ - "names", - "numbers" - ], - "data": [ - [ - "Richardson", - "070 0141 7377" - ], - [ - "Travis", - "(01277) 41323" - ], - [ - "Hewitt", - "(01845) 75740" - ], - [ - "Powers", - "0800 955 8823" - ], - [ - "Wells", - "07134 104963" - ], - [ - "Emerson", - "(010181) 05706" - ], - [ - "Miranda", - "(015368) 43418" - ], - [ - "Chase", - "0845 46 44" - ], - [ - "Jarvis", - "0800 067 0993" - ], - [ - "Schmidt", - "0962 636 6120" - ], - [ - "Burgess", - "0800 664 3974" - ], - [ - "Head", - "(021) 3771 0662" - ], - [ - "Newman", - "070 3256 9858" - ], - [ - "Mccray", - "0800 853 1374" - ], - [ - "Barton", - "070 8984 6700" - ], - [ - "Jacobs", - "0800 462462" - ], - [ - "Parsons", - "0845 46 48" - ], - [ - "Lucas", - "0500 650777" - ], - [ - "Reynolds", - "07624 403213" - ], - [ - "Sims", - "0500 038207" - ], - [ - "Coleman", - "(01543) 63074" - ], - [ - "Mcfarland", - "0800 758 9549" - ], - [ - "Munoz", - "0800 1111" - ], - [ - "Carroll", - "070 1133 5502" - ], - [ - "Mendoza", - "0800 376 7443" - ], - [ - "Watson", - "076 6218 7445" - ], - [ - "Norton", - "070 9284 5408" - ], - [ - "Avery", - "0500 149900" - ], - [ - "Caldwell", - "0817 211 7977" - ], - [ - "Mcguire", - "070 8334 8293" - ], - [ - "Fletcher", - "(028) 9545 6817" - ], - [ - "Thornton", - "(024) 1438 7515" - ], - [ - "Johns", - "0959 575 0496" - ], - [ - "Mcbride", - "(01874) 93627" - ], - [ - "Kelly", - "0912 501 7349" - ], - [ - "Landry", - "0845 46 48" - ], - [ - "Crane", - "07349 706594" - ], - [ - "Olson", - "0800 1111" - ], - [ - "Fischer", - "0861 608 5034" - ], - [ - "Nicholson", - "0306 015 2445" - ], - [ - "Massey", - "0500 025973" - ], - [ - "Hale", - "0812 226 2347" - ], - [ - "Burke", - "(025) 1598 0821" - ], - [ - "Abbott", - "070 8982 8414" - ], - [ - "Mitchell", - "(01632) 14975" - ], - [ - "Hodge", - "(029) 2994 2625" - ], - [ - "Crane", - "056 1056 3821" - ], - [ - "Calhoun", - "0800 968 5533" - ], - [ - "Best", - "0800 038391" - ], - [ - "Riggs", - "(01029) 333344" - ], - [ - "Mayer", - "0800 861 7909" - ], - [ - "King", - "07624 146452" - ], - [ - "Baker", - "(01083) 26967" - ], - [ - "Green", - "07724 947739" - ], - [ - "Cruz", - "(011458) 70326" - ], - [ - "Allison", - "(01705) 919378" - ], - [ - "Rose", - "(01017) 49706" - ], - [ - "Shields", - "0800 1111" - ], - [ - "Huber", - "(016977) 9693" - ], - [ - "Bright", - "0800 1111" - ], - [ - "Livingston", - "0800 169193" - ], - [ - "Lancaster", - "0800 289264" - ], - [ - "Mckay", - "0800 962 3480" - ], - [ - "Blair", - "(01217) 458780" - ], - [ - "Barr", - "0386 690 7830" - ], - [ - "Anderson", - "07624 312048" - ], - [ - "Roberson", - "(028) 0111 4691" - ], - [ - "Cleveland", - "0800 505433" - ], - [ - "Park", - "055 3423 0881" - ], - [ - "Garcia", - "0969 272 6479" - ], - [ - "Wiggins", - "(015654) 89655" - ], - [ - "Russo", - "(01976) 56815" - ], - [ - "Matthews", - "(023) 2893 4085" - ], - [ - "Hunt", - "0893 822 7541" - ], - [ - "Vega", - "07085 303615" - ], - [ - "Conner", - "0955 253 7036" - ], - [ - "Bonner", - "(016426) 84607" - ], - [ - "Matthews", - "(010036) 24040" - ], - [ - "Cameron", - "0845 46 46" - ], - [ - "Camacho", - "0800 321251" - ], - [ - "Fisher", - "0845 46 47" - ], - [ - "Wilder", - "055 8041 9669" - ], - [ - "Mitchell", - "(0161) 018 0173" - ], - [ - "Dudley", - "0800 1111" - ], - [ - "Clarke", - "07624 094367" - ], - [ - "Estrada", - "(01166) 83749" - ], - [ - "Cline", - "0845 46 40" - ], - [ - "Douglas", - "0500 729606" - ], - [ - "Wagner", - "(016977) 7914" - ], - [ - "Anthony", - "0800 1111" - ], - [ - "Snider", - "076 9687 9688" - ], - [ - "Diaz", - "0500 946224" - ], - [ - "Townsend", - "0800 062954" - ], - [ - "Simmons", - "0500 485218" - ], - [ - "Evans", - "0800 412478" - ], - [ - "Walter", - "07624 770930" - ], - [ - "Porter", - "0500 705224" - ], - [ - "House", - "076 3668 6834" - ], - [ - "Rhodes", - "(01774) 45010" - ], - [ - "Park", - "0897 987 3572" - ] - ], - - @{testdata1}, - @{testdata2}, - @{testdata3} -} \ No newline at end of file diff --git a/maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template-expected b/maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template-expected deleted file mode 100644 index f9aecab..0000000 --- a/maven-plugin-rpm/src/test/resources/rpm/RpmScriptTemplateRenderer-template-expected +++ /dev/null @@ -1,412 +0,0 @@ -{ - "cols": [ - "names", - "numbers" - ], - "data": [ - [ - "Richardson", - "070 0141 7377" - ], - [ - "Travis", - "(01277) 41323" - ], - [ - "Hewitt", - "(01845) 75740" - ], - [ - "Powers", - "0800 955 8823" - ], - [ - "Wells", - "07134 104963" - ], - [ - "Emerson", - "(010181) 05706" - ], - [ - "Miranda", - "(015368) 43418" - ], - [ - "Chase", - "0845 46 44" - ], - [ - "Jarvis", - "0800 067 0993" - ], - [ - "Schmidt", - "0962 636 6120" - ], - [ - "Burgess", - "0800 664 3974" - ], - [ - "Head", - "(021) 3771 0662" - ], - [ - "Newman", - "070 3256 9858" - ], - [ - "Mccray", - "0800 853 1374" - ], - [ - "Barton", - "070 8984 6700" - ], - [ - "Jacobs", - "0800 462462" - ], - [ - "Parsons", - "0845 46 48" - ], - [ - "Lucas", - "0500 650777" - ], - [ - "Reynolds", - "07624 403213" - ], - [ - "Sims", - "0500 038207" - ], - [ - "Coleman", - "(01543) 63074" - ], - [ - "Mcfarland", - "0800 758 9549" - ], - [ - "Munoz", - "0800 1111" - ], - [ - "Carroll", - "070 1133 5502" - ], - [ - "Mendoza", - "0800 376 7443" - ], - [ - "Watson", - "076 6218 7445" - ], - [ - "Norton", - "070 9284 5408" - ], - [ - "Avery", - "0500 149900" - ], - [ - "Caldwell", - "0817 211 7977" - ], - [ - "Mcguire", - "070 8334 8293" - ], - [ - "Fletcher", - "(028) 9545 6817" - ], - [ - "Thornton", - "(024) 1438 7515" - ], - [ - "Johns", - "0959 575 0496" - ], - [ - "Mcbride", - "(01874) 93627" - ], - [ - "Kelly", - "0912 501 7349" - ], - [ - "Landry", - "0845 46 48" - ], - [ - "Crane", - "07349 706594" - ], - [ - "Olson", - "0800 1111" - ], - [ - "Fischer", - "0861 608 5034" - ], - [ - "Nicholson", - "0306 015 2445" - ], - [ - "Massey", - "0500 025973" - ], - [ - "Hale", - "0812 226 2347" - ], - [ - "Burke", - "(025) 1598 0821" - ], - [ - "Abbott", - "070 8982 8414" - ], - [ - "Mitchell", - "(01632) 14975" - ], - [ - "Hodge", - "(029) 2994 2625" - ], - [ - "Crane", - "056 1056 3821" - ], - [ - "Calhoun", - "0800 968 5533" - ], - [ - "Best", - "0800 038391" - ], - [ - "Riggs", - "(01029) 333344" - ], - [ - "Mayer", - "0800 861 7909" - ], - [ - "King", - "07624 146452" - ], - [ - "Baker", - "(01083) 26967" - ], - [ - "Green", - "07724 947739" - ], - [ - "Cruz", - "(011458) 70326" - ], - [ - "Allison", - "(01705) 919378" - ], - [ - "Rose", - "(01017) 49706" - ], - [ - "Shields", - "0800 1111" - ], - [ - "Huber", - "(016977) 9693" - ], - [ - "Bright", - "0800 1111" - ], - [ - "Livingston", - "0800 169193" - ], - [ - "Lancaster", - "0800 289264" - ], - [ - "Mckay", - "0800 962 3480" - ], - [ - "Blair", - "(01217) 458780" - ], - [ - "Barr", - "0386 690 7830" - ], - [ - "Anderson", - "07624 312048" - ], - [ - "Roberson", - "(028) 0111 4691" - ], - [ - "Cleveland", - "0800 505433" - ], - [ - "Park", - "055 3423 0881" - ], - [ - "Garcia", - "0969 272 6479" - ], - [ - "Wiggins", - "(015654) 89655" - ], - [ - "Russo", - "(01976) 56815" - ], - [ - "Matthews", - "(023) 2893 4085" - ], - [ - "Hunt", - "0893 822 7541" - ], - [ - "Vega", - "07085 303615" - ], - [ - "Conner", - "0955 253 7036" - ], - [ - "Bonner", - "(016426) 84607" - ], - [ - "Matthews", - "(010036) 24040" - ], - [ - "Cameron", - "0845 46 46" - ], - [ - "Camacho", - "0800 321251" - ], - [ - "Fisher", - "0845 46 47" - ], - [ - "Wilder", - "055 8041 9669" - ], - [ - "Mitchell", - "(0161) 018 0173" - ], - [ - "Dudley", - "0800 1111" - ], - [ - "Clarke", - "07624 094367" - ], - [ - "Estrada", - "(01166) 83749" - ], - [ - "Cline", - "0845 46 40" - ], - [ - "Douglas", - "0500 729606" - ], - [ - "Wagner", - "(016977) 7914" - ], - [ - "Anthony", - "0800 1111" - ], - [ - "Snider", - "076 9687 9688" - ], - [ - "Diaz", - "0500 946224" - ], - [ - "Townsend", - "0800 062954" - ], - [ - "Simmons", - "0500 485218" - ], - [ - "Evans", - "0800 412478" - ], - [ - "Walter", - "07624 770930" - ], - [ - "Porter", - "0500 705224" - ], - [ - "House", - "076 3668 6834" - ], - [ - "Rhodes", - "(01774) 45010" - ], - [ - "Park", - "0897 987 3572" - ] - ], - - true, - test, - 123 -} \ No newline at end of file