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

Extract Codecov upload steps in CI workflow to dedicated dependent job #1334

Merged
merged 3 commits into from
Feb 10, 2024

Conversation

lbianchi-lbl
Copy link
Contributor

Summary/Motivation:

  • Codecov upload failures are frustrating, as they currently require re-running the entire test suite that generates the report (20-40+ minutes)
  • The proper fix is to use a Codecov upload token, saved as a repository secret
    • However, this require a major restructuring of the CI workflow because pull_request triggers cannot access secrets, requiring the creation of a new, non-pull_request workflow
    • Synchronizing triggers and passing data between different workflows is considerably more complicated compared to doing the same between different jobs in the same workflow
  • As an intermediate fix, we can separate the Codecov upload so that it runs in a separate job within the pull_request-triggered workflow, so that when it fails, it can be re-run separately (which should only take a few seconds)

Changes proposed in this PR:

  • In pytest job: replace step uploading report to Codecov with actions/upload-artifact
  • Create new upload-coverage job dependent on pytest that just

Legal Acknowledgement

By contributing to this software project, I agree to the following terms and conditions for my contribution:

  1. I agree my contributions are submitted under the license terms described in the LICENSE.txt file at the top level of this directory.
  2. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.

@lbianchi-lbl lbianchi-lbl self-assigned this Feb 9, 2024
Copy link

codecov bot commented Feb 9, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (7f78841) 77.43% compared to head (75a4f3e) 77.43%.
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1334      +/-   ##
==========================================
- Coverage   77.43%   77.43%   -0.01%     
==========================================
  Files         390      390              
  Lines       63758    63758              
  Branches    11737    11737              
==========================================
- Hits        49373    49370       -3     
- Misses      11841    11845       +4     
+ Partials     2544     2543       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@lbianchi-lbl lbianchi-lbl added Priority:High High Priority Issue or PR CI:run-integration triggers_workflow: Integration labels Feb 9, 2024
@idaes-build idaes-build removed the CI:run-integration triggers_workflow: Integration label Feb 9, 2024
@lbianchi-lbl lbianchi-lbl added the CI:run-integration triggers_workflow: Integration label Feb 9, 2024
@idaes-build idaes-build removed the CI:run-integration triggers_workflow: Integration label Feb 9, 2024
@lbianchi-lbl
Copy link
Contributor Author

@ksbeattie @andrewlee94 FYI - I'm merging this in now to restore Codecov upload functionality for main and other PRs.

@lbianchi-lbl lbianchi-lbl merged commit 0646ff4 into IDAES:main Feb 10, 2024
67 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority:High High Priority Issue or PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants