Gradle を使用してアーティファクトを Google の Artifact Registry にデプロイしています。
通常、ビルドされたアーティファクトをデプロイするリポジトリをファイルの「公開」セクションで指定します-そのようにする代わりに、後でCIに挿入されるファイルでbuild.gradle
リポジトリを定義したかった- init.gradle
Artifact Registry の URL が Git リポジトリに移動しないようにします。
これを行う方法は次のようになると思いました:
allprojects{
buildscript {
repositories {
maven {
url "artifactregistry://random-location.pkg.dev/project-name/repository-name"
}
}
}
repositories {
maven {
url "artifactregistry://random-location.pkg.dev/project-name/repository-name"
}
}
}
しかし、Artifact Registry Gradle プラグインが必要なためartifactregistry
、サポートされているプロトコルではないというエラーが表示されます。
> Could not resolve all dependencies for configuration ':classpath'.
> Not a supported repository protocol 'artifactregistry': valid protocols are [file, http, https, gcs, s3, sftp]
ドキュメントには、でプラグインを使用するにinit.gradle
は、次を挿入する必要があると記載されています。
initscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "gradle.plugin.com.google.cloud.artifactregistry:artifactregistry-gradle-plugin:2.1.1"
}
}
apply plugin: com.google.cloud.artifactregistry.gradle.plugin.ArtifactRegistryGradlePlugin
しかし、私はそれを機能させることができないようです。私は 2 つのスニペットの可能な組み合わせを試したに違いありませんが、私の知る限りではありません。
ファイルで公開するリポジトリを指定できるように、これら 2 つのスニペットを配置する方法を誰かが教えてくれればinit.gradle
(または、まったく別の方法があるかもしれません)、非常に役に立ちます!