Skip to content

implement reusable workflows for module integration testing#75

Merged
AlexanderLanin merged 8 commits into
eclipse-score:mainfrom
etas-contrib:feature/1852-prepare-script-for-integration-feedback-on-PR
Jan 16, 2026
Merged

implement reusable workflows for module integration testing#75
AlexanderLanin merged 8 commits into
eclipse-score:mainfrom
etas-contrib:feature/1852-prepare-script-for-integration-feedback-on-PR

Conversation

@kgraeper

Copy link
Copy Markdown
Contributor

@github-actions

Copy link
Copy Markdown

The created documentation from the pull request is available at: docu-html

@kgraeper kgraeper requested a review from Copilot January 13, 2026 13:41

This comment was marked as outdated.

required: false
type: string
default: 'bl-x86_64-linux'
ref_int_ref:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't get these two: ref_int_ref and 'ref_int_repo`

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ref = commit/branch/tag ?!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it's target_branch_in_integration?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is about referencing the ref_int repo. Mainly I need ref for the checkout later. The repo is to enable users to use this workflow also in a private clone.

ref_int_ref = commit/branch/tag
ref_int_repo = eclipse-score/reference_integration (or your private org)

@dcalavrezo-qorix

Copy link
Copy Markdown
Contributor

LGTM, but it wouldn't hurt to add some documentation about the usage.

Maybe add a section in the README?

Comment thread .github/workflows/module-integration-build.yml Outdated
Comment thread .github/workflows/reusable_integration-build.yml
Comment thread .github/workflows/reusable_smoke-test.yml
Comment thread .github/workflows/reusable_smoke-test.yml
Comment thread .github/workflows/module-smoke-test.yml Outdated
Comment thread tools/override_known_good_repo.py Outdated
Comment thread tools/override_known_good_repo.py Outdated
Comment thread tools/override_known_good_repo.py Outdated
Comment thread tools/override_known_good_repo.py Outdated
Comment thread known_good.updated.json Outdated
- Refactor Python tooling to use shared Module dataclass
  * Created tools/models/module.py with centralized module schema
  * Added methods: from_dict, parse_modules, owner_repo, to_dict
  * Migrated scripts to use dataclass: update_module_latest.py,
    update_module_from_known_good.py, override_known_good_repo.py,
    known_good_to_workspace_metadata.py, get_module_info.py
  * Eliminates duplicate parsing logic across tools

- Clean up override_known_good_repo.py
  * Renamed --repo-override to --module-override
  * Removed backward compatibility for deprecated flags
  * Extracted write_known_good() function for better reusability
  * Updated examples to reflect supported formats only

- Improve workflow documentation
  * Clarified ref_int_repo and ref_int_ref semantics in smoke-test workflow
  * Added detailed usage notes for private fork support
  * Updated workflow steps to use --module-override flag
  * Enhanced input descriptions for runner label selection

- Remove generated artifact from git
  * Deleted known_good.updated.json (build output)

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 5 comments.

Comments suppressed due to low confidence (1)

tools/update_module_latest.py:102

  • Inconsistency in branch serialization. In write_known_good, the branch is always written if present, but in Module.to_dict() (line 108 of module.py), the branch is only written if it differs from 'main'. This inconsistency can lead to the branch field being included unnecessarily in the output, conflicting with the Module class's design. Consider using m.to_dict() or only writing branch when it's not 'main'.
		if m.branch:
			mod_dict["branch"] = m.branch

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tools/update_module_from_known_good.py Outdated
Comment thread tools/override_known_good_repo.py Outdated
Comment thread scripts/integration_test.sh
Comment on lines +109 to +112
# Output the content as a JSON string
echo "known_good_updated<<EOF" >> $GITHUB_OUTPUT
cat known_good.updated.json >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT

Copilot AI Jan 16, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using multiline output for potentially large JSON content could hit GitHub Actions output size limits for large known_good.json files. Consider using artifacts exclusively for passing this data between jobs instead of job outputs, as artifacts are already being uploaded at line 120-123.

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can live with both solutions. @AlexanderLanin what is your opinion?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Artifacts between actions is most likely best as that could also enable you (depending on how it's set up) to download them and see what is going wrong.
At least I think that is an option then.

Comment thread .github/workflows/reusable_integration-build.yml
required: false
type: string
default: 'bl-x86_64-linux'
repo_runner_labels:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is the runner provided by the caller, or would it be better here in env?

# "[\"self-hosted\",\"linux\",\"x64\"]").
# - target_branch (string, optional, default: main): Ref/branch to checkout.
#
# Repository Variables:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any idea from which repo this is used? The caller, this one, or reference_integration?

@AlexanderLanin AlexanderLanin merged commit a443083 into eclipse-score:main Jan 16, 2026
11 checks passed
@AlexanderLanin AlexanderLanin deleted the feature/1852-prepare-script-for-integration-feedback-on-PR branch January 16, 2026 16:29
rmaddikery pushed a commit to rmaddikery/reference_integration that referenced this pull request Mar 9, 2026
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.

prepare script for integration feedback on PR

5 participants