16

Running all @microsoft/sp-* packages @1.3.4

When I run gulp package-solution --ship, I get the following error message:

Error - Error: The webparts manifests list is empty. Please ensure you have done a build and that your config file is pointed at the correct folder.
Error - Error: The webparts manifests list is empty. Please ensure you have done a build and that your config file is pointed at the correct folder.
    at Object.createPackage [as default] (C:/projects/spfx-rest-api-wepart/node_modules/@microsoft/sp-build-web/node_modules/@microsoft/sp-build-core-tasks/lib/packageSolution/packageSolution/createPackage.js:25:19)
    at DestroyableTransform._flush (C:/projects/spfx-rest-api-wepart/node_modules/@microsoft/sp-build-web/node_modules/@microsoft/sp-build-core-tasks/lib/packageSolution/PackageSolutionTask.js:74:36)
    at DestroyableTransform.<anonymous> (C:/projects/spfx-rest-api-wepart/node_modules/through2/node_modules/readable-stream/lib/_stream_transform.js:138:49)
    at DestroyableTransform.g (events.js:292:16)
    at emitNone (events.js:86:13)
    at DestroyableTransform.emit (events.js:185:7)
    at prefinish (C:/projects/spfx-rest-api-wepart/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:596:14)
    at finishMaybe (C:/projects/spfx-rest-api-wepart/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:604:5)
    at endWritable (C:/projects/spfx-rest-api-wepart/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:615:3)
    at DestroyableTransform.Writable.end (C:/projects/spfx-rest-api-wepart/node_modules/through2/node_modules/readable-stream/lib/_stream_writable.js:571:41)
    at DestroyableTransform.onend (C:/projects/spfx-rest-api-wepart/node_modules/vinyl-fs/node_modules/readable-stream/lib/_stream_readable.js:523:10)
    at DestroyableTransform.g (events.js:292:16)
    at emitNone (events.js:91:20)
    at DestroyableTransform.emit (events.js:185:7)
    at C:/projects/spfx-rest-api-wepart/node_modules/vinyl-fs/node_modules/readable-stream/lib/_stream_readable.js:965:16
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
Error - 'package-solution' sub task errored after 20 ms
 No manifests were found in 'temp/deploy/*.json'. Ensure a build has completed successfully and that paths.manifestsMatch is correct

Thing is, I have successfully run gulp build --ship, gulp bundle and gulp build many times. So, I don't know why I'm getting this particular error message.

The yeoman generator created the temp directory, but did not create temp/deploy.

The error message mentions ensuring "that your config file is pointed at the correct folder". What does this mean? Is it referring to bundles.webpart-bundle.components.entrypoint? Or bundles.webpart-bundle.components.manifest? Or other?

For manifest files, I see config/write-manifests.json.

There is also src/webparts/SpfxRestApiWebPart/SpfxRestApiWebPart.manifest.json, which yeoman created, and which has 'schema', 'id', 'alias', 'componentType', 'version, 'manifestVersion', 'requiresCustomScript' and 'preconfiguredEntries' fields both defined and assigned (so, it is not what I would call "empty", as the error message states...).

Then, there is temp/manifests.json, which is 620 lines long. Looks like a file that shouldn't be modified by me, so I'm not going to touch it.

Any ideas? Would love to be able to deploy a package to our on-prem installation.

Thanks!

stackleit
  • 675
  • 1
  • 6
  • 13

1 Answers1

38

The JSON files that gulp package-solution --ship looks for are created by first running gulp bundle --ship. Failure to run the bundle command prior to invoking package-solution will cause the package-solution command to fail, as shown in the OP.

This is not exactly obvious. The error message (shown in the OP) prompts the user to ensure they have completed a build -- it makes no mention of completing a bundle. Microsoft might want to update that message.

I might even take a look at updating the gulp task locally, so that package-solution includes its own invocation of bundle, for the sake of sanity.

stackleit
  • 675
  • 1
  • 6
  • 13