-
Notifications
You must be signed in to change notification settings - Fork 6
Description
The package executor attempts to collect the build outputs from dependent resource projects to the Forge app output path. To do so, it currently requires that all dependent projects have a build target named build. We should make this configurable because, for example, the @nx/webpack plugin has started naming its generated build target webpack:build instead of build since Nx 19.
Technically, we must assume that each dependent resource project could have its own custom build target name configuration. If the build target names are inconsistent across dependent resource projects, we should require the user to configure the package executor's resourceOutputPathMap option directly. Or is there a case for adding a buildTargetNameMap to map resource projects to different build target names?
The implementation of this issue should include two things:
- Make the build target name configurable, i.e., add a
buildTargetNameconfiguration to the executor configuration. - The package executor calls the
getResourceOutputPathmethod which in turn calls thegetOutputsForTargetAndConfigurationmethod from the @nx/devkit. The @nx/devkit method throws if it cannot find the specified target. At the moment, we assume the target must be calledbuild. We should catch the thrown error and provide a helpful error message instead. The message could either suggest configuring the build target to match the configuration from 1. or manually mapping the output path using theresourceOutputPathMapoption.