hasura/graphql-engine · warning
skipping applying migrations on database '%s', encountered:
Error message
skipping applying migrations on database '%s', encountered: %w
What it means
Generic sibling of error 108: reading the migrations directory for a source failed with an error that is NOT a directory-not-found error (permission denied, IO error, etc.), and the database is skipped with the underlying error wrapped via %w.
Source
Thrown at cli/commands/migrate_apply.go:325
return "nothing to apply on database: " + o.Source.Name, nil
}
case errors.As(err, &errNotFound):
// check if the returned error is a directory not found error
// ie might be because a migrations/<source_name> directory is not found
// if so skip this
return "", herrors.E(
op,
fmt.Errorf(
"skipping applying migrations on database '%s', encountered: \n%s",
o.Source.Name,
errNotFound.Error(),
),
)
}
return "", herrors.E(
op,
fmt.Errorf(
"skipping applying migrations on database '%s', encountered: \n%w",
o.Source.Name,
err,
),
)
}
if len(o.Source.Name) == 0 && !o.EC.AllDatabases {
o.Source = o.EC.Source
}
err := o.Validate()
if err != nil {
return nil, herrors.E(op, err)
}
if o.EC.AllDatabases && o.EC.Config.Version >= cli.V3 {
o.EC.Spin("getting lists of databases from server ")View on GitHub (pinned to 724551b9ae)
Solutions
- Check permissions on the migrations/<source_name> directory (ls -la migrations/)
- Ensure it is a directory, not a file; recreate if corrupted
- Run from a writable checkout; fix volume mounts in containers
Defensive patterns
Strategy: fallback
Validate before calling
for d in migrations/*/; do test -r "$d" || echo "unreadable: $d"; done
Try / catch
if strings.Contains(err.Error(), "skipping applying migrations") { log.Warnf("skipped %s: %v", db, err) } Prevention
- Ensure the checkout holding migrations/ is writable and owned by the CI user
When it happens
Trigger: `hasura migrate apply` where reading migrations/<source_name> fails due to filesystem permissions, a file where a directory is expected, or corrupted files.
Common situations: Read-only mount in CI, ownership mismatch after copying a project, or a file named like the migrations directory.
Related errors
- skipping applying migrations on database '%s', encountered:
- error generating codegen for action %s: %w
- error in fetching codegen frameworks: %w
- error in copying starter kit: %w
- error in writing config: %w
AI-assisted analysis of hasura/graphql-engine@724551b9ae (2026-08-28).
Data as JSON: /api/errors/92b170e6a6ac7711.
Report an issue: GitHub.