标签: artifactory

如何将Jenkinsfile设置为上传maven工件到Artifactory

我的.Jenkins文件是这样的:

properties([[$class: 'GitLabConnectionProperty', gitLabConnection: 'gitlab@srv']])
node {
  env.JAVA_HOME = tool 'JDK 7'
  def mvnHome = tool 'Maven 3.2.2'
  def nodeJS = tool 'IA_NodeJS'
  env.PATH = "${mvnHome}/bin:${nodeJS}/bin:${env.JAVA_HOME}/bin:${env.PATH}"

  stage ('checkout') {
    checkout scm
  }

  stage ('build') {
    gitlabCommitStatus("build") {
      // your build steps
      sh 'mvn clean install -Denv=dev -P !faster'
    }
  }

  stage ('upload') {
    gitlabCommitStatus("upload") {
      def server = Artifactory.server "artifactory@ibsrv02"
      def buildInfo = Artifactory.newBuildInfo()
      buildInfo.env.capture = true
      buildInfo.env.collect()

      def uploadSpec = """{
        "files": [
          {
            "pattern": "**/target/*.jar",
            "target": "libs-snapshot-local"
          }, …
Run Code Online (Sandbox Code Playgroud)

artifactory maven jenkins jenkins-pipeline

7
推荐指数
1
解决办法
1万
查看次数

Artifactory AQL 删除空文件夹

如何使用 Artifactory AQL 删除空文件夹(没有任何内容的文件夹)?

我有当前的 AQL 查询来查找早于 12w 且从未下载的文件,我将通过脚本删除这些文件。

items.find(
    {
        "repo":{"$eq":"libs-release-local"},
        "stat.downloads":{"$eq":null},
        "created":{"$before" : "12w"},
    }
)
Run Code Online (Sandbox Code Playgroud)

这给我留下了空文件夹,如何指定查找所有空文件夹的 AQL 查询?

artifactory artifactory-query-lang

7
推荐指数
1
解决办法
2651
查看次数

我可以忽略这个关于没有 API KEY 的 nuget 警告吗?

当推动时我看到这个:

nuget push blah.1.0.0.nupkg -source repo
WARNING: No API Key was provided and no API Key could be found for 'https://meeee.jfrog.io/meeee/api/nuget/repo'. To save an API Key for a source use the 'setApiKey' command.
Pushing blah.1.0.0.nupkg to 'https://meeee.jfrog.io/meeeee/api/nuget/repo'...
  PUT https://meeee.jfrog.io/meeee/api/nuget/repo/
  Created https://meeee.jfrog.io/meeee/api/nuget/repo/ 8585ms
Run Code Online (Sandbox Code Playgroud)

仍然有效,并且它必须使用 API 密钥,否则我的访问会被拒绝 - 所以我不确定它警告我什么。也许是因为我没有默认的机器范围 API 密钥?我必须添加包含用户名和密码的 nuget 源,因为 nuget 很混乱,如果不为每个源设置默认 API 密钥,则不会为其提取默认 API 密钥。

我还注意到,即使我连续多次上传相同的包,它仍然会上传它 - 我想也许 Artifactory 会看到它是相同的,而不上传或告诉我?

artifactory nuget nuget-package

7
推荐指数
1
解决办法
3983
查看次数

Jenkins 离线安装插件

在 Linux 服务器上安装了 Jenkins,想手动安装一些插件。

我想安装 Blue Ocean 和 Artifactory。

对于这两个插件,我都下载了 hpi 文件并尝试安装它,但是我遇到了很多依赖项错误。

我现在是否也必须手动安装这些依赖项?或者有更好的方法来做到这一点?

我尝试安装这些依赖项之一,并且该依赖项也有一些依赖项错误:-(

Linux 服务器无法访问 Internet。

谢谢!

罗伯特

plugins artifactory jenkins jenkins-blueocean

7
推荐指数
2
解决办法
1万
查看次数

JFrog Artifactory中本地仓库、远程仓库和虚拟仓库有什么区别

有人可以解释一下 JFrog Artifactory 中这 3 种类型的本地、远程和虚拟存储库是什么。,我没有从 JFrog Artifactory 文档中清楚地了解它。

https://www.jfrog.com/confluence/display/RTF/Configuring+Repositories

artifactory

7
推荐指数
1
解决办法
3314
查看次数

使用私有存储库时在 Rider 中缓慢恢复/更新/安装

每当我需要从私有存储库更新或安装 nuget 包时,Rider 都会尝试从该存储库获取我的解决方案中每个已恢复的包。这使得这个过程非常缓慢。

Rider 中的后台任务

artifactory nuget rider

7
推荐指数
0
解决办法
231
查看次数

openSUSE zypper 错误 - 在指定的 URL 中找不到有效的元数据,无法确定存储库类型

我有一个RPM repository运行JFrog Artifactory。CentOS 和 RHEL 主机正在使用它,我也想将它与我的 openSUSE 主机一起使用。

JFrog 的这份文档没有明确说明只支持 yum 客户端,并且由于他们使用了术语RPM repository,对我来说这表明存储库也应该与zypper客户端一起使用。

这是一个关于源代码的opensuse文档repomd/rpm md/YUM,使用该createrepo命令创建的 openSUSE 主机上的存储库的视觉检查看起来与 JFrog RPM 存储库布局一致。

opensuse:~ # ll /data/internalrepo/
total 1157456
-rw-r--r-- 1 root root 1185231772 Apr 22 08:54 myapp-server-2019.0.x86_64.rpm
drwxr-xr-x 1 root root        494 Apr 22 08:55 repodata
opensuse:~ # ll /data/internalrepo/repodata/
total 324
-rw-r--r-- 1 root root   1901 Apr 22 08:55 6a654dd3c11ae0f51efd9cd3fd09ccfdc3c48e988ab886c370e94f7f5bcdf3d1-primary.xml.gz
-rw-r--r-- 1 root root 315545 …
Run Code Online (Sandbox Code Playgroud)

repository opensuse artifactory zypper sles

7
推荐指数
1
解决办法
1296
查看次数

不允许用户使用 Gradle 将“.json”部署到 Artifactory

我正在尝试使用 gradle 将项目 jar 部署到 JFrog Artifactory 中。该build.gradle文件如下所示(部署所需的部分):

buildscript {
 repositories {
    jcenter()
}
dependencies {
    classpath "org.jfrog.buildinfo:build-info-extractor-gradle:4.16.1"
}
 configurations.classpath {
    resolutionStrategy {
        cacheDynamicVersionsFor 0, 'seconds'
        cacheChangingModulesFor 0, 'seconds'
    }
 }
}

plugins {
  id 'java'
  id 'com.jfrog.artifactory' version '4.16.1'
  id 'maven-publish'
}


repositories {
   mavenCentral()
   mavenLocal()
   repositories {
     mavenCentral()
     maven {
        url "<artifactoryPath>/artifactory/gcc-maven/"
        credentials {
            username = "${artifactory_user}"
            password = "${artifactory_password}"
        }
    }
}

publishing {
  publications {
    mavenJava(MavenPublication) {
        groupId group
        version version
        from components.java
    } …
Run Code Online (Sandbox Code Playgroud)

java jar artifactory gradle

7
推荐指数
2
解决办法
5500
查看次数

使用 Artifactory 依赖项时 VS Code Java 语言支持中的“未解决的依赖项”/“无法解析导入”

我们有一堆私有 Java 依赖项发布到 Artifactory。我们正在使用 Gradle 来构建我们的项目。

\n

问题是 VSCode 对 Java 的语言支持无法识别build.gradleJava 源代码中的依赖项/导入。

\n

注意:下面的所有代码片段均完全从源代码/VS Code 消息中复制粘贴,但公司域被替换为 mycompany.com 且 Artifactory 凭证被编辑。

\n

我在 Java 源代码中看到的错误是:

\n
The import com.mycompany.observability cannot be resolved\n
Run Code Online (Sandbox Code Playgroud)\n
MycompanyLogger cannot be resolved\n
Run Code Online (Sandbox Code Playgroud)\n

这是有错误的 Java 文件:

\n
package com.mycompany.sample;\n\nimport com.mycompany.observability.logging.MycompanyLogger;\n\npublic class SampleApplication {\n\n  public static void main(String[] args) {\n    MycompanyLogger.setServiceName("SERVICE_NAME");\n  }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

以及以下错误build.gradle

\n
Unresolved dependency: com.mycompany:core-observability-spring:0.0.37\n
Run Code Online (Sandbox Code Playgroud)\n

这是build.gradle文件:

\n
plugins {\n    id 'io.spring.dependency-management' version '1.0.9.RELEASE'\n    id 'org.springframework.boot' version …
Run Code Online (Sandbox Code Playgroud)

java artifactory gradle visual-studio-code

7
推荐指数
1
解决办法
6945
查看次数

JFrog Artifactory:构建、打包和工件之间的区别

我正在寻找一个明确的定义,但还没有找到。我找到了一个帖子,例如这个,但许多其他帖子不完整或未得到答复。我只是想知道构建、包和工件之间的区别。我不知道这些在不同平台上是否意味着不同的东西,但是 FWIW,我正在使用 JFrog。

continuous-integration artifactory

7
推荐指数
1
解决办法
2287
查看次数