in src/main/java/software/amazon/smithy/gradle/tasks/SmithyTagsTask.java [64:89]
public void execute() {
writeHeading("Running smithyTags");
if (!getProject().getTasks().getByName("jar").getEnabled()) {
getLogger().info("'jar' task is not enabled, so nothing to do in 'smithyTags'");
return;
}
// Configure the task from the extension if things aren't already setup.
SmithyExtension extension = SmithyUtils.getSmithyExtension(getProject());
tags.addAll(extension.getTags());
// Always add the group, the group + ":" + name, and the group + ":" + name + ":" + version as tags.
if (!getProject().getGroup().toString().isEmpty()) {
tags.add(getProject().getGroup().toString());
tags.add(getProject().getGroup() + ":" + getProject().getName());
tags.add(getProject().getGroup() + ":" + getProject().getName() + ":" + getProject().getVersion());
getLogger().info("Adding built-in Smithy JAR tags: {}", tags);
}
getProject().getTasks().withType(Jar.class, task -> {
getLogger().info("Adding tags to manifest: {}", tags);
Attributes attributes = task.getManifest().getAttributes();
attributes.put("Smithy-Tags", String.join(", ", tags));
});
}