Add Makefile to make it easier for developers to run docker commands

This commit is contained in:
Wendell Adriel
2023-02-08 12:05:30 +00:00
parent 8d34d0743f
commit 2cdcf7f3e3
3 changed files with 19 additions and 4 deletions

1
.gitattributes vendored
View File

@ -13,5 +13,6 @@ phpstan.neon export-ignore
CHANGELOG.md export-ignore CHANGELOG.md export-ignore
CONTRIBUTING.md export-ignore CONTRIBUTING.md export-ignore
docker-compose.yml export-ignore docker-compose.yml export-ignore
Makefile export-ignore
README.md export-ignore README.md export-ignore

View File

@ -61,15 +61,15 @@ If you have Docker installed, you can quickly get all dependencies for Pest in p
our Docker files. Assuming you have the repository cloned, you may run the following our Docker files. Assuming you have the repository cloned, you may run the following
commands: commands:
1. `docker compose build` to build the Docker image 1. `make build` to build the Docker image
2. `docker compose run --rm composer install` to install Composer dependencies 2. `make install` to install Composer dependencies
3. `docker compose run --rm composer test` to run the project tests and analysis tools 3. `make test` to run the project tests and analysis tools
If you want to check things work against a specific version of PHP, you may include If you want to check things work against a specific version of PHP, you may include
the `PHP` build argument when building the image: the `PHP` build argument when building the image:
```bash ```bash
docker compose build --build-arg PHP=8.2 make build ARGS="--build-arg PHP=8.2"
``` ```
The default PHP version will always be the lowest version of PHP supported by Pest. The default PHP version will always be the lowest version of PHP supported by Pest.

14
Makefile Normal file
View File

@ -0,0 +1,14 @@
# Well documented Makefiles
DEFAULT_GOAL := help
help:
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z0-9_-]+:.*?##/ { printf " \033[36m%-40s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)
build: ## Build all docker images. Specify the command e.g. via make build ARGS="--build-arg PHP=8.2"
docker compose build $(ARGS)
##@ [Application]
install: ## Install the composer dependencies
docker compose run --rm composer install
test: ## Run the tests
docker compose run --rm composer test