GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - kool-dev/docker-phpqa: Docker images for PHP Quality Assurance, Static Analysis, and CI tools

BranchesTags
Open more actions menu

Latest commit

 

History

46 Commits
46 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
7.4
7.4
 
 
8.0
8.0
 
 
8.1
8.1
 
 
8.2
8.2
 
 
8.3
8.3
 
 
template
template
 
 
LICENSE.md
LICENSE.md
 
 
README.md
README.md
 
 
fwd-template.json
fwd-template.json
 
 
kool.yml
kool.yml
 
 

Repository files navigation

CI/CD

Description

Minimal PHP QA Docker image focused on local/CI static analysis, styling and other tools.

It's plays nicely with kool.dev managed environments, but can fit in any other PHP use-case.

Tools included in the image

Static analysis

  • Phan - static analyzer for PHP (phan)
  • PHP Mess Detector (phpmd)
  • PHP Copy/Paste Detector (phpcpd)

Code Style

  • PHP Coding Standards Fixer (php-cs-fixer)

Security

  • Local PHP Security Checker (local-php-security-checker)

Testing

  • PHPUnit 9.5 (phpunit)
  • PHPUnit 10 (phpunit10 for cutting-edge testing)

Usage

Just execute any QA tool available straight from a new container. Using kool is the prefered way:

cd my-laravel-project/
kool docker kooldev/phpqa:7.4 phan
kool docker kooldev/phpqa:7.4 php-cs-fixer

With vanilla Docker you would need to run:

docker run --rm --init -it -v $(pwd):/app -w /app kooldev/phpqa:7.4

We strongly recommend checking out kool CLI for more benefits to your Docker environemnts.

Available Tags

The image built is kooldev/phpqa with tags:

  • 8.3
  • 8.2
  • 8.1
  • 8.0
  • 7.4

Using kool.yml

Examples of what you can do in a kool powered environment. Add to your kool.yml file:

# kool.yml
scripts:
  # just an alias to the PHPQA container
  phpqa: kool docker kooldev/phpqa:8.1
  # using the alias to call each tool with predefined parameters
  # assuming your application code is located in a `app/` folder
  phan: kool run phpqa phan --color -p -l app -iy 5
  phpcpd: kool run phpqa phpcpd --fuzzy app
  # ...

Contributing

Please feel free to use and open a PR with more QA tools you find useful to have! As a sort of roadmap these are the goals in our mind for the short term:

  • Make tools specific configurations available for the user in a friendly manner.
  • Ship boilerplate of CI snippets for popular engines (Github Actions, CircleCI, TravisCI).
  • Add more tools that we find helpful.

Update images with templates

You should change fwd-template.json for configuration and template/ folder for the actual base templates.

After any changes, we need to run kool run template to parse the templates and generate all versions folder/files.

License

The MIT License (MIT). Please see License File for more information.

About

Docker images for PHP Quality Assurance, Static Analysis, and CI tools

Topics

cidockerdocker-imagekoolkool-devphp-dockerphp-qaphpqaphpqatoolsstatic-analysis

Resources

Readme
MIT license
Activity
Custom properties

Stars

4 stars

Watchers

4 watching

Forks

2 forks
Report repository

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.