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

Add CI Tests #21

Merged
merged 15 commits into from
May 21, 2024
Merged

Add CI Tests #21

merged 15 commits into from
May 21, 2024

Conversation

willdumm
Copy link
Contributor

@willdumm willdumm commented May 21, 2024

This PR adds a Github CI workflow that installs epam with mamba, then installs netam and runs netam tests.

This was somewhat difficult, since there are multiple private dependencies. I wanted to follow the install process described in the epam readme as closely as possible. Here are some notes for future reference:

  • https://github.com/webfactory/ssh-agent was helpful for providing authentication to private dependency repos shmple and epam. Since there are multiple, it's necessary to create the ssh keys with a comment containing the target repo. The process is described in the readme for the ssh-agent action, especially here: https://github.com/webfactory/ssh-agent#support-for-github-deploy-keys
  • Github's checkout action doesn't source ssh keys (it wants you to use a user-associated access token instead of a key, which seems odd, and won't work for the pip install of shmple from the epam requirements file) so epam had to be cloned manually
  • I wanted to test on both ubuntu-latest and macos-latest runners, but could only get Ubuntu-latest to work. This is probably because macOS-latest now uses apple silicon, I get the following error during installation on that runner:
  │ exit code: 1
  ╰─> [13 lines of output]
      /var/folders/2f/8t5k6yr535sdw0s4glnpxrzm0000gn/T/H5closeniuc16_i.c:1:10: fatal error: 'H5public.h' file not found
      #include "H5public.h"
               ^~~~~~~~~~~~
      1 error generated.
      cpuinfo failed, assuming no CPU features: 'flags'
      * Using Python 3.9.19 | packaged by conda-forge | (main, Mar 20 2024, 12:55:20)
      * Found cython 3.0.10
      * USE_PKGCONFIG: True
      * Found conda env: ``/Users/runner/micromamba/envs/epam``
      .. ERROR:: Could not find a local HDF5 installation.
         You may need to explicitly state where your local HDF5 headers and
         library can be found by setting the ``HDF5_DIR`` environment
         variable or by using the ``--hdf5`` command-line option.
      [end of output]
  • In case we want to use other runners or python versions, a matrix is already set up and referenced in the action, but only contains one os/python version combo

@willdumm willdumm requested a review from matsen May 21, 2024 19:11
Copy link
Contributor

@matsen matsen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Marvelous!

@matsen matsen merged commit 5bfc067 into main May 21, 2024
1 check passed
@willdumm willdumm deleted the wd-ci-tests branch May 21, 2024 20:14
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.

2 participants