marvel-nccr / ansible-role-aiida

An ansible role that installs and configures AiiDA on Ubuntu.
Other
2 stars 5 forks source link

🧪 Move to GitHub CI #45

Closed chrisjsewell closed 3 years ago

chrisjsewell commented 3 years ago

This PR:

  1. Moves testing and deployment from TravisCI to Github Actions; this is now the principle test infrastructure used by AiiDA
  2. Updates the pre-commit configuration and add a YAML formatter (causing some change to indentations)
  3. Drops testing of Ubuntu 16.04 and add testing for 20.04; 16.04 is scheduled for end-of-life in April 2021, but the reason to remove early is that the included python version is 3.5 which is now deprecated by aiida-core (and already failing for aiida-yambo install). Note 18.04 has python 3.6 and 20.04 has 3.8.
    • psutil does not currently have a wheel install for 20.04, this necessitates the install of gcc and python3-dev
  4. Update README with new CI badge and development instructions
  5. Adds a tox.ini configuration, for development environment automation
ltalirz commented 3 years ago

I suggest you also adapt https://github.com/marvel-nccr/cookiecutter-ansible-role

chrisjsewell commented 3 years ago

I suggest you also adapt marvel-nccr/cookiecutter-ansible-role

Yep I was just messing around, working out the kinks before changing that

ltalirz commented 3 years ago

P.S. It might be useful to open an issue on quantum mobile to keep track the progress of moving roles to github actions.

Since there are >30 roles it might be worth thinking about a (semi-)automated way of migrating a role (run some script, ...); I still remember when I needed to move roles to molecule 3 and I thought automation wasn't necessary but in the end I might have saved a bit of time since one easily makes mistakes when doing everything by hand.

chrisjsewell commented 3 years ago

P.S. It might be useful to open an issue on quantum mobile to keep track the progress of moving roles to github actions.

Yep 👍

Since there are >30 roles it might be worth thinking about a (semi-)automated way of migrating a role (run some script, ...)

Possibly, although on the other hand, you could end up spending lots of time writing a script 🤷 ci.yml and pre-commit.yml are almost copy-paste across projects, and perhaps whilst I'm at it, I will try to standardize e.g. the environmental variables denoting which docker image to run

chrisjsewell commented 3 years ago

Grr, sounds like psutil is a real pain in the back-side to install: https://github.com/pytest-dev/pytest-xdist/issues/583, https://github.com/giampaolo/psutil/issues/1753

chrisjsewell commented 3 years ago

@ltalirz if you want to have a quick look, I've updated the first comment to specify the changes

chrisjsewell commented 3 years ago

Also, is there a specific reason to use marvelnccr/ubuntu-docker-base for testing some roles, as opposed to marvelnccr/docker-ubuntu1804 etc?

chrisjsewell commented 3 years ago

Ok - do our current installation instructions on the aiida docs work for 20.04?

I guess as long as you have a C compiler installed, or if you are using Conda it might also be okay

shall we open an issue on it?

chrisjsewell commented 3 years ago

P.S. It might be useful to open an issue on quantum mobile to keep track the progress of moving roles to github actions.

Ok opened an issue on this. So going to merge here, then do another PR to update to aiida-core v1.4.2