Skip to content

Gradle Configuration Cache Support #107

@mpern

Description

@mpern

Configuration Cache

  • Remove HybrisPluginExtension.platform - it's stateful and fundamentally incompatible with configuration cache
    • ValueSource as potential workaround?
  • Ensure reading of build.number is properly declared, otherwise platform unpack is broken
  • Check usage of mpern.sap.commerce.build.util.Version across the code base
    • all tasks that require the current platform version must properly define it as Task Input
      • maybe one (internal) task to read it and provide an @Output with the version? 🤔
      • or provide a custom ValueSource Instead?
    • a custom serialization strategy for Version might be necessary to properly store it in build cache (see also Integrity Checks, Java Object Serialization)
    • Plan B: only use it at execution time, so task configuration only dependsd on e.g. Strings or other primitives.
  • Verify/double-check CCV2.manifiest property if it is correctly serialized/desrialized to cache and even more importantly, properly invalidated if the file changes
    • most likely needs another internal tas that declares the file read and provides a manifest @output and updates the CCv2 extension l
    • open question: invalidate cached extension how?
    • or provide a custom ValueSource Instead?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions