Skip to content

[assembler] Let graalJdks in nativeImage be configured via matrix #1782

@aalmiray

Description

@aalmiray

Is your feature request related to a problem? Please describe.
Reduce duplication and verbosity in configuration file.

Describe the solution you'd like
The following configuration

assemble:
  nativeImage:
    helloworld:
      active: ALWAYS
      imageName: '{{distributionName}}-{{projectEffectiveVersion}}'
      matrix:
        rows:
          - { platform: osx-aarch_64,   suffix: OsxArm,       dir: '/Contents/Home' }
          - { platform: osx-x86_64,     suffix: OsxIntel,     dir: '/Contents/Home' }
          - { platform: linux-x86_64,   suffix: LinuxIntel,   dir: '' }
          - { platform: windows-x86_64, suffix: WindowsIntel, dir: '' }
      graalJdkPattern:
        path: '{{jdkPathPrefix}}/graalvm22{{matrix.suffix}}/{{graalFilePrefix}}{{matrix.dir}}'
      mainJar:
        path: 'target/{{distributionName}}-{{projectVersion}}.jar'

should be equivalent to this explicit configuration

assemble:
  nativeImage:
    helloworld:
      active: ALWAYS
      imageName: '{{distributionName}}-{{projectEffectiveVersion}}'
      mainJar:
        path: 'target/{{distributionName}}-{{projectVersion}}.jar'
      graalJdks:
        - path: '{{jdkPathPrefix}}/graalvm22OsxIntel/{{graalFilePrefix}}/Contents/Home'
          platform: 'osx-x86_64'
        - path: '{{jdkPathPrefix}}/graalvm22OsxArm/{{graalFilePrefix}}/Contents/Home'
          platform: 'osx-aarch_64'
        - path: '{{jdkPathPrefix}}/graalvm22LinuxIntel/{{graalFilePrefix}}'
          platform: 'linux-x86_64'
        - path: '{{jdkPathPrefix}}/graalvm22WindowsIntel/{{graalFilePrefix}}'
          platform: 'windows-x86_64'

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestreleasedIssue has been released

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions