Skip to content

SHACL CI: check out CGMES-AP and NC-AP directly - #404

Open
BenedekFodor wants to merge 1 commit into
cgmes-3.0_ncp-2.5_tc-2.1from
fix/apl-split-checkout
Open

BenedekFodor wants to merge 1 commit into
cgmes-3.0_ncp-2.5_tc-2.1from
fix/apl-split-checkout

Conversation

@BenedekFodor

Copy link
Copy Markdown
Collaborator

Problem

Every SHACL validation run since 15 Oct 2026 fails before validating anything (e.g. #402, #403):

cgmes-3.0: empty PROF map at .../.apl-main

On 15 Oct entsoe/application-profiles-library moved CGMES/ and NCP/ into separate repositories and linked them back as git submodules (entsoe/CGMES-AP, entsoe/NC-AP). The workflow checked out the library without submodules, so .apl-main/CGMES/PROF and .apl-main/NCP/PROF were empty. Inside the submodule repos the files also sit one folder deeper (CGMES/CGMES/PROF), so a recursive checkout alone would not match prof_map.py either.

Fix

  • Workflow checks out entsoe/CGMES-AP → .apl-cgmes and entsoe/NC-AP → .apl-ncp, and passes --apl cgmes-3.0=.apl-cgmes --apl ncp-2.5=.apl-ncp. Their CGMES/ / NCP/ top-level layout matches prof_map.py as it is; the hard-coded CGMES_COMMON_SHACL / NC_COMMON_SHACL paths exist in the new repos.
  • validate_instances.py: default paths, docstring and --apl help updated (no logic change).
  • CLAUDE.md: local-run instructions clone the two AP repos.
  • .gitignore: ignores .apl-cgmes/ and .apl-ncp/.

Testing

Not run locally (no uv on the machine). The push run of this branch exercises the workflow change; once merged, #402 and #403 need a re-push or rebase to re-run the check (the workflow triggers on push only).

Note: the AP repos are still checked out at their default branch, unpinned — same exposure to upstream layout changes as before.

🤖 Generated with Claude Code

Since 2026-10-15 entsoe/application-profiles-library links CGMES/ and NCP/
as submodules (entsoe/CGMES-AP, entsoe/NC-AP). The workflow checked out the
library without submodules, so .apl-main/{CGMES,NCP}/PROF were empty and
validate_instances.py stopped with "cgmes-3.0: empty PROF map". Inside the
submodules the files also sit one folder deeper, so even a recursive
checkout would not match the paths prof_map.py expects.

Check out the two AP repos into .apl-cgmes and .apl-ncp instead; their
CGMES/ and NCP/ top-level layout matches prof_map.py unchanged. Update the
script defaults, CLAUDE.md local-run instructions and .gitignore to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Fbeni <fodor.benedek@gmail.com>
@HarisVranaj
HarisVranaj changed the base branch from cgmes-3.0_ncp-2.5_tc-2.0 to cgmes-3.0_ncp-2.5_tc-2.1 October 29, 2026 13:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants