Skip to content

Figure out how to cache quarkus-extension-plugin:generate-descriptor #2

@gsmet

Description

@gsmet

See

outputs.file("quarkus-extension.yaml", context.getProject().getBuild().getOutputDirectory() + "/META-INF/quarkus-extension.yaml");
.

I was able to write something to cache the extension descriptor generation except we have a big issue with it: the plugin is overwriting an existing file (quarkus-extension.yaml) which is not authorized by Develocity's cache (and that makes a lot of sense).

What we should do instead if have an input file and output file that are different. I'm not entirely sure how we could fix it in a backward compatible way. Note that we could fix it in some way for the Quarkus build and new extensions and keep the current behavior for all the extensions in the wild.

My inclination would be to move the descriptor out of src/main/resources so that it's not deployed in classes by the default Maven behavior. But maybe there are better options such as having the output file being something like quarkus-decorated.yaml but that would require some changes in external tooling?

/cc @aloubyansky

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions