Giter Site home page Giter Site logo

Disable certain docker images from loading in the CI to improve the time required to build the project when running tests about altis-dev-tools HOT 3 CLOSED

humanmade avatar humanmade commented on May 30, 2024
Disable certain docker images from loading in the CI to improve the time required to build the project when running tests

from altis-dev-tools.

Comments (3)

johnbillion avatar johnbillion commented on May 30, 2024 1

I think this can be closed off as implemented in humanmade/altis-core#487

from altis-dev-tools.

roborourke avatar roborourke commented on May 30, 2024

@Nikschavan yep, that PR you referenced is required to be able to do this and it's definitely something we want to do.

I've also been considering switching to GitHub actions as a way to provide a test image that has local server pre downloaded.

Regarding your list I don't think Cavalcade should be disabled. Can you elaborate on why you did that? It uses the same container as the PHP one but with different settings so I'm not sure there's any time saving there really in terms of the download, maybe some in start up time.

I'd be reluctant to switch off anything more than the following by default:

  • Kibana
  • Mailhog
  • XRay

Some of the others are dependent on the features you have configured eg. if you don't use S3 you don't need Tachyon, if you don't use search or native analytics you don't need elasticsearch.

I think we should look at adding support for CI environment config overrides specifically to help trim down what containers are spun up in CI.

from altis-dev-tools.

Nikschavan avatar Nikschavan commented on May 30, 2024

Regarding your list I don't think Cavalcade should be disabled. Can you elaborate on why you did that? It uses the same container as the PHP one but with different settings so I'm not sure there's any time saving there really in terms of the download, maybe some in start-up time.

I actually did not check how much time an individual image is saving, I am still testing this and I will report back if I have more info on this.

I had disabled cavalcade as I believe it does not need to execute any jobs that get scheduled during the unit tests as they cannot be tested anyway (do correct me if I am wrong and if I am missing something here)

WordPress' test suite disables WP Cron as well, without a fallback cron method - https://github.com/WordPress/wordpress-develop/blob/master/tests/phpunit/includes/bootstrap.php#L85-L89

So my assumption was that disabling the cron will reduce the setup time as well as it "might" reduce the time/resources spent to execute the cron jobs. This is when I am assuming the cron jobs are indeed being executed when the tests are being run.

I am yet to run any tests on how much improvement disabling each image in the list mentioned above is adding, I will report back when I have some more stats on these.

from altis-dev-tools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.