hasura/graphql-engine · error
cannot write seeds directory: %w
Error message
cannot write seeds directory: %w
What it means
os.MkdirAll failed for the seeds directory (<ExecutionDir>/seeds) at the end of `hasura init` file creation.
Source
Thrown at cli/commands/init.go:342
plugins = append(plugins, metadataVersion.NewV3MetadataVersion(o.EC, o.EC.MetadataDir))
plugins = append(plugins, tables.New(o.EC, o.EC.MetadataDir))
plugins = append(plugins, functions.New(o.EC, o.EC.MetadataDir))
}
for _, plg := range plugins {
err := plg.CreateFiles()
if err != nil {
return errors.E(op, fmt.Errorf("cannot create metadata files: %w", err))
}
}
}
// create seeds directory
o.EC.SeedsDirectory = filepath.Join(o.EC.ExecutionDirectory, cli.DefaultSeedsDirectory)
err = os.MkdirAll(o.EC.SeedsDirectory, os.ModePerm)
if err != nil {
return errors.E(op, fmt.Errorf("cannot write seeds directory: %w", err))
}
return nil
}
func (o *InitOptions) Run() error {
var op errors.Op = "commands.InitOptions.Run"
context := &initCtx{
ec: o.EC,
initOps: o,
logger: o.EC.Logger,
err: nil,
}
configInitFSM := newInitFSM()
err := configInitFSM.SendEvent(createProjectDirectory, context)View on GitHub (pinned to 724551b9ae)
Solutions
- Verify no file named 'seeds' exists and the dir is writable
- Fix disk/permission problems and re-run init
- Init in a fresh writable directory
Defensive patterns
Strategy: validation
Validate before calling
if fi, err := os.Lstat(filepath.Join(dir, "seeds")); err == nil && !fi.IsDir() {
log.Fatal("'seeds' exists but is not a directory")
} Prevention
- Keep seeds path collision-free
- Verify writability of the project tree
When it happens
Trigger: Seeds directory cannot be created due to permissions, a conflicting file named 'seeds', or read-only filesystem.
Common situations: Same restricted-filesystem scenarios as other init mkdir errors; leftover file from earlier tooling at the seeds path.
Related errors
- error creating setup directories: %w
- cannot write migration directory: %w
- cannot write metadata directory: %w
- unable to create directory: %w
- prompt exited: %w
AI-assisted analysis of hasura/graphql-engine@724551b9ae (2026-08-28).
Data as JSON: /api/errors/09c2c0a0a9d74830.
Report an issue: GitHub.