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

Fix #291, Implement Coding Standards in CodeQL #292

Conversation

ArielSAdamsNASA
Copy link

Describe the contribution
Fix #291
Added the duplicate jobs action to avoid duplicate jobs from running. Added a separate job for coding standard queries. Created two configuration files, one for default queries and security queries and another for jpl rules.

Testing performed
Testing done on cFE forked repository, ArielSAdamsNASA/cFE which used the same files, but with different configuration paths.

Jobs were failing when the entire path of the configuration file were not used. Have to use nasa/cFE/.github/codeql/config-name@branch-name. The branch must be included in the path.

The CodeQL analysis workflow will fail for this PR since it is calling for a configuration file in main the main branch. It will not work until the configuration files are merged into main.

In the screenshot is the same workflow as in this pull request, but the configuration path is changed to the forked repo and tested branch.

image

Expected behavior changes
There should be one job for security queries and one job for JPL and MISRA queries.

Third party code
Skip duplicate workflows license: https://github.com/fkirc/skip-duplicate-actions/blob/master/LICENSE

CodeQL license: https://github.com/github/codeql-action/blob/main/LICENSE

Contributor Info - All information REQUIRED for consideration of pull request
Ariel Adams, ASRC Federal

@ArielSAdamsNASA ArielSAdamsNASA self-assigned this May 20, 2021
@ArielSAdamsNASA ArielSAdamsNASA force-pushed the fix-291-coding-standards-codeql branch from b011acf to 7939d3c Compare May 20, 2021 22:14
@ArielSAdamsNASA ArielSAdamsNASA added the CCB:Ready Pull request is ready for discussion at the Configuration Control Board (CCB) label May 21, 2021
@ArielSAdamsNASA ArielSAdamsNASA force-pushed the fix-291-coding-standards-codeql branch from 7939d3c to a313789 Compare May 26, 2021 18:59
@ArielSAdamsNASA
Copy link
Author

ArielSAdamsNASA commented May 26, 2021

Removed configuration files and used cFS configuration files instead. CodeQL workflow is not successful.

Error "The configuration file "nasa/cFS/.github/codeql/codeql-coding-standard.yml@main" is invalid: property "queries.uses" is invalid as the local path "codeql/cpp/ql/src/JPL_C" does not exist in the repository".

Tested locally, error goes away when full path of queries are used in cFS/.github/codeql/codeql-coding-standard.yml. For example, instead of ./codeql/cpp/ql/src/JPL_C use github/codeql/cpp/ql/src/JPL_C@main. Some repositories such as cFE does not require the full path.

Created PR for cFS to resolve this issue: nasa/cFS#262

@astrogeco astrogeco removed the CCB:Ready Pull request is ready for discussion at the Configuration Control Board (CCB) label Jun 2, 2021
@astrogeco astrogeco added the CCB:Approved Indicates Approval by CCB label Jun 10, 2021
@astrogeco astrogeco changed the base branch from main to integration-candidate June 10, 2021 21:26
@astrogeco astrogeco merged commit 42c6493 into nasa:integration-candidate Jun 10, 2021
astrogeco added a commit to nasa/cFS that referenced this pull request Jun 10, 2021
*Documentation Updates:*

nasa/cFE#1598, Updated FS Read/WriteHeader API return documentation
nasa/cFE#1601, Document CFE_ES_RunLoop increment task counter behavior
nasa/cFE#1602, Document CFE_TBL_Unregister use-case
nasa/cFE#1603, Update version description per current design

*Standardize docs generation:*

nasa/cFE#1615, standardize on "docs" subdirectory
nasa/osal#1071, rename doc to docs
nasa/PSP#294, rename doc to docs

*Implement Coding Standard:*

nasa/ci_lab#87
nasa/sample_app#149
nasa/sample_lib#63
nasa/sch_lab#79
nasa/to_lab#98
nasa/cFS-GroundSystem#180
nasa/elf2cfetbl#80
nasa/tblCRCTool#48
nasa/osal#1042
nasa/PSP#292
astrogeco added a commit to nasa/cFS that referenced this pull request Jun 17, 2021
nasa/cFE#1619 - cfe v6.8.0-rc1+dev693
nasa/osal#1076 - osal v5.1.0-rc1+dev530
nasa/PSP#296 - psp v1.5.0-rc1+dev118

*Documentation Updates:*

nasa/cFE#1598, Updated FS Read/WriteHeader API return documentation
nasa/cFE#1601, Document CFE_ES_RunLoop increment task counter behavior
nasa/cFE#1602, Document CFE_TBL_Unregister use-case
nasa/cFE#1603, Update version description per current design

*Standardize docs generation:*

nasa/cFE#1615, standardize on "docs" subdirectory
nasa/osal#1071, rename doc to docs
nasa/PSP#294, rename doc to docs

*Coding Standard:*

nasa/osal#1042
nasa/PSP#292

**Mutex for UTAssert**

