cue modules: move stdlib to pkg/alpha.dagger.io
In preparation for Europa, we will vendor multiple CUE modules: - `pkg/alpha.dagger.io`: legacy non-europa packages - `pkg/dagger.io`: core Europa packages - `pkg/universe.dagger.io`: Europa universe Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
This commit is contained in:
parent
e5316f3a1e
commit
282759c0e5
@ -21,7 +21,7 @@ import (
|
||||
"go.dagger.io/dagger/cmd/dagger/logger"
|
||||
"go.dagger.io/dagger/compiler"
|
||||
"go.dagger.io/dagger/environment"
|
||||
"go.dagger.io/dagger/stdlib"
|
||||
"go.dagger.io/dagger/pkg"
|
||||
"golang.org/x/term"
|
||||
)
|
||||
|
||||
@ -315,7 +315,7 @@ func init() {
|
||||
|
||||
func loadCode(packageName string) (*compiler.Value, error) {
|
||||
sources := map[string]fs.FS{
|
||||
stdlib.Path: stdlib.FS,
|
||||
path.Join("cue.mod", "pkg"): pkg.FS,
|
||||
}
|
||||
|
||||
src, err := compiler.Build("/config", sources, packageName)
|
||||
@ -333,20 +333,23 @@ func walkStdlib(ctx context.Context, output, format string) {
|
||||
lg.Info().Str("output", output).Msg("generating stdlib")
|
||||
|
||||
packages := map[string]*Package{}
|
||||
err := fs.WalkDir(stdlib.FS, ".", func(p string, d fs.DirEntry, err error) error {
|
||||
err := fs.WalkDir(pkg.FS, pkg.AlphaModule, func(p string, d fs.DirEntry, err error) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if p == "." || !d.IsDir() || d.Name() == "cue.mod" {
|
||||
|
||||
if p == "." || d.Name() == pkg.AlphaModule || !d.IsDir() || d.Name() == "cue.mod" {
|
||||
return nil
|
||||
}
|
||||
|
||||
p = strings.TrimPrefix(p, pkg.AlphaModule+"/")
|
||||
|
||||
// Ignore tests directories
|
||||
if d.Name() == "tests" {
|
||||
return nil
|
||||
}
|
||||
|
||||
pkgName := fmt.Sprintf("%s/%s", stdlib.ModuleName, p)
|
||||
pkgName := fmt.Sprintf("%s/%s", pkg.AlphaModule, p)
|
||||
lg.Info().Str("package", pkgName).Str("format", format).Msg("generating doc")
|
||||
val, err := loadCode(pkgName)
|
||||
if err != nil {
|
||||
|
@ -9,7 +9,7 @@ import (
|
||||
|
||||
"github.com/gofrs/flock"
|
||||
"github.com/rs/zerolog/log"
|
||||
"go.dagger.io/dagger/stdlib"
|
||||
"go.dagger.io/dagger/pkg"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -17,7 +17,7 @@ const (
|
||||
)
|
||||
|
||||
func isUniverse(repoName string) bool {
|
||||
return strings.HasPrefix(strings.ToLower(repoName), stdlib.ModuleName)
|
||||
return strings.HasPrefix(strings.ToLower(repoName), pkg.AlphaModule)
|
||||
}
|
||||
|
||||
// IsUniverseLatest check that current universe is up-to-date or no
|
||||
@ -32,7 +32,7 @@ func IsUniverseLatest(ctx context.Context, workspace string) (bool, error) {
|
||||
return false, err
|
||||
}
|
||||
|
||||
req, err := newRequire("alpha.dagger.io", UniverseVersionConstraint)
|
||||
req, err := newRequire(pkg.AlphaModule, UniverseVersionConstraint)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ import (
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"go.dagger.io/dagger/stdlib"
|
||||
"go.dagger.io/dagger/pkg"
|
||||
)
|
||||
|
||||
type Require struct {
|
||||
@ -27,7 +27,7 @@ func newRequire(repoName, versionConstraint string) (*Require, error) {
|
||||
switch {
|
||||
case strings.HasPrefix(repoName, "github.com"):
|
||||
return parseGithubRepoName(repoName, versionConstraint)
|
||||
case strings.HasPrefix(repoName, stdlib.ModuleName):
|
||||
case strings.HasPrefix(repoName, pkg.AlphaModule):
|
||||
return parseDaggerRepoName(repoName, versionConstraint)
|
||||
case strings.Contains(repoName, ".git"):
|
||||
return parseGitRepoName(repoName, versionConstraint)
|
||||
@ -56,7 +56,7 @@ func parseGithubRepoName(repoName, versionConstraint string) (*Require, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
var daggerRepoNameRegex = regexp.MustCompile(stdlib.ModuleName + `([a-zA-Z0-9/_.-]*)@?([0-9a-zA-Z.-]*)`)
|
||||
var daggerRepoNameRegex = regexp.MustCompile(pkg.AlphaModule + `([a-zA-Z0-9/_.-]*)@?([0-9a-zA-Z.-]*)`)
|
||||
|
||||
func parseDaggerRepoName(repoName, versionConstraint string) (*Require, error) {
|
||||
repoMatches := daggerRepoNameRegex.FindStringSubmatch(repoName)
|
||||
@ -66,7 +66,7 @@ func parseDaggerRepoName(repoName, versionConstraint string) (*Require, error) {
|
||||
}
|
||||
|
||||
return &Require{
|
||||
repo: stdlib.ModuleName,
|
||||
repo: pkg.AlphaModule,
|
||||
path: repoMatches[1],
|
||||
version: repoMatches[2],
|
||||
versionConstraint: versionConstraint,
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user