A CLI tool to train certifications
Installs: 4 217
Open Issues: 1
- php: ^8.0
- certificationy/certificationy: ^2.0
- certificationy/php-pack: ^1.5
- certificationy/symfony-pack: ^1.4
- symfony/console: ^4.4 || ^5.4 || ^6.0
- symfony/yaml: ^4.4 || ^5.4 || ^6.0
- friendsofphp/php-cs-fixer: ^3.5
- php-parallel-lint/php-parallel-lint: ^1.0
- phpstan/phpstan: ^1.3
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.0
This is the CLI tool to train on certifications.
How it looks?
Installation and update
$ composer create-project certificationy/certificationy-cli $ php certificationy.php
With Docker and Docker compose
Install the project prerequisites
The project has prerequisites:
- Docker (1.12+)
- Docker-composer (1.10+)
- GNU make
To install Docker, refer to the official documentation for your operating system: https://docs.docker.com/install/.
Once Docker installed, to check its smooth running, run
docker -v, you should get something like suit:
$ docker -v Docker version 1.12.4, build 1564f02
You must use the minimum version 1.12 of Docker.
To install the docker-composer, please also refer to the official documentation: https://docs.docker.com/compose/install/.
Once docker-composes installed (install it globally to be able and access from anywhere), to check its proper functioning, run
docker-compose -v, you should get something like suit:
$ docker-compose -v Docker-composer version 1.10.0, build 4bd6f1a
You must use the docker-compose version 1.10 minimum.
A makefile allows you to manipulate the container simply and easily.
You have to be able to run
make -v, which you are ready to choose:
$ make -v GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. GPLv3 + license: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are allowed to modify and redistribute. There is NO WARRANTY, to the extent of the will of the law.
Note: If you are using Windows, we strongly recommend that you use the Linux console included in Windows 10 (https://docs.microsoft.com/en-us/windows/wsl/install-win10) or to use an emulator for Command to be able to use
makewhich will greatly facilitate the work.
Using the Container
You should then be able to run
make which will show you using the Makefile:
$ make start: Start the project bash: Go to the bash container of the application stop: Stop docker containers
Start the application with
$make start docker-compose build Building app Step 1/19 : FROM php:7.1-fpm-alpine 7.1-fpm-alpine: Pulling from library/php ... # pulling image Successfully built 22ab66e58936 Successfully tagged certificationycli_app:latest docker-compose up -d Recreating certificationycli_app_1 docker exec -i -t 6929cb80f7a7df579910341c74208e05d6d5548900488c35b41c281da9fe940e /bin/bash bash-4.3#
Once the procedure is complete you can already use the bash of the container.
Run Certificationy CLI;
$ php certificationy.php
To exit bash docker
Stop the application with
$ make stop docker-compose kill Killing certificationycli_app_1 ... done
Runing it through docker composer
Start the container
Start it in daemon mode.
docker compose up -d
Execute this instruction or whatever certificationy you want.
docker exec -it certificationy-cli_app_1 /bin/bash -c "php certificationy.php start --training"
Stop the container
docker compose down
More run options
Select the number of questions
$ php certificationy.php start --number=10
The default value is 20.
$ php certificationy.php start --list [-l]
Will list all the categories available.
Only questions from certain categories
$ php certificationy.php start "Automated tests" "Bundles"
Will only get the questions from the categories "Automated tests" and "Bundles".
Use the category list from List categories.
Hide the information that questions are/aren't multiple choice
$ php certificationy.php start --hide-multiple-choice
As default, the information will be displayed.
Training mode: the solution is displayed after each question
$ php certificationy.php start --training
Set custom configuration file
$ bin/certificationy start --config=../config.yml
Will set custom config file.
And all combined
$ php certificationy.php start --number=5 --hide-multiple-choice "Automated tests" "Bundles"
- 5 questions
- We will hide the information that questions are/aren't multiple choice
- Only get questions from category "Automated tests" and "Bundles"
Note: if you pass
--list [-l]then you will ONLY get the category list, regarding your other settings.