Polymer-client : gradle build : publish to artifactory

We are using artifactory to publish the build artifacts.

When we add a polymer client module to the project then we get following exception while building:

Configuration named 'archives' does not exist for project ':app-polymer-client'

We use following build extension to publish the artifacts

allprojects {
    apply plugin: "com.jfrog.artifactory"
}
artifactoryPublish.skip = true

artifactory {
    contextUrl = "${artifactory_contextUrl}"
    publish {
        repository {
            repoKey = 'gradle-build'
            username = "${artifactory_user}"
            password = "${artifactory_password}"
            maven = true
        }
        defaults {
            publishConfigs('archives') // we always use archives

            publishArtifacts = true
            publishBuildInfo = true
            publishPom = true
            publishIvy = false
        }
    }
}

How we can add an configuration named ‘archives’ to the polymerClientModule configuration?

How we can add further the generation of a deployable web archive for the Polymer client?

Something like?

apply plugin: 'war'

...

war {
    archiveName = 'WebDeployment.war'
    into 'polymer-client', {
        from 'build-dir-polymer-client'
    }
}

Hi,

Thanks for reporting the problem, we’ll fix publishing Polymer client artifacts in further releases (issue).

Meanwhile you can try the following workaround in your build.gradle:

configure(polymerClientModule) {
    group = 'com.example' // use the same as in `cuba` block in the beginning of build.gradle
    version = '0.1'
...
    apply plugin: 'war'
    apply plugin: 'maven'
...
//rename assemble task to buildPolymer
    task buildPolymer(type: NodeTask, dependsOn: installBowerPackages) { 
        script = file("node_modules/polymer-cli/bin/polymer")
        args = ['build']
        inputs.dir "./"
        outputs.dir "build"
    }

    assemble.dependsOn buildPolymer
...
    war {
        from 'build/es6-unbundled' // specify Polymer build target folder
    }
}