Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Docs] CI for variables.yaml + CI for docs update #2457

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

luarss
Copy link
Contributor

@luarss luarss commented Oct 13, 2024

Tracked in #2452

Fixes #2444

Copy link
Collaborator

@oharboe oharboe left a comment

Choose a reason for hiding this comment

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

Nice! Some nits though.

- name: Run YAML Lint
run: |
pip install yamllint==1.35.1
yamllint flow/scripts/variables.yaml
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we pick a yaml linting tool that, like black, for python, you can just run to fix the formatting?

I'm not picky on yaml linting rules, I just want automatic update, like black does for python.

else
echo "has_update=false" >> "$GITHUB_OUTPUT"
fi
git add .
Copy link
Collaborator

Choose a reason for hiding this comment

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

this can add anything in the source folder, why add anything beyond FlowVariables.md?

Copy link
Collaborator

Choose a reason for hiding this comment

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

In fact, if anything under source control is change, except FlowVariables.md, this action should terminate, no?

Copy link
Collaborator

@oharboe oharboe left a comment

Choose a reason for hiding this comment

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

nits

Also, I think it is worth creating a prior pull request that only updates the formatting of variables.yaml so that this PR does not update the variables.yaml, that way you avoid pull request merge conflicts if this PR needs to be hold off.

name: ORFS variables.yaml tester and linter

on:
push:
Copy link
Collaborator

Choose a reason for hiding this comment

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

shouldn't this be pull-request, not on push(to a branch) test linting?

otherwise I don't think it will tests pull requests as only those with write access to the ORFS can create branches

The rest of the PR I think is designed to run after updates to master

Copy link
Member

Choose a reason for hiding this comment

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

If we are catching mismatches on pull-request then I wouldn't expect we would ever need to have the docs-pr-update. The issue would be fixed in the original PR prior to merging.

@luarss luarss marked this pull request as ready for review October 17, 2024 00:35
@luarss luarss marked this pull request as draft October 19, 2024 02:10
@luarss luarss marked this pull request as ready for review November 9, 2024 14:20
Copy link
Collaborator

@oharboe oharboe left a comment

Choose a reason for hiding this comment

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

Suggestion: If FlowVariables.md is modified and it does not match the generatedocs.py result in a PR fail the PR.

Signed-off-by: Jack Luar <[email protected]>
@luarss
Copy link
Contributor Author

luarss commented Nov 9, 2024

@oharboe FlowVariables.md changes are detected in the update-pr section. Do you mean to shift it up to the lint section?

@oharboe
Copy link
Collaborator

oharboe commented Nov 9, 2024

I am thinking this is more linting than testing, yes. It is fast enough....

yamlfix.toml Outdated
@@ -0,0 +1,11 @@
explicit_start = true
line_length = 120
Copy link
Member

Choose a reason for hiding this comment

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

It looks like it is being wrapped at 80 characters not 120. 80 is preferable as it match Google style for c++. Does this do anything?

Copy link
Contributor Author

@luarss luarss Nov 9, 2024

Choose a reason for hiding this comment

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

Yes, it does. The command to run for check is yamlfix -c yamlfix.toml flow/scripts/variables.yaml --check, whereas for format is yamlfix -c yamlfix.toml flow/scripts/variables.yaml. Next PR should reflect line length 80.

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.

Run flow/scripts/generate-variables-docs.py and create doc update commit as part of OpenROAD bot
3 participants