Skip to content

Commit f7ca78f

Browse files
committed
remove oidc config from gradle plugin
- non-ambient credentials should be configured by signing-config - ambient credentially are now unmodifiable defaults (behavior that is consistent with other clieints) Signed-off-by: Appu Goundan <[email protected]>
1 parent e2918d7 commit f7ca78f

File tree

10 files changed

+3
-359
lines changed

10 files changed

+3
-359
lines changed

sandbox/gradle-precompiled-plugin/src/main/kotlin/sigstore-conventions.gradle.kts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,4 @@ plugins {
33
}
44

55
sigstoreSign {
6-
oidcClient {
7-
gitHub()
8-
}
96
}

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/GitHubActionsOidc.kt

Lines changed: 0 additions & 45 deletions
This file was deleted.

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/OidcClientConfiguration.kt

Lines changed: 0 additions & 32 deletions
This file was deleted.

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/OidcClientExtension.kt

Lines changed: 0 additions & 85 deletions
This file was deleted.

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/SigstoreSignExtension.kt

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,6 @@ abstract class SigstoreSignExtension(private val project: Project) {
4747

4848
init {
4949
sigstoreJavaVersion.convention("2.0.0-rc2")
50-
(this as ExtensionAware).extensions.create<OidcClientExtension>(
51-
"oidcClient",
52-
project.objects,
53-
)
5450
}
5551

5652
fun sign(publications: DomainObjectCollection<Publication>) {
@@ -70,13 +66,6 @@ abstract class SigstoreSignExtension(private val project: Project) {
7066
}
7167
}
7268

73-
val oidcClient: OidcClientExtension
74-
get() = (this as ExtensionAware).the()
75-
76-
fun oidcClient(configure: Action<OidcClientExtension>) {
77-
configure.execute((this as ExtensionAware).the())
78-
}
79-
8069
private fun <T : PublicationArtifact> sign(publication: PublicationInternal<T>) {
8170
val taskName = publication.signingTaskName
8271
val signatureDirectory = project.layout.buildDirectory.dir("sigstore/$taskName")

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/WebOidc.kt

Lines changed: 0 additions & 52 deletions
This file was deleted.

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/tasks/SigstoreSignFilesTask.kt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
*/
1717
package dev.sigstore.sign.tasks
1818

19-
import dev.sigstore.sign.OidcClientConfiguration
2019
import dev.sigstore.sign.SigstoreSignExtension
2120
import dev.sigstore.sign.SigstoreSignature
2221
import dev.sigstore.sign.services.SigstoreSigningService
@@ -86,9 +85,6 @@ abstract class SigstoreSignFilesTask : DefaultTask() {
8685
@get:Internal
8786
abstract val signatureDirectory: DirectoryProperty
8887

89-
@get:Internal
90-
abstract val oidcClient: Property<OidcClientConfiguration>
91-
9288
@get:Nested
9389
@get:Optional
9490
abstract val launcher: Property<JavaLauncher>
@@ -114,9 +110,6 @@ abstract class SigstoreSignFilesTask : DefaultTask() {
114110
false
115111
}
116112
sigstoreClientClasspath.from(project.configurations["sigstoreClientClasspath"])
117-
oidcClient.convention(
118-
project.the<SigstoreSignExtension>().oidcClient.client
119-
)
120113
signatureDirectory.convention(
121114
layout.buildDirectory.dir("sigstore/$name")
122115
)
@@ -201,7 +194,6 @@ abstract class SigstoreSignFilesTask : DefaultTask() {
201194
submit(SignWorkAction::class.java) {
202195
inputFile.set(file)
203196
outputSignature.set(signature.outputSignature)
204-
oidcClient.set(this@SigstoreSignFilesTask.oidcClient)
205197
}
206198
// Wait after submitting each action, so the worker become active, and we can reuse it.
207199
// It enables reusing Fulcio certificates

sigstore-gradle/sigstore-gradle-sign-base-plugin/src/main/kotlin/dev/sigstore/sign/work/SignWorkAction.kt

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -17,31 +17,22 @@
1717
package dev.sigstore.sign.work
1818

1919
import dev.sigstore.KeylessSigner
20-
import dev.sigstore.oidc.client.OidcClient
21-
import dev.sigstore.oidc.client.OidcClients
22-
import dev.sigstore.sign.OidcClientConfiguration
2320
import org.gradle.api.file.RegularFileProperty
24-
import org.gradle.api.provider.Property
25-
import org.gradle.internal.impldep.org.hamcrest.core.AnyOf
2621
import org.gradle.workers.WorkAction
2722
import org.gradle.workers.WorkParameters
2823
import org.slf4j.LoggerFactory
29-
import java.util.concurrent.ConcurrentHashMap
3024

3125
abstract class SignWorkParameters : WorkParameters {
3226
abstract val inputFile: RegularFileProperty
3327
abstract val outputSignature: RegularFileProperty
34-
abstract val oidcClient: Property<OidcClientConfiguration>
3528
}
3629

3730
abstract class SignWorkAction : WorkAction<SignWorkParameters> {
3831
companion object {
3932
private val logger = LoggerFactory.getLogger(SignWorkAction::class.java)
40-
41-
private val clients = ConcurrentHashMap<Any, KeylessSigner>()
42-
43-
// the default key that delegates to KeylessSigners set of default OIDC providers
44-
const val DEFAULT_KEY = "_default"
33+
private val signer: KeylessSigner by lazy {
34+
KeylessSigner.builder().sigstorePublicDefaults().build()
35+
}
4536
}
4637

4738
abstract val parameters: SignWorkParameters
@@ -50,16 +41,6 @@ abstract class SignWorkAction : WorkAction<SignWorkParameters> {
5041
val inputFile = parameters.inputFile.get().asFile
5142
logger.info("Signing in Sigstore: {}", inputFile)
5243

53-
val signerKey = if (parameters.oidcClient.isPresent) parameters.oidcClient.get().key() else DEFAULT_KEY
54-
val signer = clients.computeIfAbsent(signerKey) {
55-
KeylessSigner.builder().apply {
56-
sigstorePublicDefaults()
57-
if (signerKey != DEFAULT_KEY) {
58-
forceCredentialProviders(OidcClients.of(parameters.oidcClient.get().build() as OidcClient))
59-
}
60-
}.build()
61-
}
62-
6344
val result = signer.signFile(inputFile.toPath())
6445
val bundleJson = result.toJson()
6546
parameters.outputSignature.get().asFile.writeText(bundleJson)

0 commit comments

Comments
 (0)