History log of /openbmc/openbmc-build-scripts/config/ (Results 1 – 11 of 11)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
c0fab5e209-Sep-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Use codespell's dictionary for spell checking

When we first enabled spell checking, we duplicated the dictionary file
used by the kernel community and named it `openbmc-spelling.txt`. Since
we added

Use codespell's dictionary for spell checking

When we first enabled spell checking, we duplicated the dictionary file
used by the kernel community and named it `openbmc-spelling.txt`. Since
we added the dictionary in 2021, only two changes have been made to it.

Meanwhile, the size of the kernel community’s dictionary has grown from
32 KB to 1.4 MB and is now included as part of the codespell library.
As the dictionary is readily available on the system, we will now use
it directly for spell checks. This offers several benefits:

1. Automatically use the latest dictionary whenever the codespell
library is updated.
2. Reduce maintenance overhead and avoid data duplication.

In the future, if we need to add a word that is specific to OpenBMC, we
can create a new dictionary file with just those entries and run a
separate codespell check using that file.

Change-Id: I2897ab159e0a6c14480e1ee2593761ab550a19e9
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...

7d41f6d206-Dec-2022 Patrick Williams <patrick@stwcx.xyz>

format-code: enable markdownlint

Enable markdownlint but allow it to always pass. This will allow
maintainers the opportunity to run the tools and fix up their own
markdown before we enable this gl

format-code: enable markdownlint

Enable markdownlint but allow it to always pass. This will allow
maintainers the opportunity to run the tools and fix up their own
markdown before we enable this globally.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ie397a72ca4ef113cdbe433d263ccf3bd5063cf4b

show more ...

b08ddf7706-Dec-2022 Patrick Williams <patrick@stwcx.xyz>

format-code: enable prettier

prettier is a formatter for YAML, JSON, Markdown, etc.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I7a47d02ef7382d811423b97a88132aa92b991eed

e08ffba805-Dec-2022 Patrick Williams <patrick@stwcx.xyz>

python: fix flake8 warnings and format with black

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic54f4a3ecf328b0d2c65af5cfd9eb2048d671ad5

d535ecb402-Dec-2022 Patrick Williams <patrick@stwcx.xyz>

format-code: simplify exclusion filter for clang

The clang-format linter calls have a custom ignore list. Write
a python script for reusable git-ignore-like filtering and switch
the clang-format li

format-code: simplify exclusion filter for clang

The clang-format linter calls have a custom ignore list. Write
a python script for reusable git-ignore-like filtering and switch
the clang-format linter call to use it.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I788c0e3de55fae592318a997b676c73a7f13e74c

show more ...

0f5f0e7527-Nov-2022 Patrick Williams <patrick@stwcx.xyz>

format-code: simplify codespell

* Avoid copying codespell config files into the workspace.
* Drop 'ignore-words' support.
* Filter out Signed-off-by lines.

The 'openbmc-spelling-ignore.txt' file co

format-code: simplify codespell

* Avoid copying codespell config files into the workspace.
* Drop 'ignore-words' support.
* Filter out Signed-off-by lines.

The 'openbmc-spelling-ignore.txt' file contained someone's last
name, which was being triggered by codespell as being similar enough
to a real word that it was identified as a mispelling. Instead of
keeping their name in an ignore file, filter out the Signed-off-by.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ie2c96a000c352dc02a5dee1db3d2d9ea2b629cef

show more ...

fb9948a321-Jun-2022 Ed Tanous <edtanous@google.com>

Enforce commit message style

Throughout the project, it is a manual human process to enforce the idea
of commit message formatting, and leads to more conflict than would
ideally be required for some

Enforce commit message style

Throughout the project, it is a manual human process to enforce the idea
of commit message formatting, and leads to more conflict than would
ideally be required for something that's relatively algorithmic, and
able to be enforced by CI. Jenkins is able to give faster response
times to users, thus ensuring that committers are more likely to be able
to resolve their commit message issues in a timely manner.

This commit adds the gitlint[1] application to our builds, and
integrates its checks with CI in the format-code.sh script. Gitlint
appears to be a relatively active project with a number of releases,
relatively up to date commits on its github, and by the documentation as
well as this authors testing, appears to do exactly what the project
needs in terms of checks.

gitlint has a number of configuration options[2], of which the defaults
appear to be ok for OpenBMCs style requirements. This commit checks in a
.gitlint file that was generated via 'gitlint generate-config' to use as
a starting point.

