Comments (8)
After initial review, it looks like the cron timer is all set to go (just commented out) and the steps to calculate the diff are there. The two jobs for creating the pull requests are also there. What's missing are the pull request updates after testing:
If all tests pass: The pr will be labeled verified and automatically merged
If any test fails or has an unknown error: The pr will be labeled bug and failed verification and will remain open
If any tests are skipped: The pr will be labeled unverified and will remain open
So what I need to determine next (maybe @sliu008 or @frankinspace can help with this) is how to tell if collections are skipped, how to tell if they are failed, and how to tell if everything worked properly.
If I'm understanding the rest properly, it looks like the diff list is the new file for the PR, so most likely there would be some indication in that list as to whether or not a collection was skipped or failed. I'll look into that file a little more and see what I can find.
Work to be done includes:
- Determine failed items
- Determine skipped items
- Add a step for updating PR labels on failed items
- Add a step for updating PR labels on skipped items
- Turn on cron timer
from l2ss-py-autotest.
@jonathansmolenski Did you check the https://github.com/podaac/l2ss-py-autotest/blob/main/.github/workflows/verify.yml workflow, most of that logic is in there.
from l2ss-py-autotest.
Thanks @frankinspace I hadn't gone through that yet. Should be everything I need
from l2ss-py-autotest.
@frankinspace @sliu008 I'm pretty happy witht he workflow right now, but I want to verify one thing. When the results are marked as "skipped" it looks like the pull requests is merged. Is that the proper action to take in that scenario?
from l2ss-py-autotest.
No, I think the intent for skipped is that someone needs to acknowledge the situation and manually deal with the PR.
from l2ss-py-autotest.
A few updates.
I've added a step to the verify.yml file that adds a check (fails the check) if any of the tests are failed, skipped, or errored out.
Next, I've updated the branch main
so that it requires my check to be passed in order to auto-merge.
I'll probably have to add a new step to pass the check if nothing has gone wrong, and I'll need to fix the issue where if the UAT commit completes, the OPS check can't because it needs to pull the main branch.
from l2ss-py-autotest.
@jonathansmolenski I think you closed this unintentionally?
from l2ss-py-autotest.
The github action in question can be found here: https://github.com/podaac/l2ss-py-autotest/blob/main/.github/workflows/diff.yml
from l2ss-py-autotest.
Related Issues (17)
- Lat/lon variables can be in root group
- HDFEOS files finding lat/lon via netCDF4.groups not working HOT 1
- Only run verify workflow on PRs with `autotest` label HOT 1
- Run checks on autotest PRs nightly HOT 1
- Get l2ss-py-autotest PRs to show shortname in the title properly HOT 1
- Add test to recheck all already associated collections every 3 days
- Add test to recheck all PRs in failed state, and if any pass then merge and close the PR like normal every 3 days
- l2ss-py-autotest: Add GitLeaks check to Github Actions
- Add more nightly jobs to l2ss-py-autotest HOT 1
- Some collection shortnames not populating properly
- Add a nightly job to re-run existing collections through the tests
- Add slack notification or Github Issue for nightly test failures/skips HOT 1
- Identify which GESDISC collections are failing the spatial subset test HOT 1
- Placeholder for bugs identified in #28
- Disable new collection PODAAC automated test and move to new l2ss-py-autotest
- GitHub always shows merge conflicts when multiple PRs opened
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from l2ss-py-autotest.