Files
Kevin Minehart 047349638d CI: Run lerna bump version before yarn build (#107731)
lerna bump version before yarn build

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
2025-07-08 14:58:45 +02:00

35 lines
1.2 KiB
Go

package frontend
import (
"fmt"
"dagger.io/dagger"
)
func Build(builder *dagger.Container, version string) *dagger.Directory {
public := builder.
WithExec([]string{"/bin/sh", "-c", fmt.Sprintf("yarn lerna version %s --exact --no-git-tag-version --no-push --force-publish -y", version)}).
WithExec([]string{"yarn", "run", "build"}).
WithExec([]string{"/bin/sh", "-c", "find /src/public -type d -name node_modules -print0 | xargs -0 rm -rf"}).
Directory("/src/public")
return public
}
func BuildPlugins(builder *dagger.Container) *dagger.Directory {
public := builder.
WithExec([]string{"yarn", "install", "--immutable"}).
WithExec([]string{"/bin/sh", "-c", `if [ -d /src/plugins-bundled ]; then yarn run plugins:build-bundled; else mkdir /src/plugins-bundled; fi`}).
WithExec([]string{"/bin/sh", "-c", "find /src/plugins-bundled -type d -name node_modules -print0 | xargs -0 rm -rf"}).
Directory("/src/plugins-bundled")
return public
}
// WithYarnCache mounts the given YarnCacheDir in the provided container
func WithYarnCache(container *dagger.Container, vol *dagger.CacheVolume) *dagger.Container {
yarnCacheDir := "/yarn/cache"
c := container.WithEnvVariable("YARN_CACHE_FOLDER", yarnCacheDir)
return c.WithMountedCache(yarnCacheDir, vol)
}