KaotoIO / kaoto

The UI of the Kaoto project
https://kaoto.io
Apache License 2.0
29 stars 23 forks source link

Cache the camel-catalog artifact in GitHub actions #11

Open lordrip opened 1 year ago

lordrip commented 1 year ago

Context

In order to build @kaoto-next/ui, @kaoto-next/camel-catalog needs to be built first.

Run yarn workspace @kaoto-next/ui run build
Error: R] Failed to resolve entry for package "@kaoto-next/camel-catalog". The package may have incorrect main/module/exports specified in its package.json. [plugin externalize-deps]

    ../../node_modules/esbuild/lib/main.js:13[7](https://github.com/KaotoIO/kaoto-next/actions/runs/5811727443/job/15755586382?pr=10#step:5:8)3:27:
      1373 │         let result = await callback({
           ╵                            ^

    at packageEntryFailure (file:///home/runner/work/kaoto-next/kaoto-next/node_modules/vite/dist/node/chunks/dep-df561101.js:2[8](https://github.com/KaotoIO/kaoto-next/actions/runs/5811727443/job/15755586382?pr=10#step:5:9)6[9](https://github.com/KaotoIO/kaoto-next/actions/runs/5811727443/job/15755586382?pr=10#step:5:10)1:[11](https://github.com/KaotoIO/kaoto-next/actions/runs/5811727443/job/15755586382?pr=10#step:5:12))
...

Originally posted by @igarashitm in https://github.com/KaotoIO/kaoto-next/issues/10#issuecomment-1671984608

This can be fixed by running a yarn command like the following:

yarn workspaces foreach --topological-dev --verbose run build

but it would be better to cache the result of said artifact in order to avoid building it everytime

Goal

Provide a cache mechanism, at the GitHub action level, that caches the @kaoto-next/camel-catalog built artifact. (the packages/camel-catalog/dist folder)

lordrip commented 1 year ago

~Once this is done, this pull request can be open again: https://github.com/KaotoIO/kaoto-next/pull/16~