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

CI cleanup; All CI workflows are required to pass before merge to develop. #243

Merged
merged 19 commits into from
Dec 8, 2022

Conversation

edwardhartnett
Copy link
Contributor

@edwardhartnett edwardhartnett commented Dec 6, 2022

Fixes #242

Cleanup of CI system. All CI workflows are required to pass before merge to develop.

@edwardhartnett edwardhartnett marked this pull request as draft December 6, 2022 13:34
@edwardhartnett
Copy link
Contributor Author

Code coverage is working on developer workflow.

@edwardhartnett edwardhartnett marked this pull request as ready for review December 6, 2022 13:45
@edwardhartnett
Copy link
Contributor Author

edwardhartnett commented Dec 6, 2022

The new Intel build is failing like this:

6: ImportError: /home/runner/work/NCEPLIBS-bufr/NCEPLIBS-bufr/bufr/build/install/lib/python3.1/site-packages/_bufrlib.cpython-310-x86_64-linux-gnu.so: undefined symbol: __intel_sse2_strcpy
 6/62 Test  #6: test_pyncepbufr_write ............***Failed    0.09 sec

Anyone have any idea what is going on?

@jbathegit
Copy link
Collaborator

This has been an issue for a long time - see #231. That in turn references #135, where I mentioned this problem back in August of 2021. The python tests have never worked correctly under Intel, regardless of whether or not the code coverage flags are on.

@edwardhartnett
Copy link
Contributor Author

OK, I will turn off Python testing with Intel...

@edwardhartnett edwardhartnett changed the title CI cleanup CI cleanup; All CI workflows are required to pass before merge to develop. Dec 6, 2022
@edwardhartnett
Copy link
Contributor Author

@jbathegit if this looks good to you, approve it and get it merged. I had to change the settings to match the names used in this PR, so nothing else can be merged without updating their CI files to these. Let me know if that's a problem...

@jbathegit
Copy link
Collaborator

Thanks for adding in the Intel test, as it's long been a goal of mine to include that as one of the CI tests, but I could never figure out any way to do that!

A question though - is there any particular reason why the python builds and tests are now turned off for the MacOS? Under the old main.yml, we did have python builds and tests included on MacOS, as well as on all of the various Linux flavors.

@edwardhartnett
Copy link
Contributor Author

@jbathegit Good catch, I will turn on the python tests with MacOS...

@jbathegit
Copy link
Collaborator

I see where in commit 32d0131 you noted you were "taking python out of develop as it clashes with asan". What is "asan"?

@edwardhartnett
Copy link
Contributor Author

asan is short for the address santizer. It's turned on in develop with -fsanitize=address in C and Fortran flags.

The asan run is great because it catches memory errors and tells you the exact line of the code where the problem is. Super-helpful! But it does not play well with other tools. For example, using the debugger with code that has been built with address santizer causes a similar error to that seen here, a complaint about asan.

The solution is to do one asan build in develop. I would love to also do a python build in develop, but we are already doing that in Linux, so we can take it out of develop.

@jbathegit
Copy link
Collaborator

Ahh, OK thanks for clarifying that. I did see where you'd opened up #244, and that's a bit of a head-scratcher. Jack or I will have to take a good look at that at some point, but for now I want to get some other stuff tidied up, including #78 which we're very close to resolving. In the meantime, I'll go ahead and get this merged in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

improve CI system
2 participants