mirror of
https://github.com/tadfisher/gradle2nix.git
synced 2026-01-11 15:30:38 -05:00
Cleanup build
This commit is contained in:
@@ -133,6 +133,8 @@ class Gradle2Nix : CliktCommand(
|
|||||||
metadata.delete()
|
metadata.delete()
|
||||||
backup.renameTo(metadata)
|
backup.renameTo(metadata)
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
metadata.deleteOnExit()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,10 +2,8 @@ plugins {
|
|||||||
base
|
base
|
||||||
alias(libs.plugins.kotlin.jvm) apply false
|
alias(libs.plugins.kotlin.jvm) apply false
|
||||||
alias(libs.plugins.kotlin.serialization) apply false
|
alias(libs.plugins.kotlin.serialization) apply false
|
||||||
alias(libs.plugins.ksp) apply false
|
|
||||||
alias(libs.plugins.pluginPublish) apply false
|
alias(libs.plugins.pluginPublish) apply false
|
||||||
alias(libs.plugins.shadow) apply false
|
alias(libs.plugins.shadow) apply false
|
||||||
alias(libs.plugins.stutter) apply false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "org.nixos.gradle2nix"
|
group = "org.nixos.gradle2nix"
|
||||||
|
|||||||
@@ -1,52 +0,0 @@
|
|||||||
# This is a Gradle generated file for dependency locking.
|
|
||||||
# Manual edits can break the build and are not advised.
|
|
||||||
# This file is expected to be part of source control.
|
|
||||||
com.fasterxml.jackson.core:jackson-annotations:2.12.1
|
|
||||||
com.fasterxml.jackson.core:jackson-core:2.12.1
|
|
||||||
com.fasterxml.jackson.core:jackson-databind:2.12.1
|
|
||||||
com.fasterxml.jackson:jackson-bom:2.12.1
|
|
||||||
com.github.gundy:semver4j:0.16.4
|
|
||||||
com.github.jengelman.gradle.plugins:shadow:6.1.0
|
|
||||||
com.github.johnrengelman.shadow:com.github.johnrengelman.shadow.gradle.plugin:6.1.0
|
|
||||||
com.google.code.gson:gson:2.8.6
|
|
||||||
commons-io:commons-io:2.6
|
|
||||||
de.undercouch:gradle-download-task:4.0.2
|
|
||||||
org.ajoberstar.stutter:org.ajoberstar.stutter.gradle.plugin:0.6.0
|
|
||||||
org.ajoberstar:gradle-stutter:0.6.0
|
|
||||||
org.antlr:antlr4-runtime:4.5.2-1
|
|
||||||
org.apache.ant:ant-launcher:1.9.7
|
|
||||||
org.apache.ant:ant:1.9.7
|
|
||||||
org.apache.logging.log4j:log4j-api:2.13.3
|
|
||||||
org.apache.logging.log4j:log4j-core:2.13.3
|
|
||||||
org.codehaus.plexus:plexus-utils:3.0.24
|
|
||||||
org.jdom:jdom2:2.0.6
|
|
||||||
org.jetbrains.intellij.deps:trove4j:1.0.20181211
|
|
||||||
org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.4.20
|
|
||||||
org.jetbrains.kotlin.kapt:org.jetbrains.kotlin.kapt.gradle.plugin:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-android-extensions:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-build-common:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-compiler-runner:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-daemon-client:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-reflect:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-script-runtime:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-scripting-common:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-scripting-jvm:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-stdlib-common:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-stdlib:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-util-io:1.4.20
|
|
||||||
org.jetbrains.kotlin:kotlin-util-klib:1.4.20
|
|
||||||
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.7
|
|
||||||
org.jetbrains:annotations:13.0
|
|
||||||
org.ow2.asm:asm-analysis:9.0
|
|
||||||
org.ow2.asm:asm-commons:9.0
|
|
||||||
org.ow2.asm:asm-tree:9.0
|
|
||||||
org.ow2.asm:asm:9.0
|
|
||||||
org.vafer:jdependency:2.1.1
|
|
||||||
@@ -1,43 +1,25 @@
|
|||||||
[versions]
|
[versions]
|
||||||
gradle = "8.3"
|
gradle = "8.3"
|
||||||
kotlin = "1.9.0" # Current embedded Gradle kotlin version
|
kotlin = "1.9.0" # Current embedded Gradle kotlin version
|
||||||
ksp = "1.9.0-1.0.13"
|
|
||||||
|
|
||||||
[libraries]
|
[libraries]
|
||||||
clikt = "com.github.ajalt:clikt:+"
|
clikt = "com.github.ajalt:clikt:+"
|
||||||
gradle-dependencyGraph = "org.gradle:github-dependency-graph-gradle-plugin:+"
|
|
||||||
gradle-toolingApi = { module = "org.gradle:gradle-tooling-api", version.ref = "gradle" }
|
gradle-toolingApi = { module = "org.gradle:gradle-tooling-api", version.ref = "gradle" }
|
||||||
ivy = "org.apache.ivy:ivy:+"
|
|
||||||
javalin = "io.javalin:javalin:+"
|
|
||||||
junit-jupiter-api = "org.junit.jupiter:junit-jupiter-api:+"
|
junit-jupiter-api = "org.junit.jupiter:junit-jupiter-api:+"
|
||||||
junit-jupiter-engine = "org.junit.jupiter:junit-jupiter-engine:+"
|
junit-jupiter-engine = "org.junit.jupiter:junit-jupiter-engine:+"
|
||||||
junit-jupiter-params = "org.junit.jupiter:junit-jupiter-params:+"
|
junit-jupiter-params = "org.junit.jupiter:junit-jupiter-params:+"
|
||||||
junit-platformLauncher = "org.junit.platform:junit-platform-launcher:+"
|
junit-platformLauncher = "org.junit.platform:junit-platform-launcher:+"
|
||||||
kotest-runner = "io.kotest:kotest-runner-junit5:+"
|
kotest-runner = "io.kotest:kotest-runner-junit5:+"
|
||||||
kotest-assertions = "io.kotest:kotest-assertions-core:+"
|
kotest-assertions = "io.kotest:kotest-assertions-core:+"
|
||||||
maven-repositoryMetadata = "org.apache.maven:maven-repository-metadata:+"
|
|
||||||
minutest = "dev.minutest:minutest:+"
|
|
||||||
moshi = "com.squareup.moshi:moshi:+"
|
|
||||||
moshi-adapters = "com.squareup.moshi:moshi-adapters:+"
|
|
||||||
moshi-kotlin = "com.squareup.moshi:moshi-kotlin:+"
|
|
||||||
moshi-kotlinCodegen = "com.squareup.moshi:moshi-kotlin-codegen:+"
|
|
||||||
okio = "com.squareup.okio:okio:+"
|
okio = "com.squareup.okio:okio:+"
|
||||||
s3 = "com.amazonaws:aws-java-sdk-s3:+"
|
|
||||||
s3mock = "com.adobe.testing:s3mock-junit5:+"
|
|
||||||
semver = "net.swiftzer.semver:semver:+"
|
|
||||||
serialization-json = "org.jetbrains.kotlinx:kotlinx-serialization-json:+"
|
serialization-json = "org.jetbrains.kotlinx:kotlinx-serialization-json:+"
|
||||||
slf4j-api = "org.slf4j:slf4j-api:+"
|
slf4j-api = "org.slf4j:slf4j-api:+"
|
||||||
slf4j-simple = "org.slf4j:slf4j-simple:+"
|
slf4j-simple = "org.slf4j:slf4j-simple:+"
|
||||||
spek-dsl = "org.spekframework.spek2:spek-dsl-jvm:+"
|
|
||||||
spek-runner = "org.spekframework.spek2:spek-runner-junit5:+"
|
|
||||||
strikt = "io.strikt:strikt-core:+"
|
|
||||||
|
|
||||||
[plugins]
|
[plugins]
|
||||||
pluginPublish = { id = "com.gradle.plugin-publish", version = "1.2.1" }
|
pluginPublish = { id = "com.gradle.plugin-publish", version = "1.2.1" }
|
||||||
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
||||||
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|
||||||
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
|
|
||||||
shadow = { id = "com.github.johnrengelman.shadow", version = "8.1.1" }
|
shadow = { id = "com.github.johnrengelman.shadow", version = "8.1.1" }
|
||||||
stutter = { id = "org.ajoberstar.stutter", version = "0.7.2" }
|
|
||||||
|
|
||||||
[bundles]
|
[bundles]
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ plugins {
|
|||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation(libs.serialization.json)
|
implementation(libs.serialization.json)
|
||||||
implementation(libs.semver)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
java {
|
java {
|
||||||
|
|||||||
@@ -7,6 +7,12 @@ import kotlinx.serialization.json.encodeToStream
|
|||||||
import org.nixos.gradle2nix.dependencygraph.DependencyGraphRenderer
|
import org.nixos.gradle2nix.dependencygraph.DependencyGraphRenderer
|
||||||
import org.nixos.gradle2nix.dependencygraph.model.ResolvedConfiguration
|
import org.nixos.gradle2nix.dependencygraph.model.ResolvedConfiguration
|
||||||
|
|
||||||
|
@OptIn(ExperimentalSerializationApi::class)
|
||||||
|
private val json = Json {
|
||||||
|
prettyPrint = true
|
||||||
|
prettyPrintIndent = " "
|
||||||
|
}
|
||||||
|
|
||||||
class NixDependencyGraphRenderer : DependencyGraphRenderer {
|
class NixDependencyGraphRenderer : DependencyGraphRenderer {
|
||||||
@OptIn(ExperimentalSerializationApi::class)
|
@OptIn(ExperimentalSerializationApi::class)
|
||||||
override fun outputDependencyGraph(
|
override fun outputDependencyGraph(
|
||||||
@@ -15,7 +21,7 @@ class NixDependencyGraphRenderer : DependencyGraphRenderer {
|
|||||||
) {
|
) {
|
||||||
val graphOutputFile = File(outputDirectory, "dependency-graph.json")
|
val graphOutputFile = File(outputDirectory, "dependency-graph.json")
|
||||||
graphOutputFile.outputStream().buffered().use { output ->
|
graphOutputFile.outputStream().buffered().use { output ->
|
||||||
Json.encodeToStream(resolvedConfigurations, output)
|
json.encodeToStream(resolvedConfigurations, output)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import org.gradle.util.GradleVersion
|
|||||||
import org.nixos.gradle2nix.dependencygraph.extractor.DependencyExtractor
|
import org.nixos.gradle2nix.dependencygraph.extractor.DependencyExtractor
|
||||||
import org.nixos.gradle2nix.dependencygraph.extractor.DependencyExtractorBuildService
|
import org.nixos.gradle2nix.dependencygraph.extractor.DependencyExtractorBuildService
|
||||||
import org.nixos.gradle2nix.dependencygraph.extractor.LegacyDependencyExtractor
|
import org.nixos.gradle2nix.dependencygraph.extractor.LegacyDependencyExtractor
|
||||||
|
import org.nixos.gradle2nix.dependencygraph.util.buildDirCompat
|
||||||
import org.nixos.gradle2nix.dependencygraph.util.service
|
import org.nixos.gradle2nix.dependencygraph.util.service
|
||||||
|
|
||||||
abstract class AbstractDependencyExtractorPlugin : Plugin<Gradle> {
|
abstract class AbstractDependencyExtractorPlugin : Plugin<Gradle> {
|
||||||
@@ -35,7 +36,7 @@ abstract class AbstractDependencyExtractorPlugin : Plugin<Gradle> {
|
|||||||
gradle.rootProject { project ->
|
gradle.rootProject { project ->
|
||||||
dependencyExtractorProvider
|
dependencyExtractorProvider
|
||||||
.get()
|
.get()
|
||||||
.rootProjectBuildDirectory = project.buildDir
|
.rootProjectBuildDirectory = project.buildDirCompat
|
||||||
}
|
}
|
||||||
|
|
||||||
// Register the service to listen for Build Events
|
// Register the service to listen for Build Events
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
package org.nixos.gradle2nix.dependencygraph.util
|
package org.nixos.gradle2nix.dependencygraph.util
|
||||||
|
|
||||||
|
import java.io.File
|
||||||
|
import org.gradle.api.Project
|
||||||
import org.gradle.api.internal.GradleInternal
|
import org.gradle.api.internal.GradleInternal
|
||||||
import org.gradle.api.invocation.Gradle
|
import org.gradle.api.invocation.Gradle
|
||||||
import org.gradle.api.model.ObjectFactory
|
import org.gradle.api.model.ObjectFactory
|
||||||
import org.gradle.api.provider.ProviderFactory
|
import org.gradle.api.provider.ProviderFactory
|
||||||
import org.gradle.internal.operations.BuildOperationListenerManager
|
import org.gradle.internal.operations.BuildOperationListenerManager
|
||||||
|
import org.gradle.util.GradleVersion
|
||||||
|
|
||||||
internal abstract class GradleExtensions {
|
internal abstract class GradleExtensions {
|
||||||
|
|
||||||
@@ -17,3 +20,11 @@ internal abstract class GradleExtensions {
|
|||||||
|
|
||||||
internal inline fun <reified T> Gradle.service(): T =
|
internal inline fun <reified T> Gradle.service(): T =
|
||||||
(this as GradleInternal).services.get(T::class.java)
|
(this as GradleInternal).services.get(T::class.java)
|
||||||
|
|
||||||
|
internal val Project.buildDirCompat: File
|
||||||
|
get() = if (GradleVersion.current() < GradleVersion.version("8.3")) {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
buildDir
|
||||||
|
} else {
|
||||||
|
layout.buildDirectory.asFile.get()
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user