diff --git a/.github/workflows/README.md b/.github/workflows/README.md new file mode 100644 index 000000000..4a321cc83 --- /dev/null +++ b/.github/workflows/README.md @@ -0,0 +1,63 @@ +# Our Workflows + +## Deprecated Build, Test, and Run +[![Deprecated Build, Test, and Run](https://github.com/nasa/cfs/actions/workflows/build-cfs-deprecated.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/build-cfs-deprecated.yml) + +This action builds, tests, and runs the cFS bundle using deprecated code. The flag OMIT_DEPRECATED is set to false. For more information on the OMIT_DEPRECATED flag, see [global_build_options.cmake](https://github.com/nasa/cFE/blob/063b4d8a9c4a7e822af5f3e4017599159b985bb0/cmake/sample_defs/global_build_options.cmake). + +Build, Test, and Run runs for every push and every pull request on all branches of cFS in Github Actions. + +## Build, Test, and Run [OMIT_DEPRECATED=true] +[![Build, Test, and Run %5B OMIT_DEPRECATED=true %5B](https://github.com/nasa/cfs/actions/workflows/build-cfs.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/build-cfs.yml) + +This action builds, tests, and runs the cFS bundle omitting deprecated code. + +Build, Test, and Run [OMIT_DEPRECATED=true] runs for every push and every pull request on all branches of cFS in Github Actions. For more information on the OMIT_DEPRECATED flag, see [global_build_options.cmake](https://github.com/nasa/cFE/blob/063b4d8a9c4a7e822af5f3e4017599159b985bb0/cmake/sample_defs/global_build_options.cmake). + +## CodeQL Analysis +[![CodeQL Analaysis](https://github.com/nasa/cfs/actions/workflows/codeql-build.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/codeql-build.yml) + +This action runs GitHub's static analysis engine, CodeQL, against our repository's source code to find security vulnerabilities. It then automatically uploads the results to GitHub so they can be displayed in the repository's code scanning alerts found under the security tab. CodeQL runs an extensible set of [queries](https://github.com/github/codeql), which have been developed by the community and the [GitHub Security Lab](https://securitylab.github.com/) to find common vulnerabilities in your code. + +CodeQL runs for every push and pull-request on all branches of cFS in GitHub Actions. + +For the CodeQL GitHub Actions setup, visit https://github.com/github/codeql-action. + +Our CodeQL action uses a configuration file to use specific queries, which can be found at [.github/codeql](https://github.com/nasa/cFS/tree/main/.github/codeql). + +## Static Analaysis +[![Static Analaysis](https://github.com/nasa/cfs/actions/workflows/static-analysis.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/static-analysis.yml) + +This action runs a static analysis tool for C/C++ code known as cppcheck. Cppcheck is designed to be able to analyze C/C++ code even if it has non-standard syntax, which is common in embedded projects. + +The cFS Cppcheck GitHub Actions workflow and results are available to the public. To view the results, select a workflow and download the artifacts. + +Cppcheck runs for every push on the main branch and every pull request on all branches of cFS in Github Actions. + +For more information about Cppcheck, visit http://cppcheck.sourceforge.net/. + +## Local Unit Test +[![Local Unit Test](https://github.com/nasa/osal/actions/workflows/local_unit_test.yml/badge.svg)](https://github.com/nasa/osal/actions/workflows/local_unit_test.yml) + +This action tests our code using GCC's coverage testing tool gcov. + +Local Unit Test runs for every push and every pull request on all branches of cFS in Github Actions. + +## Documentation and Guides +[![Documentation and Guides](https://github.com/nasa/cfs/actions/workflows/build-documentation.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/build-documentation.yml) + +This action creates doxygen documents for cFE, cFS users guide, and osal guide. + +Documentation and Guides runs for every push and every pull request on all branches of cFS in Github Actions. The workflow pushes the PDFs for every push on the main branch. The PDFs can be found at https://github.com/nasa/cfs/tree/gh-pages. + +## Changelog +[![Changelog](https://github.com/nasa/cfs/actions/workflows/changelog.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/changelog.yml) + +This action creates a changelog file which documents all the issues in cFS. + +The Changelog action runs manually. + +## Format Check +[![Format Check](https://github.com/nasa/osal/actions/workflows/format-check.yml/badge.svg)](https://github.com/nasa/osal/actions/workflows/format-check.yml) + +This action uses [clang-format-10](https://github.com/nasa/cFS/blob/main/.clang-format) to check for format errors. diff --git a/.github/workflows/build-documentation.yml b/.github/workflows/build-documentation.yml index 28fed1410..b65e3d443 100644 --- a/.github/workflows/build-documentation.yml +++ b/.github/workflows/build-documentation.yml @@ -71,9 +71,9 @@ jobs: fi build-usersguide: - # Name the Job needs: checks-for-duplicates if: ${{ needs.checks-for-duplicates.outputs.should_skip != 'true' }} + # Name the Job name: Users Guide # Set the type of machine to run on runs-on: ubuntu-18.04 @@ -92,7 +92,7 @@ jobs: cp ./cfe/cmake/Makefile.sample Makefile cp -r ./cfe/cmake/sample_defs sample_defs - # Setup the build system + # Setup the build system - name: Make Prep run: make prep @@ -112,7 +112,6 @@ jobs: make_usersguide_stderr.txt cfe-usersguide-warnings.log - - name: Error Check run: | if [[ -s make_usersguide_stderr.txt ]]; then @@ -127,6 +126,15 @@ jobs: exit -1 fi + pdf-usersguide: + needs: build-usersguide + # Name the Job + name: PDF Users Guide + # Set the type of machine to run on + runs-on: ubuntu-18.04 + + steps: + - name: PDF generation installs if: ${{ github.event_name == 'push' && contains(github.ref, 'main')}} run: | @@ -154,9 +162,9 @@ jobs: SINGLE_COMMIT: true build-osalguide: - # Name the Job needs: checks-for-duplicates if: ${{ needs.checks-for-duplicates.outputs.should_skip != 'true' }} + # Name the Job name: Osal Guide # Set the type of machine to run on runs-on: ubuntu-18.04 @@ -175,7 +183,7 @@ jobs: cp ./cfe/cmake/Makefile.sample Makefile cp -r ./cfe/cmake/sample_defs sample_defs - # Setup the build system + # Setup the build system - name: Make Prep run: make prep @@ -187,7 +195,6 @@ jobs: make osalguide > make_osalguide_stdout.txt 2> make_osalguide_stderr.txt mv build/docs/osalguide/osal-apiguide-warnings.log osal-apiguide-warnings.log - - name: Archive Osal Guide Build Logs uses: actions/upload-artifact@v2 with: @@ -197,7 +204,6 @@ jobs: make_osalguide_stderr.txt osal-apiguide-warnings.log - - name: Error Check run: | if [[ -s make_osalguide_stderr.txt ]]; then @@ -212,6 +218,13 @@ jobs: exit -1 fi + pdf-osalguide: + needs: build-osalguide + # Name the Job + name: PDF Osal Guide + # Set the type of machine to run on + runs-on: ubuntu-18.04 + steps: - name: PDF generation installs if: ${{ github.event_name == 'push' && contains(github.ref, 'main')}} run: | diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0cc78264a..ae7ec6992 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -277,50 +277,7 @@ or #### Our Workflows -Additional information on our GitHub Action Workflows can be found in our [Security Policy](https://github.com/nasa/cFS/security/policy). - -##### Format Check -[![Format Check](https://github.com/nasa/osal/actions/workflows/format-check.yml/badge.svg)](https://github.com/nasa/osal/actions/workflows/format-check.yml) - -This action uses clang-format-10 to check for format errors. - -##### CodeQL Analysis -[![CodeQL Analaysis](https://github.com/nasa/cfs/actions/workflows/codeql-build.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/codeql-build.yml) - -This action runs GitHub's industry-leading static analysis engine, CodeQL, against our repository's source code to find security vulnerabilities. It then automatically uploads the results to GitHub so they can be displayed in the repository's code scanning alerts found under the security tab. CodeQL runs an extensible set of [queries](https://github.com/github/codeql), which have been developed by the community and the [GitHub Security Lab](https://securitylab.github.com/) to find common vulnerabilities in your code. - -Our CodeQL action uses a configuration file to use specific queries, which can be found at [.github/codeql](https://github.com/nasa/cFS/tree/main/.github/codeql). - - -##### Static Analaysis -[![Static Analaysis](https://github.com/nasa/cfs/actions/workflows/static-analysis.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/static-analysis.yml) - -This action runs a static analysis tool for C/C++ code known as cppcheck. Cppcheck is designed to be able to analyze C/C++ code even if it has non-standard syntax, which is common in embedded projects. - -##### Deprecated Build, Test, and Run -[![Deprecated Build, Test, and Run](https://github.com/nasa/cfs/actions/workflows/build-cfs-deprecated.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/build-cfs-deprecated.yml) - -This action builds, tests, and runs the cFS bundle using deprecated code. - -##### Build, Test, and Run [OMIT_DEPRECATED=true] -[![Build, Test, and Run %5B OMIT_DEPRECATED=true %5B](https://github.com/nasa/cfs/actions/workflows/build-cfs.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/build-cfs.yml) - -This action builds, tests, and runs the cFS bundle omitting deprecated code. - -##### Documentation and Guides -[![Documentation and Guides](https://github.com/nasa/cfs/actions/workflows/build-documentation.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/build-documentation.yml) - -This action creates doxygen documents for cFE, cFS users guide, and osal guide. - -##### Changelog -[![Changelog](https://github.com/nasa/cfs/actions/workflows/changelog.yml/badge.svg)](https://github.com/nasa/cfs/actions/workflows/changelog.yml) - -This action creates a changelog file which documents all the issues in cFS. - -##### Local Unit Test -[![Local Unit Test](https://github.com/nasa/osal/actions/workflows/local_unit_test.yml/badge.svg)](https://github.com/nasa/osal/actions/workflows/local_unit_test.yml) - -This action tests our code using GCC's coverage testing tool gcov. +Information on our GitHub Action Workflows can be found in the [.github/workflows README.md](https://github.com/nasa/cFS/tree/main/.github/workflows/README.md) document. ## Quick Links to Submodules Before you [report bugs](#report-bugs) or submit [feature requests](#feature-requests), search through the open issues in each submodule to ensure that your ticket is relevant, not redundant, nor in conflict with other tickets: diff --git a/cfe b/cfe index 063b4d8a9..2afdbc16e 160000 --- a/cfe +++ b/cfe @@ -1 +1 @@ -Subproject commit 063b4d8a9c4a7e822af5f3e4017599159b985bb0 +Subproject commit 2afdbc16e360530a9b4bbe4e0dcc814f675c1acb diff --git a/osal b/osal index 5e8f40b00..cb95655f1 160000 --- a/osal +++ b/osal @@ -1 +1 @@ -Subproject commit 5e8f40b003896c8a60bebc2249d7cb61c33c22de +Subproject commit cb95655f1743890835a10847439380b5ef7e31a0