Skip to content

Commit

Permalink
[jpackage] Let appName and appVersion use named templates. Resolves #754
Browse files Browse the repository at this point in the history
  • Loading branch information
aalmiray committed Feb 16, 2022
1 parent 536cd58 commit e7c2a03
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@
import java.util.Optional;
import java.util.Set;

import static org.jreleaser.util.Templates.resolveTemplate;

/**
* @author Andres Almiray
* @since 0.10.0
Expand Down Expand Up @@ -237,6 +239,18 @@ void setAll(ApplicationPackage applicationPackage) {
setFileAssociations(applicationPackage.fileAssociations);
}

public String getResolvedAppName(JReleaserContext context, Jpackage jpackage) {
Map<String, Object> props = context.getModel().props();
props.putAll(jpackage.props());
return resolveTemplate(appName, props);
}

public String getResolvedAppVersion(JReleaserContext context, Jpackage jpackage) {
Map<String, Object> props = context.getModel().props();
props.putAll(jpackage.props());
return resolveTemplate(appVersion, props);
}

public String getAppName() {
return appName;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -192,15 +192,16 @@ private static void validateJpackage(JReleaserContext context, JReleaserContext.
}

// validate appVersion
String appVersion = applicationPackage.getResolvedAppVersion(context, jpackage);
try {
SemVer v = SemVer.of(applicationPackage.getAppVersion());
SemVer v = SemVer.of(appVersion);
if (isNotBlank(v.getBuild()) && isNotBlank(v.getTag()) &&
v.getMajor() <= 0) {
errors.configuration(RB.$("validation_jpackage_invalid_appversion", applicationPackage.getAppVersion()));
errors.configuration(RB.$("validation_jpackage_invalid_appversion", appVersion));
}
} catch (IllegalArgumentException e) {
// can't use this value
errors.configuration(RB.$("validation_jpackage_invalid_appversion", applicationPackage.getAppVersion()));
errors.configuration(RB.$("validation_jpackage_invalid_appversion", appVersion));
}

if (isBlank(applicationPackage.getVendor())) {
Expand Down Expand Up @@ -246,9 +247,6 @@ private static void validateOsx(JReleaserContext context, Jpackage jpackage, Jpa
}

private static void validateLinux(JReleaserContext context, Jpackage jpackage, Jpackage.Linux packager, Errors errors) {
if (isBlank(packager.getPackageName())) {
packager.setPackageName(jpackage.getApplicationPackage().getAppName());
}
if (isBlank(packager.getLicense())) {
packager.setLicense(context.getModel().getProject().getLicense());
}
Expand Down

0 comments on commit e7c2a03

Please sign in to comment.