To avoid impacting the entire project at this time, this commit checks
for the existence of a .openbmc-enforce-gitlint file in the root of the
directory, and uses that to gate its scanning. At some point in the
future, once we've determined this meets our needs, this check will be
removed so that we can enforce this project-wide.

This commit makes use of the gitlint plugin system to support one
important feature that OpenBMC requires for block line length. The
custom line length rule allows:
1. Block comments to exceed the line length limit
2. Signed-Off-By sections to exceed the line length limit
3. Tabbed in sections to exceed the line length limit

Presumably this same mechanism could be used to handle openbmc/openbmc
commits, to allow meta-<name> to precede the title and go over the
allowed limit, but for the moment, format-code.sh does not apply to
openbmc/openbmc, so this would be for a future change to repotest

When these fails, it attempts to give the user a message that conveys
these allowals to let them fix their commit message quickly.

Tested:
Created a commit with a title that was too long, as well as added a
.openbmc-enforce-gitlint file in bmcweb. Ran openbmc-build-scripts and observed.

'''
-: UC1 Line exceeds max length (101>72).
It's possible you intended to use one of the following exceptions:
1. Put logs or bash lines in a quoted section with triple quotes (''') before and after the section
2. Put a long link at the bottom in a footnote. example: [1] https://my_long_link.com
Line that was too long:
: "VERY LONG LOG LINE THAT TAKES WAY TOO MUCH SPACE AND GOES OVER 72 CHARACTERS, which is a problem"
'''

[1] https://jorisroovers.com/gitlint/
[2] https://jorisroovers.com/gitlint/configuration/
[3] https://jorisroovers.com/gitlint/user_defined_rules/
[4] https://github.com/jorisroovers/gitlint/issues/255#issuecomment-1063494186

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: If42a22bfeca223fd5bc8f35ed937aa5f60713f2a

show more ...

81692c0504-Aug-2022 Patrick Williams <patrick@stwcx.xyz>

spelling: add ignore list

Thu Ba reported that their name is getting rejected as a spelling
mistake in their Signed-off-by. Add capability to ignore words
from the primary dictionaries and add 'ba'

spelling: add ignore list

Thu Ba reported that their name is getting rejected as a spelling
mistake in their Signed-off-by. Add capability to ignore words
from the primary dictionaries and add 'ba' to the ignore list.

Tested:

Before change, manually running codespell results in:
```
./config/openbmc-spelling-ignore.txt:1: Ba ==> By, be
```
Manually running codespell with ignore-list option removes this.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I33134e519e28024926b6da00340d2d52e2e884bd

show more ...

df6170e921-Dec-2021 Patrick Williams <patrick@stwcx.xyz>

spellcheck: move dictionary to config dir

Consolidate all configuration into the 'config' directory rather than
having a 'dictionary' subdirectory with a single file in it.

Signed-off-by: Patrick W

spellcheck: move dictionary to config dir

Consolidate all configuration into the 'config' directory rather than
having a 'dictionary' subdirectory with a single file in it.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I45d3508a5875148c3fb90150da98013de6a568e7

show more ...

213cf83c06-Nov-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

eslint: Ignore the meson-* & subprojects folder in the workspace

Modify eslint configuration to ignore the meson-* folder (ignores
the meson build log files - that fails(below) the json validation
t

eslint: Ignore the meson-* & subprojects folder in the workspace

Modify eslint configuration to ignore the meson-* folder (ignores
the meson build log files - that fails(below) the json validation
test). This helps users to re-use the build directory while running the
local CI.

Also ignoring the meson subprojects folder as , we dont want eslint to be checking
for errors that are not part of openbmc.

Fixes :
/home/zshelle/sandbox/bmc1/openpower-hw-diags/build/meson-logs/testlog-ubasan.json
2:2 error End of file expected json/*
/home/zshelle/sandbox/bmc1/openpower-hw-diags/build/meson-logs/testlog-valgrind.json
2:2 error End of file expected json/*
/home/zshelle/sandbox/bmc1/openpower-hw-diags/build/meson-logs/testlog.json
2:2 error End of file expected json/*
✖ 3 problems (3 errors, 0 warnings)

Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
Change-Id: If2f03aab86db953187a5ca8f3828263582d56712

show more ...

87111bb714-Aug-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

JSON validation support in CI

Most of the openbmc repositories depend on JSON configuration files,
which are consumed by the respective daemons at runtime.

It's a good value add to catch the JSON v

JSON validation support in CI

Most of the openbmc repositories depend on JSON configuration files,
which are consumed by the respective daemons at runtime.

It's a good value add to catch the JSON validation errors early in the
repository CI itself.

By default, the CI would be picking config/eslint-global-config as the
default configuration to run the JSON validation. The default configuration
can be overridden by the presence of the .eslintrc.json file from the
repository for which the CI is running against.

Repositories cannot completely opt-out of the JSON validation, but they
choose to skip whatever files/folders they want using the .eslintignore
configuration file or, they can also write the rules in .eslintrc.json
config file to turn errors into warnings.

This commit brings in eslint & eslint-plugin-json which does only the
"json validation".

Visit the below link(s) for more details & various error's/warnings that
this plugin would report:
https://www.npmjs.com/package/eslint-plugin-json
https://github.com/azeemba/eslint-plugin-json

I have tested all the repos under openbmc with the eslint-global-config
and only two repos are breaking due to this change, they are already
fixed(please check the topic: "json-validation" for more details)

Testing Example :
1. Make a json bad by purposefully removing a comma

Running the json validator on the repo using it's config >

/home/manojeda/ci_test_area/pldm/configurations/fru_master.json
19:26 error Expected comma json/*

✖ 1 problem (1 error, 0 warnings)

2. if the json is good, the validation proceeds fruther without
any issues.

Change-Id: I2c2c14b18bb626b1a5ab5d818b92d5ba370e1639
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


/openbmc/openbmc-build-scripts/.shellcheck
/openbmc/openbmc-build-scripts/COPYING
/openbmc/openbmc-build-scripts/MAINTAINERS
/openbmc/openbmc-build-scripts/README.md
/openbmc/openbmc-build-scripts/build-jenkins.sh
/openbmc/openbmc-build-scripts/build-rootfs-size-docker.sh
/openbmc/openbmc-build-scripts/build-setup.sh
eslint-global-config.json
/openbmc/openbmc-build-scripts/dictionary/openbmc-spelling.txt
/openbmc/openbmc-build-scripts/docs-build.sh
/openbmc/openbmc-build-scripts/initramfs-build.sh
/openbmc/openbmc-build-scripts/jenkins/README.md
/openbmc/openbmc-build-scripts/jenkins/build-seed
/openbmc/openbmc-build-scripts/jenkins/run-build-script-ci
/openbmc/openbmc-build-scripts/jenkins/run-meta-ci
/openbmc/openbmc-build-scripts/jenkins/userid-validation
/openbmc/openbmc-build-scripts/kernel-build-setup.sh
/openbmc/openbmc-build-scripts/kernel-build.sh
/openbmc/openbmc-build-scripts/openpower-build-setup.sh
/openbmc/openbmc-build-scripts/qemu-build.sh
/openbmc/openbmc-build-scripts/run-qemu-robot-test.sh
/openbmc/openbmc-build-scripts/run-rootfs-size-docker.sh
/openbmc/openbmc-build-scripts/run-unit-test-docker.sh
/openbmc/openbmc-build-scripts/scripts/boot-qemu-test.exp
/openbmc/openbmc-build-scripts/scripts/boot-qemu.sh
/openbmc/openbmc-build-scripts/scripts/build-qemu-robot-docker.sh
/openbmc/openbmc-build-scripts/scripts/build-unit-test-docker
/openbmc/openbmc-build-scripts/scripts/clean-unit-test-docker
/openbmc/openbmc-build-scripts/scripts/dbus-unit-test.py
/openbmc/openbmc-build-scripts/scripts/format-code.sh
/openbmc/openbmc-build-scripts/scripts/generate-html-index.py
/openbmc/openbmc-build-scripts/scripts/get_unit_test_report.py
/openbmc/openbmc-build-scripts/scripts/repositories.txt
/openbmc/openbmc-build-scripts/scripts/run-robot.sh
/openbmc/openbmc-build-scripts/scripts/test-qemu
/openbmc/openbmc-build-scripts/scripts/unit-test.py
/openbmc/openbmc-build-scripts/test-distro.sh
/openbmc/openbmc-build-scripts/tools/commit-tracker
/openbmc/openbmc-build-scripts/trace-kernel-build.sh
/openbmc/openbmc-build-scripts/u-boot-build.sh