Apply plugin repository credentials for dependency graph plugin

This commit is contained in:
daz 2024-03-12 15:49:28 +13:00
parent f58a414c4f
commit 7b589d9740
No known key found for this signature in database
2 changed files with 53 additions and 2 deletions

View File

@ -4,13 +4,29 @@ buildscript {
return System.getProperty(name) ?: System.getenv(envVarName)
}
def pluginRepositoryUrl = getInputParam('gradle.plugin-repository.url') ?: 'https://plugins.gradle.org/m2'
def pluginRepositoryUsername = getInputParam('gradle.plugin-repository.username')
def pluginRepositoryPassword = getInputParam('gradle.plugin-repository.password')
def dependencyGraphPluginVersion = getInputParam('dependency-graph-plugin.version') ?: '1.2.2'
logger.lifecycle("Resolving dependency graph plugin ${dependencyGraphPluginVersion} from plugin repository: ${pluginRepositoryUrl}")
repositories {
maven { url pluginRepositoryUrl }
maven {
url pluginRepositoryUrl
if (pluginRepositoryUsername && pluginRepositoryPassword) {
logger.lifecycle("Applying credentials for plugin repository: ${pluginRepositoryUrl}")
credentials {
username(pluginRepositoryUsername)
password(pluginRepositoryPassword)
}
authentication {
basic(BasicAuthentication)
}
}
}
}
dependencies {
classpath "org.gradle:github-dependency-graph-gradle-plugin:${dependencyGraphPluginVersion}"
}
}
apply plugin: org.gradle.github.GitHubDependencyGraphPlugin

View File

@ -36,7 +36,7 @@ class TestDependencyGraph extends BaseInitScriptTest {
assert reportFile.exists()
where:
testGradleVersion << [GRADLE_8_X]
testGradleVersion << DEPENDENCY_GRAPH_VERSIONS
}
def "produces dependency graph with configuration-cache on latest Gradle"() {
@ -127,6 +127,41 @@ class TestDependencyGraph extends BaseInitScriptTest {
testGradleVersion << DEPENDENCY_GRAPH_VERSIONS
}
def "can configure alternative repository for plugins"() {
assumeTrue testGradleVersion.compatibleWithCurrentJvm
when:
def vars = envVars
vars.put('GRADLE_PLUGIN_REPOSITORY_URL', 'https://plugins.grdev.net/m2')
def result = run(['help', '--info'], initScript, testGradleVersion.gradleVersion, [], vars)
then:
assert reportFile.exists()
assert result.output.contains("Resolving dependency graph plugin 1.2.2 from plugin repository: https://plugins.grdev.net/m2")
where:
testGradleVersion << DEPENDENCY_GRAPH_VERSIONS
}
def "can provide credentials for alternative repository for plugins"() {
assumeTrue testGradleVersion.compatibleWithCurrentJvm
when:
def vars = envVars
vars.put('GRADLE_PLUGIN_REPOSITORY_URL', 'https://plugins.grdev.net/m2')
vars.put('GRADLE_PLUGIN_REPOSITORY_USERNAME', 'REPO_USER')
vars.put('GRADLE_PLUGIN_REPOSITORY_PASSWORD', 'REPO_PASSWORD')
def result = run(['help', '--info'], initScript, testGradleVersion.gradleVersion, [], vars)
then:
assert reportFile.exists()
assert result.output.contains("Resolving dependency graph plugin 1.2.2 from plugin repository: https://plugins.grdev.net/m2")
assert result.output.contains("Applying credentials for plugin repository: https://plugins.grdev.net/m2")
where:
testGradleVersion << DEPENDENCY_GRAPH_VERSIONS
}
def getEnvVars() {
return [
GITHUB_DEPENDENCY_GRAPH_ENABLED: "true",