|
1 | 1 | package io.github.fvarrui.javapackager.gradle; |
2 | 2 |
|
3 | 3 | import java.io.File; |
4 | | -import java.util.UUID; |
5 | 4 |
|
6 | | -import org.gradle.api.tasks.bundling.Zip; |
| 5 | +import org.redline_rpm.Builder; |
7 | 6 | import org.redline_rpm.header.Architecture; |
8 | 7 | import org.redline_rpm.header.Os; |
9 | | - |
10 | | -import com.netflix.gradle.plugins.rpm.Rpm; |
| 8 | +import org.redline_rpm.header.RpmType; |
11 | 9 |
|
12 | 10 | import io.github.fvarrui.javapackager.packagers.ArtifactGenerator; |
13 | | -import io.github.fvarrui.javapackager.packagers.Context; |
14 | 11 | import io.github.fvarrui.javapackager.packagers.LinuxPackager; |
15 | 12 | import io.github.fvarrui.javapackager.packagers.Packager; |
16 | | -import io.github.fvarrui.javapackager.utils.Logger; |
17 | 13 |
|
18 | 14 | /** |
19 | 15 | * Creates a RPM package file including all app folder's content only for |
@@ -42,24 +38,17 @@ protected File doApply(Packager packager) throws Exception { |
42 | 38 | String organizationName = linuxPackager.getOrganizationName(); |
43 | 39 | File outputDirectory = linuxPackager.getOutputDirectory(); |
44 | 40 |
|
45 | | - Rpm rpmTask = createTask(); |
46 | | - rpmTask.setPackageName(name); |
47 | | - rpmTask.setPackageDescription(description); |
48 | | - rpmTask.setSourcePackage(""); |
49 | | - rpmTask.setRelease("1"); |
50 | | - rpmTask.setEpoch(0); |
51 | | - rpmTask.setArch(Architecture.X86_64); |
52 | | - rpmTask.setPackager(organizationName); |
53 | | - rpmTask.setOs(Os.LINUX); |
54 | | - rpmTask.into("/opt/" + name); |
55 | | - rpmTask.from(appFolder); |
56 | | - rpmTask.getActions().forEach(action -> action.execute(rpmTask)); |
| 41 | + Builder builder = new Builder(); |
| 42 | + builder.setType(RpmType.BINARY); |
| 43 | + builder.setPlatform(Architecture.X86_64, Os.LINUX); |
| 44 | + builder.setPackage(name, version, "1"); |
| 45 | + builder.setPackager(organizationName); |
| 46 | + builder.setDescription(description); |
| 47 | + builder.setPrefixes("/opt/" + name); |
| 48 | + builder.addDirectory(appFolder.getAbsolutePath()); |
| 49 | + builder.build(outputDirectory); |
57 | 50 |
|
58 | 51 | return new File(outputDirectory, name + "_" + version + ".rpm"); |
59 | 52 | } |
60 | 53 |
|
61 | | - private Rpm createTask() { |
62 | | - return Context.getGradleContext().getProject().getTasks().create("createRpm_" + UUID.randomUUID(), Rpm.class); |
63 | | - } |
64 | | - |
65 | 54 | } |
0 commit comments