我已经设置了Artifactory(4.1.2)的实例,我用它来存储java文物.我使用如下配置的gradle插件将工件推送到实例
artifactory {
contextUrl = 'http://example.com/artifactory'
publish {
repository {
// The Artifactory repository key to publish to
repoKey = 'libs-release-local'
username = artifactory_username
password = artifactory_password
}
defaults {
publications('releaseJar')
}
}
}
Run Code Online (Sandbox Code Playgroud)
我希望能够防止按版本覆盖已部署的人工制品.这似乎是一个共同的要求,文档说
您可以通过不授予"删除"权限来阻止用户或组覆盖已部署的版本或唯一快照.可以始终覆盖非唯一快照(前提是已授予"部署"权限).
但是,我已经设置了一个
具有相关权限的deploy用户组.1 | deployers1 | CanDeploy
该CanDeploy权限仅具有Deploy/Cache该deployers组的权限.
然而!我可以使用将覆盖的工件覆盖到我心中的内容gradle artifactoryPublish.
任何建议都会感激不尽:)
编辑:自问这个问题后,功能已开始按预期工作.这非常奇怪,因为我根本没有更改Artifactory设置,但现在403当我尝试上传与已部署的版本号相同的工件时返回.我只能假设在访问权限的缓存方面存在一些奇怪的东西,或者某些东西导致我通过Web UI进行的更改在一两天内无效 - 令人不安但它目前正在工作.在我确保其工作的同时,会暂时提出问题!
检查权限设置的最简单方法是在浏览器 UI 中的“有效权限”选项卡中。选择“releaseJar”存储库时,如果您看到“deploy”用户选中了“删除”权限,那么您可能有另一个权限目标向该用户授予删除权限。您可以在“用户”页面查看单个用户使用的权限目标列表。希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
808 次 |
| 最近记录: |