Skip to content

Gradle ArtifactoryPublish Task doesn't publish BOM modules #1496

@glenroy37

Description

@glenroy37

Describe the bug
We have a Gradle Module structure like this:
.
├── build.gradle
├── gradle
│   └── wrapper
│   ├── gradle-wrapper.jar
│   └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
├── project-bom
│   ├── build
│   │   └── publications
│   │   └── maven
│   │   ├── module.json
│   │   └── pom-default.xml
│   ├── build.gradle
│   ├── project-module1
│   │   ├── build
│   │   │   ├── libs
│   │   │   │   └── project-module1-1.0.1.jar
│   │   ├── build.gradle
│   ├── project-module2
│   │   ├── build
│   │   │   ├── libs
│   │   │   │   └── project-module2-1.0.1.jar
│   │   ├── build.gradle
├── project-test-bom
│   ├── build.gradle
│   └── project-test
│   ├── build
│   │   ├── libs
│   │   │   └── project-test-1.0.1.jar
│   └── build.gradle
...

When publishing with jf gradle artifactoryPublish, only the modules with a jar-file get uploaded to Artifactory.
So project-bom, which only was a pom-file, doesn't appear in the repository

To Reproduce
In a Gradle-Directory-Structure as above run:

jf c add default --url "${ARTIFACTORY_URL}" --user "${ARTIFACTORY_USER}" --password "${ARTIFACTORY_PASSWORD}" --interactive=false

jf gradlec --use-wrapper=true --server-id-resolve=default --server-id-deploy=default --repo-resolve=libs-release --repo-deploy="${ARTIFACTORY_DEPLOY_TO}"

jf gradle artifactoryPublish --build-name="${ARTIFACTORY_BUILD_NAME}" --build-number="${ARTIFACTORY_BUILD_NUMBER}" --project="${ARTIFACTORY_PROJECT_KEY}"

the resulting output is:

09:29:19 [Info] Running gradle...
09:29:19 [Info] Running gradle command: ./gradlew --init-script /home/jenkins/.jfrog/dependencies/gradle/4.26.0/gradle.init artifactoryPublish
Starting a Gradle Daemon (subsequent builds will be faster)
> Task :project-bom:project-module2:generateEffectiveLombokConfig
> Task :project-bom:project-module2:compileJava UP-TO-DATE
> Task :project-bom:project-module2:processResources UP-TO-DATE
> Task :project-bom:project-module2:classes UP-TO-DATE
> Task :project-bom:project-module2:jar UP-TO-DATE
> Task :project-bom:project-module2:generateMetadataFileForMavenJavaPublication
> Task :project-bom:project-module2:generatePomFileForMavenJavaPublication
> Task :project-bom:project-module2:artifactoryPublish
> Task :project-bom:project-module1:generateEffectiveLombokConfig
> Task :project-bom:project-module1:compileJava UP-TO-DATE
> Task :project-bom:project-module1:processResources UP-TO-DATE
> Task :project-bom:project-module1:classes UP-TO-DATE
> Task :project-bom:project-module1:jar UP-TO-DATE
> Task :project-bom:project-module1:generateMetadataFileForMavenJavaPublication
> Task :project-bom:project-module1:generatePomFileForMavenJavaPublication
> Task :project-bom:project-module1:artifactoryPublish
> Task :project-bom:artifactoryPublish
> Task :project-test-bom:project-test:generateEffectiveLombokConfig
> Task :project-test-bom:project-test:compileJava NO-SOURCE
> Task :project-test-bom:project-test:processResources NO-SOURCE
> Task :project-test-bom:project-test:classes UP-TO-DATE
> Task :project-test-bom:project-test:jar UP-TO-DATE
> Task :project-test-bom:project-test:generateMetadataFileForMavenJavaPublication
> Task :project-test-bom:project-test:generatePomFileForMavenJavaPublication
> Task :project-test-bom:project-test:artifactoryPublish
> Task :project-test-bom:artifactoryPublish
> Task :artifactoryPublish
> Task :extractModuleInfo
> Task :project-bom:extractModuleInfo
> Task :project-test-bom:extractModuleInfo
> Task :project-bom:project-module2:extractModuleInfo
> Task :project-bom:project-module1:extractModuleInfo
> Task :project-bom:project-validation:extractModuleInfo
> Task :project-bom:project-web:extractModuleInfo
> Task :project-test-bom:project-test:extractModuleInfo
[pool-1-thread-2] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-module1/1.0.0/project-module1-1.0.0.jar
[pool-1-thread-1] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-module2/1.0.0/project-module2-1.0.0.jar
[pool-1-thread-2] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-module1/1.0.0/project-module1-1.0.0.module
[pool-1-thread-1] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-module2/1.0.0/project-module2-1.0.0.module
[pool-1-thread-2] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-module1/1.0.0/project-module1-1.0.0.pom
[pool-1-thread-1] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-module2/1.0.0/project-module2-1.0.0.pom
[pool-1-thread-2] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-test/1.0.0/project-test-1.0.0.jar
[pool-1-thread-2] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-test/1.0.0/project-test-1.0.0.module
[pool-1-thread-2] Deploying artifact: https://artifactory.....at/artifactory/libs-release-local/at/.../project/project-test/1.0.0/project-test-1.0.0.pom
> Task :artifactoryDeploy

Expected behavior
The task :project-bom:artifactoryPublish uploads artifactory/libs-release-local/at/.../project/project-bom/1.0.0/project-bom-1.0.0.pom

Versions

  • JFrog CLI version: Newest from Debian repository
  • JFrog CLI operating system: Debian Bullseye Slim Docker image
  • Artifactory Version: 6.17.0

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions