mirror of
https://github.com/grafana/grafana.git
synced 2025-07-29 23:52:19 +08:00

lerna bump version before yarn build Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
35 lines
1.2 KiB
Go
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)
|
|
}
|