Many things are being renamed or moved.

One execution of drupalci is considered a "Build" (formerly "Job")

Each Build consists of three major "Build Stages" - Environment Construction, Codebase Assembly, and Assesment

Each Build stage consists of one or more "Jobs" - Jobs are really just a logical grouping of individual "Build Steps"

"Build Steps" will be renamed to "Build Step" to remove the plurality.

Many other things will be refactored/reshuffled for this as well.

CommentFileSizeAuthor
#12 2815397-namespace-changes.patch2.42 KBmradcliffe

Comments

Mixologic created an issue. See original summary.

  • Mixologic committed 0208fda on 2815397-rename-and-add-placeholders
    Issue #2815397: Renames JobBase to BuildBase, JobInterface to...
  • Mixologic committed 043f923 on 2815397-rename-and-add-placeholders
    Issue #2815397: Adds interfaces for CodeBase and Patch
    
  • Mixologic committed 0694fee on 2815397-rename-and-add-placeholders
    Issue #2815397: Moves everything in DrupalCI job to DrupalCI build
    
  • Mixologic committed 09f6306 on 2815397-rename-and-add-placeholders
    Issue #2815397: Dev container configs are unneeded
    
  • Mixologic committed 182daf9 on 2815397-rename-and-add-placeholders
    Issue #2815397: Adds more Environment placeholders
    
  • Mixologic committed 1fe6b6c on 2815397-rename-and-add-placeholders
    Issue #2815397: Moves ContainerBase with its bretheren
    
  • Mixologic committed 4bd014e on 2815397-rename-and-add-placeholders
    Issue #2815397: Removes more cruft
    
  • Mixologic committed 65be600 on 2815397-rename-and-add-placeholders
    Issue #2815397: Moves the incomplete assertion until after the working...
  • Mixologic committed 746a248 on 2815397-rename-and-add-placeholders
    Issue #2815397: Removes extraneous unused code
    
  • Mixologic committed 76d703a on 2815397-rename-and-add-placeholders
    Issue #2815397: Removes installing docker from within the app. Not our...
  • Mixologic committed 7fb4d90 on 2815397-rename-and-add-placeholders
    Issue #2815397: Fixes a whoops
    
  • Mixologic committed 8c1cf7b on 2815397-rename-and-add-placeholders
    Issue #2815397: Commented out instructions are wrong anyhow
    
  • Mixologic committed ad9a7bf on 2815397-rename-and-add-placeholders
    Issue #2815397: Moves Helpers out of Console
    
  • Mixologic committed b411f2c on 2815397-rename-and-add-placeholders
    Issue #2815397: If things move, paths need to change
    
  • Mixologic committed c655e54 on 2815397-rename-and-add-placeholders
    Issue #2815397: Removes more unused container code
    
  • Mixologic committed ccd06dc on 2815397-rename-and-add-placeholders
    Issue #2815397: Some Tests didnt get the movement memos
    
  • Mixologic committed e98b850 on 2815397-rename-and-add-placeholders
    Issue #2815397: Finishes renaming things and gets rid of...
  • Mixologic committed f1984ce on 2815397-rename-and-add-placeholders
    Issue #2815397: Adds renames the SimpletestLegacy7Job to Build
    
  • Mixologic committed f538173 on 2815397-rename-and-add-placeholders
    Issue #2815397: Removes extraneous comments and adds Environment...

  • Mixologic committed 5c65ebb on 2815397-rename-and-add-placeholders
    Issue #2815397: Adds placeholders for future Build Steps and more
    
  • Mixologic committed d85a5f2 on 2815397-rename-and-add-placeholders
    Issue #2815397: Job Plugins ought to implement the JobInterface
    
Mixologic’s picture

Things that need to happen -> These might all be their own issues.

  1. Everything under Build ought to be injectable, and we should have providers for all of them, and everything should use those providers.
  2. Sample build.yml file needs to be created
  3. Move all of the container starting out of BuildBase/BuildInterface into their respective Environment Plugins
  4. Define BuildStepInterface, JobInterface, BuildStageInterface and implement all those methods
  5. Define DatabaseInterface, EnvironmentInterface
  6. Sort out how 'artifact gathering' is actually going to work. Probably a Trait on BuildStep classes that lets us get at them.
  7. Start moving the Preprocess Plugin logic into the BuildSteps.

And much more

  • Mixologic committed 6df5366 on 2815397-rename-and-add-placeholders
    Issue #2815397: Adds some functions to the JobInterface as well as to...
  • Mixologic committed 8e2b30f on 2815397-rename-and-add-placeholders
    Issue #2815397: Moves Some commands around
    
  • Mixologic committed c00680b on 2815397-rename-and-add-placeholders
    Issue #2815397: Adds TaskInterface and Task Traits
    
mile23’s picture

Status: Active » Needs work

Generally diggin' the directory structure, with plugins for every level of build task. This lets us have config for build jobs, for instance. Unfortunately I can't run the tests:

$ ./bin/phpunit 
PHPUnit 4.8.23 by Sebastian Bergmann and contributors.

PHP Fatal error:  Class 'DrupalCI\Console\Command\DrupalCICommandBase' not found in /home/vagrant/drupalci_testbot/src/DrupalCI/Console/Command/Status/StatusCommand.php on line 18

Very happy with the new build definition format.

  • Mixologic committed 2504309 on 2815397-rename-and-add-placeholders
    Issue #2815397: Moving the commands didnt have the whole refactor in the...
mile23’s picture

Status: Needs work » Reviewed & tested by the community

