in log4j-changelog/src/main/java/org/apache/logging/log4j/changelog/releaser/ChangelogReleaser.java [37:64]
public static void performRelease(final ChangelogReleaserArgs args) {
// Read the release date and version
final String releaseDate =
ISO_DATE.format(args.releaseDate != null ? args.releaseDate : LocalDate.now(ZoneId.systemDefault()));
System.out.format("using `%s` for the release date%n", releaseDate);
try {
// Determine released and unreleased directories
final Path unreleasedDirectory =
ChangelogFiles.unreleasedDirectory(args.changelogDirectory, args.releaseVersionMajor);
final Path releaseDirectory = ChangelogFiles.releaseDirectory(args.changelogDirectory, args.releaseVersion);
// Short-circuit if there is nothing to be released
if (!Files.exists(unreleasedDirectory)) {
return;
}
// Populate the release changelog files
populateReleaseChangelogEntryFiles(unreleasedDirectory, releaseDirectory);
populateReleaseXmlFiles(releaseDate, args.releaseVersion, releaseDirectory);
populateReleaseChangelogTemplateFiles(unreleasedDirectory, releaseDirectory);
} catch (final IOException error) {
throw new UncheckedIOException(error);
}
}