Skip to content

Commit

Permalink
Merge tag 'draco-rc5' into HEAD
Browse files Browse the repository at this point in the history
  • Loading branch information
semaldona committed May 21, 2024
2 parents daa9d5b + fa5031f commit ee3ae3f
Show file tree
Hide file tree
Showing 444 changed files with 23,665 additions and 17,379 deletions.
12 changes: 6 additions & 6 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
**Checklist (Please check before submitting)**

* [ ] I reviewed the [Contributing Guide](https://github.com/nasa/cFE/blob/main/CONTRIBUTING.md).
* [ ] I signed and emailed the appropriate [Contributor License Agreement](https://github.com/nasa/cFS/blob/main/CONTRIBUTING.md#contributor-license-agreement-cla) to [email protected] and copied [email protected].

**Describe the contribution**
A clear and concise description of what the contribution is.
- Include explicitly what issue it addresses [e.g. Fixes #X]
Expand Down Expand Up @@ -26,9 +31,4 @@ If included, identify any third party code and provide text file of license

**Contributor Info - All information REQUIRED for consideration of pull request**
Full name and company/organization/center of all contributors ("Personal" if individual work)
- If NASA Civil Servant Employee or GSFC Contractor on SES II
- Address/email/phone and contract/task information (if applicable) must be on file
- Else if Company
- **HAND SIGNED** Company CLA must be on file (once per release): [Company CLA](../docs/GSC_18128_Corp_CLA_form_1219.pdf)
- Else if Individual
- **HAND SIGNED** Individual CLA must be on file (once per release): [Individual CLA](../docs/GSC_18128_Ind_CLA_form_1219.pdf)
- Note CLAs apply to only software contributions.
160 changes: 59 additions & 101 deletions .github/workflows/build-documentation.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
name: "Build cFE Documentation"
name: cFS Documentation and Guides

on:
push:
pull_request:
workflow_dispatch:
schedule:
# 10:45 PM UTC every Sunday
- cron: '45 22 * * 0'

env:
SIMULATION: native
BUILDTYPE: debug

jobs:

#Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action.
check-for-duplicates:
# Checks for duplicate actions. Skips push actions if there is a matching or
# duplicate pull-request action.
checks-for-duplicates:
runs-on: ubuntu-latest
# Map a step output to a job output
outputs:
Expand All @@ -24,116 +25,73 @@ jobs:
skip_after_successful_duplicate: 'true'
do_not_skip: '["pull_request", "workflow_dispatch", "schedule"]'

build-docs:
#Continue if check-for-duplicates found no duplicates. Always runs for pull-requests.
needs: check-for-duplicates
if: ${{ needs.check-for-duplicates.outputs.should_skip != 'true' }}
runs-on: ubuntu-18.04
timeout-minutes: 15
checkout-and-cache:
name: Custom checkout and cache for cFS documents
needs: checks-for-duplicates
if: ${{ needs.checks-for-duplicates.outputs.should_skip != 'true' || contains(github.ref, 'main') }}
runs-on: ubuntu-latest

steps:
- name: Install Dependencies
run: sudo apt-get install doxygen graphviz -y

# Check out the cfs bundle
- name: Checkout bundle
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: nasa/cFS
submodules: true

- name: Checkout submodule
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: cfe

- name: Check versions
run: git submodule

# Setup the build system
- name: Set up for build
run: |
cp ./cfe/cmake/Makefile.sample Makefile
cp -r ./cfe/cmake/sample_defs sample_defs
make prep
- name: Build Docs
run: |
make doc > make_doc_stdout.txt 2> make_doc_stderr.txt
# Upload documentation logs as artifacts
- name: Archive Documentation Build Logs
uses: actions/upload-artifact@v2
- name: Cache Source and Build
id: cache-src-bld
uses: actions/cache@v3
with:
name: cFS Docs Artifacts
path: |
make_doc_stdout.txt
make_doc_stderr.txt
- name: Error Check
run: |
if [[ -s make_doc_stderr.txt ]]; then
cat make_doc_stderr.txt
exit -1
fi
build-usersguide:
#Continue if check-for-duplicates found no duplicates. Always runs for pull-requests.
needs: check-for-duplicates
if: ${{ needs.check-for-duplicates.outputs.should_skip != 'true' }}
runs-on: ubuntu-18.04
timeout-minutes: 15
path: /home/runner/work/${{ github.event.repository.name }}/${{ github.event.repository.name }}/*
key: cfs-doc-${{ github.run_number }}

build-cfe-usersguide:
needs: checkout-and-cache
name: Build and deploy cFE Docs
uses: nasa/cFS/.github/workflows/build-deploy-doc.yml@main
with:
target: "[\"cfe-usersguide\"]"
cache-key: cfs-doc-${{ github.run_number }}
buildpdf: ${{ github.event_name == 'push' && contains(github.ref, 'main')}}
deploy: false # Note can't use cache with deploy, deploy in following job instead

build-mission-doc:
needs: checkout-and-cache
name: Build Mission Doc
#uses: nasa/cFS/.github/workflows/build-deploy-doc.yml
uses: nasa/cFS/.github/workflows/build-deploy-doc.yml@main
with:
target: "[\"mission-doc\"]"
cache-key: cfs-doc-${{ github.run_number }}
deploy: false
buildpdf: false # No need for mission pdf within cFE, done at bundle level

deploy-documentation:
needs: build-cfe-usersguide
if: ${{ github.event_name == 'push' && contains(github.ref, 'main')}}
name: Deploy documentation to gh-pages
runs-on: ubuntu-latest

steps:
- name: Install Dependencies
run: sudo apt-get install doxygen graphviz -y

# Check out the cfs bundle
- name: Checkout bundle
uses: actions/checkout@v2
with:
repository: nasa/cFS
submodules: true

- name: Checkout submodule
uses: actions/checkout@v2
with:
path: cfe
- uses: actions/checkout@v3

- name: Check versions
run: git submodule
- uses: actions/download-artifact@v3

# Setup the build system
- name: Set up for build
run: |
cp ./cfe/cmake/Makefile.sample Makefile
cp -r ./cfe/cmake/sample_defs sample_defs
make prep
- name: Display structure of downloaded files
run: ls -R

- name: Build Usersguide
run: |
make usersguide > make_usersguide_stdout.txt 2> make_usersguide_stderr.txt
mv build/docs/cfe-usersguide-warnings.log usersguide_warnings.log
- name: Move pdfs to deployment directory
run: mkdir deploy; mv */*.pdf deploy

- name: Archive Users Guide Build Logs
uses: actions/upload-artifact@v2
- name: Deploy to GitHub
uses: JamesIves/[email protected]
with:
name: Users Guide Artifacts
path: |
make_usersguide_stdout.txt
make_usersguide_stderr.txt
usersguide_warnings.log
- name: Error Check
run: |
if [[ -s make_usersguide_stderr.txt ]]; then
cat make_usersguide_stderr.txt
exit -1
fi
- name: Warning Check
run: |
if [[ -s usersguide_warnings.log ]]; then
cat usersguide_warnings.log
exit -1
fi
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH: gh-pages
FOLDER: deploy
SINGLE_COMMIT: true
22 changes: 14 additions & 8 deletions .github/workflows/code-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ name: "Code Coverage Analysis"
on:
push:
pull_request:
workflow_dispatch:
schedule:
# 11:00 PM UTC every Sunday
- cron: '0 23 * * 0'

env:
SIMULATION: native
Expand All @@ -12,7 +16,7 @@ env:

jobs:

#Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action.
#Check for duplicate actions. Skips push actions if there is a matching or duplicate pull-request action.
check-for-duplicates:
runs-on: ubuntu-latest
# Map a step output to a job output
Expand All @@ -30,7 +34,7 @@ jobs:
#Continue if check-for-duplicates found no duplicates. Always runs for pull-requests.
needs: check-for-duplicates
if: ${{ needs.check-for-duplicates.outputs.should_skip != 'true' }}
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
timeout-minutes: 15

steps:
Expand All @@ -39,13 +43,13 @@ jobs:

# Checks out a copy of your repository on the ubuntu-latest machine
- name: Checkout bundle
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: nasa/cFS
submodules: true

- name: Checkout submodule
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: cfe

Expand All @@ -62,6 +66,7 @@ jobs:
# Build the code
- name: Build
run: |
make -C build/native/default_cpu1/config
make -C build/native/default_cpu1/core_api
make -C build/native/default_cpu1/core_private
make -C build/native/default_cpu1/es
Expand All @@ -73,11 +78,12 @@ jobs:
make -C build/native/default_cpu1/sbr
make -C build/native/default_cpu1/tbl
make -C build/native/default_cpu1/time
# Initialize lcov and test the code
# Initialize lcov and test the code
- name: Test
run: |
lcov --capture --initial --directory build --output-file coverage_base.info
make -C build/native/default_cpu1/config test
make -C build/native/default_cpu1/core_api test
make -C build/native/default_cpu1/core_private test
make -C build/native/default_cpu1/es test
Expand All @@ -98,8 +104,8 @@ jobs:
- name: Confirm Minimum Coverage
run: |
missed_branches=76
missed_lines=33
missed_branches=52
missed_lines=18
branch_nums=$(grep -A 3 "Overall coverage rate" lcov_out.txt | grep branches | grep -oP "[0-9]+[0-9]*")
line_nums=$(grep -A 3 "Overall coverage rate" lcov_out.txt | grep lines | grep -oP "[0-9]+[0-9]*")
Expand Down
Loading

0 comments on commit ee3ae3f

Please sign in to comment.