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

Move singularity out of main CI tests and into separate docker image #8774

Closed
ashb opened this issue May 7, 2020 · 2 comments · Fixed by #8945
Closed

Move singularity out of main CI tests and into separate docker image #8774

ashb opened this issue May 7, 2020 · 2 comments · Fixed by #8945
Assignees
Labels
area:CI Airflow's tests and continious integration area:dev-env CI, pre-commit, pylint and other changes that do not change the behavior of the final code area:dev-tools

Comments

@ashb
Copy link
Member

ashb commented May 7, 2020

A CI build failed because we couldn't download a release from https://github.com/sylabs/singularity -- which while it was a random network blib, there is no need for the tests for the singularity operators to live in our CI image.

We should instead create "system tests" for singularity, and ensure that the unit tests use mocking.

@ashb ashb added area:system-tests area:CI Airflow's tests and continious integration labels May 7, 2020
@ashb
Copy link
Member Author

ashb commented May 7, 2020

Wait, I've just looked at the singularity operator tests - it already seems to mock it, so does anyone know why we include this in our CI image? @potiuk ?

@potiuk
Copy link
Member

potiuk commented May 8, 2020

Not sure if it is still needed. Maybe @vsoch can tell more about it whether it is actually needed in the image. I think we had a least few "integration" kind of tests where we run it against a real singluarity installation?

Comment:

In this case it is more of an "integration" tests rather than "system" test (at least in the currently used "integration" test definition that we have). "System" tests (at least how we have defined now) are tests that are reaching out to something that is externally available and we do not have a locally running - via docker compose. Maybe eventually we might want to change those names somehow after we finish all of those "clean-ups" but for now, it's the classification we use :). This is another - unrelated topic on making an order also in the "unit" tests we have - some of them require backend db for example, some of them no, some of them require the whole airflow environment configured, so they are not technically "unit" tests either.

But I am sure we will get there and get the classification right and commonly agreed eventually :). It's just not the right time to do it.

I plan to take a look at this after some of the most important production image changes are handled (this is much higher priority). I created an umbrella task for it #8785 and linked it with all the sub-tasks (minicluster, Hadoop, singularity, kubectl, kind) as all of them can be moved out.

@potiuk potiuk added area:dev-tools area:dev-env CI, pre-commit, pylint and other changes that do not change the behavior of the final code and removed area:system-tests labels May 8, 2020
@potiuk potiuk changed the title Move singularity out of main CI tests and into separate docker image/system test Move singularity out of main CI tests and into separate docker image May 8, 2020
@ashb ashb self-assigned this May 21, 2020
ashb added a commit to astronomer/airflow that referenced this issue May 21, 2020
The singularity operator tests _have always_ used mocking, so we were
adding 700MB to our docker image for nothing.

Fixes apache#8774
ashb added a commit that referenced this issue May 21, 2020
The singularity operator tests _have always_ used mocking, so we were
adding 700MB to our docker image for nothing.

Fixes #8774
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:CI Airflow's tests and continious integration area:dev-env CI, pre-commit, pylint and other changes that do not change the behavior of the final code area:dev-tools
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants