licensee icon indicating copy to clipboard operation
licensee copied to clipboard

Add ability to set Configuration for licensee

Open lhwdev opened this issue 3 years ago • 3 comments

I have one copy-pasted dependency which is not (should not) included in configuration, but I need it to included in information so that it is validated and included into artifacts.json. I think it would be great if I:

  • can add custom dependency, like
    licensee {
      addDependency("a:b:c")
    }
    
    (but this seems hard to implement and has poor extensibility)
  • can set Configuration that is used to validate licenses.
    // do custom stuff with myConfiguration
    licensee {
      /* this. */ extraConfigurations += project.configurations["myConfiguration"] // or extraConfiguration = ...
    }
    
    This dummy configuration is only used for licensee, not used for dependencies or something.

lhwdev avatar Jan 04 '22 15:01 lhwdev

Hmm the proposed DSL doesn't really scale to the different usages of the plugin. In projects with Android, Kotlin multiplatform, or the combination of both there is a matrix of configurations which are used and sourced from the plugins themselves.

I'll have to think about this case.

JakeWharton avatar Jan 04 '22 16:01 JakeWharton

I see. So, how about combining the extra configurations, like

  • common configuration
  • Android specific one
  • KMP one

So if you use KMP + Android, you get all three configurations above combine. Eventually just adding two List<Configuration>. I think replacing original configuration is not needed(we have ignoreDependency), so we only need to do this for extra configurations.

lhwdev avatar Jan 04 '22 16:01 lhwdev

This is now possible by creating your own licensee tasks by using the configrationToCheck function, see #191.

hfhbd avatar May 03 '23 08:05 hfhbd