nasa/cFE#1596, provide CFE assert lock/unlock
nasa/osal#1065, add mutex lock around UtAssert globals

*Resolve API-UT discrepancies:*

nasa/osal#1055, idmap API
nasa/osal#1056, file API
nasa/osal#1057, filesys API
nasa/osal#1060, socket API
nasa/osal#1064, select API

**Other cFE ixes**

nasa/cFE#1566, Simplify CFE_FS_SetTimestamp and fix syslog typo
nasa/cFE#1592, Removed redundant check/set of CFE_CPU_ID_VALUE
nasa/cFE#1593, add time get reference error bit
nasa/cFE#1600, Add workflow to build cFE documentation
nasa/cFE#1609, Requirements updates
nasa/cFE#1610, ES/ResourceID documentation cleanup
nasa/cFE#1613, allow multiple sources in add_cfe_coverage_test
nasa/cFE#1586, add ES Misc Functional test
nasa/cFE#1607, add Mempool functional tests
nasa/cFE#1605, Clean/simplify version header and reporting
nasa/cFE#1612, doxygen cleanup
nasa/cFE#1611, Prepend system log messages with function name

nasa/osal#1063, const correct OS_SelectFdIsSet
nasa/osal#1073, Fix OS_Select doxygen errors
nasa/osal#1073, Add missing OS_Select param doc
nasa/osal#1067, Add Workflow to build and verify OSAL API Guide
nasa/osal#1070, add detail design template
nasa/osal#1072, Update error codes and documentation
nasa/osal#1075, Increase UT object limit for testing

Co-authored-by: Jacob Hageman <skliper@users.noreply.github.com>
Co-authored-by: Joseph Hickey <jphickey@users.noreply.github.com>
Co-authored-by: Ariel Adams <ArielSAdamsNASA@users.noreply.github.com>
Co-authored-by: Alex Campbell <zanzaben@users.noreply.github.com>
Co-authored-by: Jose F Martinez Pedraza <pepepr08@users.noreply.github.com>
astrogeco added a commit to nasa/cFS that referenced this pull request Jun 17, 2021
nasa/cFE#1619 - cfe v6.8.0-rc1+dev693
nasa/osal#1076 - osal v5.1.0-rc1+dev530
nasa/PSP#296 - psp v1.5.0-rc1+dev118

*Documentation Updates:*

nasa/cFE#1598, Updated FS Read/WriteHeader API return documentation
nasa/cFE#1601, Document CFE_ES_RunLoop increment task counter behavior
nasa/cFE#1602, Document CFE_TBL_Unregister use-case
nasa/cFE#1603, Update version description per current design

*Standardize docs generation:*

nasa/cFE#1615, standardize on "docs" subdirectory
nasa/osal#1071, rename doc to docs
nasa/PSP#294, rename doc to docs

*Coding Standard:*

nasa/osal#1042
nasa/PSP#292

**Mutex for UTAssert**

nasa/cFE#1596, provide CFE assert lock/unlock
nasa/osal#1065, add mutex lock around UtAssert globals

*Resolve API-UT discrepancies:*

nasa/osal#1055, idmap API
nasa/osal#1056, file API
nasa/osal#1057, filesys API
nasa/osal#1060, socket API
nasa/osal#1064, select API

**Other cFE Fixes**

nasa/cFE#1566, Simplify CFE_FS_SetTimestamp and fix syslog typo
nasa/cFE#1592, Removed redundant check/set of CFE_CPU_ID_VALUE
nasa/cFE#1593, add time get reference error bit
nasa/cFE#1600, Add workflow to build cFE documentation
nasa/cFE#1609, Requirements updates
nasa/cFE#1610, ES/ResourceID documentation cleanup
nasa/cFE#1613, allow multiple sources in add_cfe_coverage_test
nasa/cFE#1586, add ES Misc Functional test
nasa/cFE#1607, add Mempool functional tests
nasa/cFE#1605, Clean/simplify version header and reporting
nasa/cFE#1612, doxygen cleanup
nasa/cFE#1611, Prepend system log messages with function name

**Other osal Fixes**

nasa/osal#1063, const correct OS_SelectFdIsSet
nasa/osal#1073, Fix OS_Select doxygen errors
nasa/osal#1073, Add missing OS_Select param doc
nasa/osal#1067, Add Workflow to build and verify OSAL API Guide
nasa/osal#1070, add detail design template
nasa/osal#1072, Update error codes and documentation
nasa/osal#1075, Increase UT object limit for testing

Co-authored-by: Jacob Hageman <skliper@users.noreply.github.com>
Co-authored-by: Joseph Hickey <jphickey@users.noreply.github.com>
Co-authored-by: Ariel Adams <ArielSAdamsNASA@users.noreply.github.com>
Co-authored-by: Alex Campbell <zanzaben@users.noreply.github.com>
Co-authored-by: Jose F Martinez Pedraza <pepepr08@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement Coding Standard Rules in CodeQL
3 participants