@nxrocks/nx-ktor
Version:
Nx plugin to generate, run, package, build (and more) Ktor projects inside your Nx workspace
37 lines • 1.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addMavenPublishPlugin = addMavenPublishPlugin;
const devkit_1 = require("@nx/devkit");
const common_jvm_1 = require("@nxrocks/common-jvm");
function addMavenPublishPlugin(tree, options) {
if (options.buildSystem === 'GRADLE' ||
options.buildSystem === 'GRADLE_KTS') {
devkit_1.logger.debug(`Adding 'maven-publish' plugin...`);
(0, common_jvm_1.addGradlePlugin)(tree, options.projectRoot, 'kotlin', 'maven-publish', undefined, options.buildSystem === 'GRADLE_KTS');
const artifactSource = 'jar';
const publishing = options.buildSystem === 'GRADLE_KTS'
? (0, common_jvm_1.stripIndent) `
publishing {
publications {
create<MavenPublication>("mavenJava") {
artifact(tasks.getByName("${artifactSource}"))
}
}
}
`
: (0, common_jvm_1.stripIndent) `
publishing {
publications {
mavenJava(MavenPublication) {
artifact ${artifactSource}
}
}
}
`;
const ext = options.buildSystem === 'GRADLE_KTS' ? '.kts' : '';
const buildGradlePath = `${options.projectRoot}/build.gradle${ext}`;
const content = tree.read(buildGradlePath, 'utf-8') + '\n' + publishing;
tree.write(buildGradlePath, content);
}
}
//# sourceMappingURL=add-maven-publish-plugin.js.map