@@ -4,59 +4,65 @@ ifneq ("$(wildcard .env)","")
4
4
endif
5
5
6
6
.PHONY : docs
7
+ .DEFAULT_GOAL : help
7
8
8
- env :
9
+ # Thanks to https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html
10
+ help : # # Show this help
11
+ @printf " \033[33m%s:\033[0m\n" ' Available commands'
12
+ @awk ' BEGIN {FS = ":.*?## "} /^[a-zA-Z0-9_-]+:.*?## / {printf " \033[32m%-18s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST )
13
+
14
+ env : # # Create environment file for local testing
9
15
echo " MR_LINTER_GITHUB_HTTP_TOKEN=token\nMR_LINTER_GITLAB_HTTP_TOKEN=token\n" > .env
10
16
echo " E2E_MR_LINTER_GITHUB_HTTP_TOKEN=token\nE2E_MR_LINTER_GITLAB_HTTP_TOKEN=token" >> .env
11
17
echo " E2E_MR_LINTER_BITBUCKET_APP_USER=token\nE2E_MR_LINTER_BITBUCKET_APP_PASSWORD=token\n" >> .env
12
18
13
- # usage as `make try MR_ID=1`
14
- try :
15
- GITHUB_ACTIONS=1 \
16
- GITHUB_REPOSITORY=artarts36/php-merge-request-linter \
17
- GITHUB_GRAPHQL_URL=https://api.github.com/graphql \
18
- GITHUB_REF_NAME=${MR_ID} /merge \
19
- ./bin/mr-linter lint --debug --metrics
20
-
21
- # usage as `make try-phar MR_ID=1`
22
- try-phar : build-phar
23
- GITHUB_ACTIONS=1 \
24
- GITHUB_REPOSITORY=artarts36/php-merge-request-linter \
25
- GITHUB_GRAPHQL_URL=https://api.github.com/graphql \
26
- GITHUB_REF_NAME=${MR_ID} /merge \
27
- ./bin/build/mr-linter.phar lint --debug --metrics
19
+ # ######################################
20
+ # Locally run of MR-Linter
21
+ # #####################################
28
22
29
- # usage as `make try MR_ID=1`
30
- try-docker : docker-build
23
+ try : docker-build # # Try lint on docker with GitHub Actions: usage as `make try MR_ID=1`
31
24
docker run \
25
+ --rm \
32
26
--env-file .env \
33
27
--env GITHUB_ACTIONS=1 \
34
28
--env GITHUB_REPOSITORY=artarts36/php-merge-request-linter \
35
29
--env GITHUB_GRAPHQL_URL=https://api.github.com/graphql \
36
30
--env GITHUB_REF_NAME=${MR_ID} /merge \
37
31
artarts36/merge-request-linter:testing " lint" --debug --metrics
38
32
39
- # usage as `make try-gitlab MR_ID=1`
40
- try-gitlab :
41
- GITLAB_CI=1 \
42
- CI_MERGE_REQUEST_IID=${MR_ID} \
43
- CI_MERGE_REQUEST_PROJECT_ID=41749211 \
44
- CI_SERVER_URL=https://gitlab.com \
45
- ./bin/mr-linter lint --debug --metrics
46
-
47
- # usage as `make try-bitbucket MR_ID=2`
48
- try-bitbucket :
49
- BITBUCKET_PROJECT_KEY=ArtARTs36 \
50
- BITBUCKET_PR_ID=${MR_ID} \
51
- BITBUCKET_WORKSPACE=ArtARTs36 \
52
- BITBUCKET_REPO_SLUG=test-repo \
53
- ./bin/mr-linter lint --debug --metrics
54
-
55
- docker-build :
56
- docker build . -t artarts36/merge-request-linter:testing
33
+ try-gitlab : # # Try lint on docker with Gitlab CI: usage as `make try-gitlab MR_ID=1`
34
+ docker run \
35
+ --rm \
36
+ --env-file .env \
37
+ --env GITLAB_CI=1 \
38
+ --env CI_MERGE_REQUEST_IID=${MR_ID} \
39
+ --env CI_MERGE_REQUEST_PROJECT_ID=41749211 \
40
+ --env CI_SERVER_URL=https://gitlab.com \
41
+ artarts36/merge-request-linter:testing " lint" --debug --metrics
42
+
43
+ try-bitbucket : # # Try lint on docker with Gitlab CI: usage as `make try-bitbucket MR_ID=1`
44
+ docker run \
45
+ --rm \
46
+ --env-file .env \
47
+ --env BITBUCKET_PROJECT_KEY=ArtARTs36 \
48
+ --env BITBUCKET_PR_ID=${MR_ID} \
49
+ --env BITBUCKET_WORKSPACE=ArtARTs36 \
50
+ --env BITBUCKET_REPO_SLUG=test-repo \
51
+ artarts36/merge-request-linter:testing " lint" --debug --metrics
57
52
58
- docker-lint : docker-build
59
- docker run artarts36/merge-request-linter lint
53
+ try-phar : build-phar # # Try lint on PHAR: usage as `make try-phar MR_ID=1`
54
+ GITHUB_ACTIONS=1 \
55
+ GITHUB_REPOSITORY=artarts36/php-merge-request-linter \
56
+ GITHUB_GRAPHQL_URL=https://api.github.com/graphql \
57
+ GITHUB_REF_NAME=${MR_ID} /merge \
58
+ ./bin/build/mr-linter.phar lint --debug --metrics
59
+
60
+ # ######################################
61
+ # Build of MR-Linter
62
+ # #####################################
63
+
64
+ docker-build : # # Build docker image for local testing
65
+ docker build . -t artarts36/merge-request-linter:testing
60
66
61
67
# usage as `make docker-pub-build MR_LINTER_VERSION=0.2.0`
62
68
docker-pub-build :
@@ -85,17 +91,12 @@ docker-pub-try:
85
91
-v " ${PWD} /.mr-linter.yml:/app/.mr-linter.yml:ro" \
86
92
artarts36/merge-request-linter:${MR_LINTER_VERSION} lint
87
93
88
- docs :
89
- php docs/Builder/build_rules.php
90
- php docs/Builder/build_config_json_schema.php
91
- php docs/Builder/build_conditions.php
92
-
93
- docs-docker : docker-build
94
+ docs : # # Build documentation
94
95
docker run \
95
96
--rm \
96
97
--volume ./:/app \
97
98
--env-file .env \
98
- --entrypoint " make " \
99
+ --entrypoint " composer " \
99
100
artarts36/merge-request-linter:testing " docs"
100
101
101
102
deps-check :
@@ -110,16 +111,18 @@ check: deps-check
110
111
composer deptrac
111
112
composer test
112
113
113
- info :
114
- ./bin/mr-linter info
115
-
116
- dump :
117
- ./bin/mr-linter dump
114
+ info : # # Run "mr-linter info" on docker
115
+ docker run \
116
+ --rm \
117
+ --volume ./:/app \
118
+ --env-file .env \
119
+ artarts36/merge-request-linter:testing " info"
118
120
119
- dump-docker : docker-build
121
+ dump : # # Run "mr-linter dump" on docker
120
122
docker run \
123
+ --rm \
121
124
--volume ./:/app \
122
- --entrypoint " make " \
125
+ --env-file .env \
123
126
artarts36/merge-request-linter:testing " dump"
124
127
125
128
push-docs :
@@ -139,37 +142,38 @@ lint-fix-docker: docker-build
139
142
--entrypoint " composer" \
140
143
artarts36/merge-request-linter:testing " lint-fix"
141
144
142
- stat-analyse-docker : docker-build
145
+ stat-analyse : docker-build
143
146
docker run \
147
+ --rm \
144
148
--env-file .env \
145
149
--entrypoint " composer" \
146
150
artarts36/merge-request-linter:testing " stat-analyse"
147
151
148
- test-e2e :
149
- composer test-e2e
150
-
151
- test-e2e-docker : docker-build
152
+ test-e2e : docker-build
152
153
docker run \
154
+ --rm \
153
155
--env-file .env \
154
156
--entrypoint " composer" \
155
157
artarts36/merge-request-linter:testing " test-e2e"
156
158
157
- test-docker : docker-build
159
+ test : docker-build # # Run tests
158
160
docker run \
161
+ --rm \
159
162
--volume ./:/app/ \
160
163
--env-file .env \
161
164
--entrypoint " composer" \
162
165
artarts36/merge-request-linter:testing " test"
163
166
164
- deptrac-docker : docker-build
167
+ deptrac : docker-build # # Run deptrac
165
168
docker run \
169
+ --rm \
166
170
--env-file .env \
167
171
--entrypoint " composer" \
168
172
artarts36/merge-request-linter:testing " deptrac"
169
173
170
- check-docker : lint-docker stat-analyse-docker test-docker deptrac-docker
174
+ check-docker : lint-docker stat-analyse test deptrac
171
175
172
- build-phar :
176
+ build-phar : # # Build PHAR
173
177
composer install --no-interaction --no-dev --prefer-dist --optimize-autoloader
174
178
cd dev/build/ && composer install
175
179
./dev/build/vendor/bin/box compile
0 commit comments