OK, I've been having trouble getting all the docker images for the dev setup, but i'm only missing web-5.6.

That means only one failing test for this setup, so provisional RTBC. If it breaks everything, blame Comcast.

Mixologic’s picture

Status: Reviewed & tested by the community » Needs work

This has been merged into dev, and the branch cleaned up. Now, need to make sub issues for all the next steps

mradcliffe’s picture

- git fetch
- git merge --ff-only origin/dev
- rm -rf vendor/
- composer install
- ./bin/phpunit

I'll try killing the directory and trying again.

username@host:~/dev/drupalci_testbot$ ./bin/phpunit
PHPUnit 4.8.27 by Sebastian Bergmann and contributors.

PHP Fatal error:  Class 'DrupalCI\Build\Codebase\CodeBase' not found in
/home/username/dev/drupalci_testbot/src/DrupalCI/Console/Command/Run/RunCommand.php
on line 136
PHP Stack trace:
PHP   1. {main}()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/phpunit:0
PHP   2. PHPUnit_TextUI_Command::main()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/phpunit:47
PHP   3. PHPUnit_TextUI_Command->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/TextUI/Command.php:100
PHP   4. PHPUnit_TextUI_TestRunner->doRun()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/TextUI/Command.php:149
PHP   5. PHPUnit_Framework_TestSuite->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/TextUI/TestRunner.php:440
PHP   6. PHPUnit_Framework_TestSuite->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestSuite.php:747
PHP   7. PHPUnit_Framework_TestCase->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestSuite.php:747
PHP   8. PHPUnit_Framework_TestResult->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:724
PHP   9. PHPUnit_Framework_TestCase->runBare()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestResult.php:612
PHP  10. PHPUnit_Framework_TestCase->runTest()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:768
PHP  11. ReflectionMethod->invokeArgs()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:909
PHP  12. DrupalCI\Tests\Application\ContribD7PassingTest->testD7Contrib()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:909
PHP  13. Symfony\Component\Console\Tester\ApplicationTester->run()
/home/username/dev/drupalci_testbot/tests/DrupalCI/Tests/Application/ContribD7PassingTest.php:43
PHP  14. Symfony\Component\Console\Application->run()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Tester/ApplicationTester.php:76
PHP  15. Symfony\Component\Console\Application->doRun()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Application.php:124
PHP  16. Symfony\Component\Console\Application->doRunCommand()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Application.php:193
PHP  17. Symfony\Component\Console\Command\Command->run()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Application.php:849
PHP  18. DrupalCI\Console\Command\Run\RunCommand->execute()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Command/Command.php:259

Fatal error: Class 'DrupalCI\Build\Codebase\CodeBase' not found in
/home/username/dev/drupalci_testbot/src/DrupalCI/Console/Command/Run/RunCommand.php
on line 136

Call Stack:
    0.0001     234032   1. {main}()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/phpunit:0
    0.0043    1302376   2. PHPUnit_TextUI_Command::main()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/phpunit:47
    0.0043    1309496   3. PHPUnit_TextUI_Command->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/TextUI/Command.php:100
    0.1142    9658840   4. PHPUnit_TextUI_TestRunner->doRun()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/TextUI/Command.php:149
    0.1190    9891072   5. PHPUnit_Framework_TestSuite->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/TextUI/TestRunner.php:440
    0.1203    9907488   6. PHPUnit_Framework_TestSuite->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestSuite.php:747
    0.1222    9911720   7. PHPUnit_Framework_TestCase->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestSuite.php:747
    0.1222    9913312   8. PHPUnit_Framework_TestResult->run()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:724
    0.1226    9987400   9. PHPUnit_Framework_TestCase->runBare()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestResult.php:612
    0.1333   12736840  10. PHPUnit_Framework_TestCase->runTest()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:768
    0.1333   12737664  11. ReflectionMethod->invokeArgs()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:909
    0.1334   12737856  12.
DrupalCI\Tests\Application\ContribD7PassingTest->testD7Contrib()
/home/username/dev/drupalci_testbot/vendor/phpunit/phpunit/src/Framework/TestCase.php:909
    0.1335   12759768  13.
Symfony\Component\Console\Tester\ApplicationTester->run()
/home/username/dev/drupalci_testbot/tests/DrupalCI/Tests/Application/ContribD7PassingTest.php:43
    0.1349   13094928  14. Symfony\Component\Console\Application->run()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Tester/ApplicationTester.php:76
    0.1349   13096192  15. Symfony\Component\Console\Application->doRun()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Application.php:124
    0.1350   13097176  16.
Symfony\Component\Console\Application->doRunCommand()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Application.php:193
    0.1350   13097704  17. Symfony\Component\Console\Command\Command->run()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Application.php:849
    0.1357   13173256  18. DrupalCI\Console\Command\Run\RunCommand->execute()
/home/username/dev/drupalci_testbot/vendor/symfony/console/Command/Command.php:259
mile23’s picture

@mradcliffe You have a case-sensitive file system, don't you? :-)

mradcliffe’s picture

StatusFileSize
new2.42 KB

Yes, the case-sensitivity matters for the namespace for me. if I change all references of "Codebase" to "CodeBase" I no longer run into the issue.

Mixologic’s picture

Status: Needs work » Fixed

I went ahead and stripped out all the capital B's over in #2820540: Completely re-do all the things.

Im going to mark this as fixed. We've got a lot of issues floating around , or a lot of the things in this were done in the above refactoring.

Mixologic’s picture

Assigned: Mixologic » Unassigned
Mixologic’s picture

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.