Skip to content

Commit a1f05dd

Browse files
authored
Merge pull request #205 from EasyPost/makefile
chore: introduces Makefile for consistent command usage
2 parents 30c8cf3 + 519a6e5 commit a1f05dd

File tree

5 files changed

+140
-82
lines changed

5 files changed

+140
-82
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ jobs:
1717
- name: install composer
1818
run: composer self-update
1919
- name: install dependencies
20-
run: composer install --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
20+
run: make install
2121
- name: lint
22-
run: composer lint
22+
run: make lint
2323
run-tests:
2424
runs-on: ubuntu-20.04
2525
strategy:
@@ -43,8 +43,8 @@ jobs:
4343
- name: install composer
4444
run: composer self-update
4545
- name: install dependencies
46-
run: composer install --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
46+
run: make install
4747
- name: test with phpunit on ${{ matrix.phpversion }}
48-
run: EASYPOST_TEST_API_KEY=123 EASYPOST_PROD_API_KEY=123 composer test
48+
run: EASYPOST_TEST_API_KEY=123 EASYPOST_PROD_API_KEY=123 make test
4949
- name: Security scan
50-
run: composer scan
50+
run: make scan

Makefile

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
## help - Display help about make targets for this Makefile
2+
help:
3+
@cat Makefile | grep '^## ' --color=never | cut -c4- | sed -e "`printf 's/ - /\t- /;'`" | column -s "`printf '\t'`" -t
4+
5+
## clean - Cleans the project
6+
clean:
7+
rm -rf vendor clover.xml clover.html bin .phpunit.cache
8+
9+
## coverage - Runs the test suite and generates a coverage report
10+
coverage:
11+
composer coverage
12+
13+
## fix - Fix linting errors
14+
fix:
15+
composer fix
16+
17+
## install - Install dependencies
18+
install:
19+
composer install --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
20+
21+
## lint - Lint the project
22+
lint:
23+
composer lint
24+
25+
## release - Cuts a release for the project on GitHub (requires GitHub CLI)
26+
# tag = The associated tag title of the release
27+
release:
28+
gh release create ${tag}
29+
30+
## scan - Runs security analysis on the project
31+
scan:
32+
composer scan
33+
34+
## test - Test the project
35+
test:
36+
composer test
37+
38+
## update - Update dependencies
39+
update:
40+
composer update
41+
42+
.PHONY: help clean fix install lint release scan test update

README.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,19 +74,25 @@ Upgrading major versions of this project? Refer to the [Upgrade Guide](UPGRADE_G
7474

7575
```bash
7676
# Install dependencies
77-
composer install
77+
make install
78+
79+
# Update dependencies
80+
make update
7881

7982
# Lint project
80-
composer lint
83+
make lint
8184

8285
# Fix linting errors
83-
composer fix
86+
make fix
8487

8588
# Run tests
86-
EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... composer test
89+
EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... make test
8790

8891
# Generate coverage reports (requires Xdebug for HTML report)
89-
EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... composer coverage
92+
EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... make coverage
93+
94+
# Run security analysis
95+
make scan
9096
```
9197

9298
### Testing

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
},
2525
"require-dev": {
2626
"allejo/php-vcr-sanitizer": "^1.0.9",
27-
"php-vcr/php-vcr": "^1.5",
27+
"php-vcr/php-vcr": "1.5.2",
2828
"phpunit/phpunit": "^9",
2929
"squizlabs/php_codesniffer": "^3.6",
3030
"roave/security-advisories": "dev-latest"

0 commit comments

Comments
 (0)