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

Proper message display when no bash, python and YAML files changed in the PR #2803

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 0 additions & 40 deletions .github/workflows/bash_formatter.yaml

This file was deleted.

144 changes: 144 additions & 0 deletions .github/workflows/linting_bash_python_yaml_files.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
name: Proper linting on Bash, Python, and YAML files

on: [push, pull_request]

jobs:
format_python_files:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Python Files Formatting Guidelines
run: |
echo "### Python Files Formatting Guidelines ###
If there is a formatting error in your python files,
1. First install black
It requires Python 3.8+ to run.
Install with 'pip install black' and if you use pipx, install Black with 'pipx install black'.
If you want to format Jupyter Notebooks, install with 'pip install black[jupyter]'.

2. Run the command
'python -m black {source_file_or_directory}' or
'black {source_file_or_directory}'
to format python files.
"

- uses: psf/black@stable
with:
src: |
./common
./example

format_YAML_files:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Install yamllint
run: pip install yamllint

- name: YAML Formatting Guidelines
run: |
echo "### YAML Formatting Guidelines ###
If there is a formatting error in your YAML file, you will see errors like the one below:
'Error: 6:4 [indentation] wrong indentation: expected 2 but found 3'

To fix these errors, refer to the YAML formatting rules at:
https://yamllint.readthedocs.io/en/stable/rules.html#

Search for the keyword inside the brackets [] in the error message. In this example, it's 'indentation'.

Note: Some rules have been customized in the '.yamllint.yaml' file. Below is the content of that file:

extends: default

rules:
document-start:
present: false
document-end:
present: false
indentation:
indent-sequences: false
line-length:
max: 400
"

- name: Fetch master branch
run: git fetch origin master

- name: Set up changed files
id: changed_files
run: |
git diff --name-only origin/master...HEAD | grep -E '^common/.*\.ya?ml$|^example/.*\.ya?ml$' > changed_files_in_PR.txt || true
if [ ! -s changed_files_in_PR.txt ]; then
echo "No YAML files have changed in this PR." > changed_files_in_PR.txt
fi

- name: Display changed files
run: cat changed_files_in_PR.txt

- name: Run yamllint on changed files
id: lint
run: |
if grep -q 'No YAML files have changed in this PR.' changed_files_in_PR.txt; then
echo "No YAML files have changed in this PR."
else
cat changed_files_in_PR.txt | xargs -I {} yamllint {} || exit 1
fi
shell: bash

- name: Check YAML lint results
if: success() && steps.lint.outcome == 'success'
run: echo "No styling issues with YAML files."
shell: bash

format_bash_files:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Install ShellCheck
run: sudo apt install -y shellcheck

- name: Bash Formatting Guidelines
run: |
echo "### Bash Files Formatting Guidelines ###
If there are errors and warnings regarding your bash files,
You can check the error code definitions at https://www.shellcheck.net/wiki/.
You can correct them using the https://www.shellcheck.net/ site.
You have to ignore disable errors in the .shellcheckrc file.
"

- name: Fetch master branch
run: git fetch origin master

- name: Set up changed files
id: changed_files
run: |
git diff --name-only origin/master...HEAD | grep -E '^.*\.sh$' | grep -v '^apps/' > changed_files_in_PR.txt || true
if [ ! -s changed_files_in_PR.txt ]; then
echo "No bash files have changed in this PR."
fi

- name: Display changed files
if: always() # Always run this step
run: cat changed_files_in_PR.txt || echo "No bash files have changed in this PR."

- name: Run ShellCheck on changed files
id: lint
run: |
if grep -q 'No bash files have changed in this PR.' changed_files_in_PR.txt; then
echo "No bash files have changed in this PR."
else
cat changed_files_in_PR.txt | xargs -I {} shellcheck {} || exit 1
fi
shell: bash

- name: Check Bash lint results
if: success() && steps.lint.outcome == 'success'
run: echo "No styling issues with Bash files."
shell: bash
32 changes: 0 additions & 32 deletions .github/workflows/python_formatter.yaml

This file was deleted.

59 changes: 0 additions & 59 deletions .github/workflows/yaml_formatter.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion README.md
Copy link
Member

Choose a reason for hiding this comment

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

Why are you changing this file?

Copy link
Member Author

Choose a reason for hiding this comment

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

The difference is showed in the same line. But I did not change it.

Original file line number Diff line number Diff line change
Expand Up @@ -550,4 +550,4 @@ The Kubeflow security working group follows a responsible disclosure policy for
- **Q:** What versions of Istio, Knative, Cert-Manager, Argo, ... are compatible with Kubeflow? \
**A:** Please refer to each individual component's documentation for a dependency compatibility range. For Istio, Knative, Dex, Cert-Manager and OIDC-AuthService, the versions in `common` are the ones we have validated.
- **Q:** Can I use earlier version of Kustomize with Kubeflow manifests?
**A:** No, it is not supported anymore, although it might be possible with manual effort.
**A:** No, it is not supported anymore, although it might be possible with manual effort.
Loading