Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Nov 1, 2021. It is now read-only.

Commitbff74d7

Browse files
committed
feat: add makefile system
1 parent776563b commitbff74d7

File tree

13 files changed

+1240
-50
lines changed

13 files changed

+1240
-50
lines changed

‎Makefile‎

Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
include Makefile.include.mk
2+
3+
help:
4+
$(call launch.help)
5+
$(call gen.help)
6+
$(call commit.help)
7+
$(call release.help)
8+
$(call deploy.help)
9+
$(call test.help)
10+
$(call dashboard.help)
11+
$(call ci.help)
12+
$(call github.help)
13+
@echo"\n"
14+
15+
init:
16+
mix ecto.setup
17+
18+
dep:
19+
mix deps.get
20+
npm install# for commitizen
21+
22+
build:
23+
npm build
24+
25+
dev:
26+
npm runlocal
27+
28+
launch.help:
29+
$(call launch.help)
30+
@echo"\n"
31+
launch:
32+
$(call launch.help)
33+
@echo"\n"
34+
launch.dev:
35+
npm run launch.dev
36+
launch.prod:
37+
SERVE_PORT=8002 npm run launch
38+
39+
migrate:
40+
mix ecto.migrate
41+
rollback:
42+
mix ecto.rollback
43+
migrate.mock:
44+
MIX_ENV=mock mix ecto.migrate
45+
rollback.mock:
46+
MIX_ENV=mock mix ecto.rollback
47+
migrate.dev:
48+
MIX_ENV=dev mix ecto.migrate
49+
rollback.dev:
50+
MIX_ENV=dev mix ecto.rollback
51+
52+
gen.help:
53+
$(call gen.help)
54+
@echo"\n"
55+
gen:
56+
npm run gen
57+
58+
commit.help:
59+
$(call commit.help)
60+
@echo"\n"
61+
commit:
62+
npx git-cz
63+
64+
# release
65+
release.help:
66+
$(call release.help)
67+
@echo"\n"
68+
release:
69+
npm run release
70+
release.master:
71+
npm run release
72+
git push --follow-tags origin master
73+
release.dev:
74+
npm run release
75+
git push --follow-tags origin dev
76+
77+
deploy:
78+
$(call deploy.help)
79+
@echo"\n"
80+
deploy.help:
81+
$(call deploy.help)
82+
@echo"\n"
83+
deploy.dev:
84+
./deploy/dev/packer.sh
85+
git add.
86+
git commit -am"build: development"
87+
git push
88+
@echo"------------------------------"
89+
@echo"deploy to docker done!"
90+
@echo"todo: restart docker container"
91+
deploy.prod:
92+
./deploy/production/packer.sh
93+
git add.
94+
git commit -am"build: production"
95+
git push
96+
@echo"------------------------------"
97+
@echo"deploy to docker done!"
98+
@echo"todo: restart docker container"
99+
100+
test.help:
101+
$(call test.help)
102+
@echo"\n"
103+
test:
104+
npm runtest
105+
test.e2e:
106+
npm run test:e2e
107+
test.dev:
108+
npm run test:dev
109+
test.watch:
110+
npm run test:watch
111+
test.coverage:
112+
npm run test:cover
113+
test.report.text:
114+
npm run test:cover
115+
116+
# lint code
117+
lint.help:
118+
$(call lint.help)
119+
@echo"\n"
120+
lint:
121+
npm run lint
122+
lint.watch:
123+
npm run lint:watch# use dialyzer
124+
125+
# dashboard
126+
dashboard.help:
127+
$(call dashboard.help)
128+
@echo"\n"
129+
dashboard:
130+
$(call dashboard.help)
131+
@echo"\n"
132+
dashboard.ga:
133+
$(call browse,"$(DASHBOARD_GA_LINK)")
134+
dashboard.apollo:
135+
$(call browse,"$(DASHBOARD_APOLLO_LINK)")
136+
dashboard.pm2:
137+
$(call browse,"$(DASHBOARD_PM2_LINK)")
138+
dashboard.errors:
139+
$(call browse,"$(DASHBOARD_SENTRY_LINK)")
140+
dashboard.aliyun:
141+
$(call browse,"$(DASHBOARD_ALIYUN_LINK)")
142+
143+
# ci helpers
144+
ci.help:
145+
$(call ci.help)
146+
@echo"\n"
147+
ci:
148+
$(call ci.help)
149+
@echo"\n"
150+
ci.build:
151+
$(call browse,"$(CI_BUILD_LINK)")
152+
ci.coverage:
153+
$(call browse,"$(CI_COVERAGE_LINK)")
154+
ci.codecov:
155+
$(call browse,"$(CI_CODECOV_LINK)")
156+
ci.codefactor:
157+
$(call browse,"$(CI_CODEFACTOR_LINK)")
158+
ci.codacy:
159+
$(call browse,"$(CI_CODACY_LINK)")
160+
ci.doc:
161+
$(call browse,"$(CI_DOC_LINK)")
162+
ci.depsbot:
163+
$(call browse,"$(CI_DEPSBOT_LINK)")
164+
165+
# github helpers
166+
github:
167+
$(call github.help)
168+
@echo"\n"
169+
github.help:
170+
$(call github.help)
171+
@echo"\n"
172+
github.code:
173+
$(call browse,"$(GITHUB_CODE_LINK)")
174+
github.doc:
175+
$(call browse,"$(GITHUB_DOC_LINK)")
176+
github.pr:
177+
$(call browse,"$(GITHUB_PR_LINK)")
178+
github.issue:
179+
$(call browse,"$(GITHUB_ISSUE_LINK)")
180+
github.issue.new:
181+
$(call browse,"$(GITHUB_ISSUE_LINK)/new")
182+
github.app:
183+
$(call browse,"$(GITHUB_APP_LINK)")

‎Makefile.include.mk‎

Lines changed: 200 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,200 @@
1+
OS := ${shell uname}
2+
3+
.PHONY: test deploy
4+
5+
BELONG = "coderplanets"
6+
REPO = "coderplanets_admin"
7+
8+
DASHBOARD_GA_LINK = "https://analytics.google.com"
9+
DASHBOARD_APOLLO_LINK = "https://engine.apollographql.com/account/gh.mydearxym/services"
10+
DASHBOARD_PM2_LINK = "https://app.pm2.io"
11+
DASHBOARD_ALIYUN_LINK = "https://home.console.aliyun.com/new"
12+
DASHBOARD_SENTRY_LINK = "https://sentry.io/mastani-stack/cps_web"
13+
14+
CI_BUILD_LINK = "https://travis-ci.org/$(BELONG)/$(REPO)"
15+
CI_COVERAGE_LINK = "https://coveralls.io/github/$(BELONG)/$(REPO)"
16+
CI_CODECOV_LINK = "https://codecov.io/gh/$(BELONG)/$(REPO)"
17+
CI_CODEFACTOR_LINK= "https://www.codefactor.io/repository/github/$(BELONG)/$(REPO)"
18+
CI_CODACY_LINK="https://app.codacy.com/project/mydearxym/$(REPO)/dashboard?branchId=8274848"
19+
CI_DOC_LINK = "https://inch-ci.org/github/$(BELONG)/$(REPO)"
20+
CI_DEPSBOT_LINK = "https://david-dm.org/$(BELONG)/$(REPO)"
21+
22+
GITHUB_CODE_LINK = "https://github.com/$(BELONG)/$(REPO)"
23+
GITHUB_DOC_LINK = "https://github.com/$(BELONG)/$(REPO)/tree/dev/docs"
24+
GITHUB_PR_LINK = "https://github.com/$(BELONG)/$(REPO)/pulls"
25+
GITHUB_ISSUE_LINK = "https://github.com/$(BELONG)/$(REPO)/issues"
26+
GITHUB_APP_LINK = "https://github.com/settings/applications/689577"
27+
28+
ifeq ($(OS),Darwin)# Mac OS X
29+
BROWSER_TOOL = open
30+
endif
31+
ifeq ($(OS),Linux)
32+
BROWSER_TOOL = google-chrome
33+
endif
34+
ifeq ($(OS),Windows)
35+
BROWSER_TOOL = explorer
36+
endif
37+
38+
definebrowse
39+
$(BROWSER_TOOL) "$(1)"
40+
endef
41+
42+
definelaunch.help
43+
@echo "\n"
44+
@echo " [valid launch commands]"
45+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
46+
@echo " dev : start web server in local env"
47+
@echo " | HMR is enabled"
48+
@echo " ....................................................."
49+
@echo " launch.dev : start web server in development env"
50+
@echo " | HMR is disenabled"
51+
@echo " ....................................................."
52+
@echo " launch.prod : start web server in produnction env"
53+
@echo " | HMR is disenabled"
54+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
55+
endef
56+
57+
definedeploy.help
58+
@echo "\n"
59+
@echo " [valid deploy commands]"
60+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
61+
@echo " deploy.dev : pack & push code to clould docker for dev"
62+
@echo " | need manually restart docker container"
63+
@echo " ..............................................................."
64+
@echo " deploy.prod : pack & push code to clould docker for produnction"
65+
@echo " | need manually restart docker container"
66+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
67+
endef
68+
69+
definegen.help
70+
@echo "\n"
71+
@echo " [valid generators]"
72+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
73+
@echo " gen : generate container/component/store fils"
74+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
75+
endef
76+
77+
definecommit.help
78+
@echo "\n"
79+
@echo " [valid commit commands]"
80+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
81+
@echo " commit : commit changes follow convention"
82+
@echo " | convention: AngularJS's commit message convention"
83+
@echo " | link: https://github.com/commitizen/cz-cli"
84+
@echo " | link: https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commit-guidelines"
85+
@echo " | require: npm install"
86+
@echo " | require: npm -v > 5.2 to use npx"
87+
@echo " | link: https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b"
88+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
89+
endef
90+
91+
definerelease.help
92+
@echo "\n"
93+
@echo " [valid release commands]"
94+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
95+
@echo " release : release version by automatic CHANGELOG generation"
96+
@echo " | link: https://github.com/conventional-changelog/standard-version"
97+
@echo " | more:"
98+
@echo " | npm run release -- --prerelease"
99+
@echo " | npm run release -- --prerelease alpha"
100+
@echo " ................................................................................."
101+
@echo " release.master : release master branch"
102+
@echo " ................................................................................."
103+
@echo " release.dev : release dev branch"
104+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
105+
endef
106+
107+
definetest.help
108+
@echo "\n"
109+
@echo " [valid test commands]"
110+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
111+
@echo " test : run all the test then quit"
112+
@echo " ..............................................................."
113+
@echo " test.watch : run all the test in watch mode"
114+
@echo " ..............................................................."
115+
@echo " test.e2e : run e2e test using cypress"
116+
@echo " | docs: https://docs.cypress.io/"
117+
@echo " ..............................................................."
118+
@echo " test.report.text : run test then show test coverage in terminal"
119+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
120+
endef
121+
122+
definelint.help
123+
@echo "\n"
124+
@echo " [valid test commands]"
125+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
126+
@echo " lint : lint code by eslint"
127+
@echo " ......................................................."
128+
@echo " lint.watch : lint code by eslint in watch mode"
129+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
130+
endef
131+
132+
definedashboard.help
133+
@echo "\n"
134+
@echo " [valid dashboard commands]"
135+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
136+
@echo " dashboard.ga : google analytics dashboard"
137+
@echo " |$(DASHBOARD_GA_LINK)"
138+
@echo " ................................................................................."
139+
@echo " dashboard.apollo : graphql api status provide by apollo engine"
140+
@echo " |$(DASHBOARD_APOLLO_LINK)"
141+
@echo " ................................................................................."
142+
@echo " dashboard.sentry : sentry error track"
143+
@echo " |$(DASHBOARD_SENTRY_LINK)"
144+
@echo " ................................................................................."
145+
@echo " dashboard.apollo : graphql api status provide by apollo engine"
146+
@echo " |$(DASHBOARD_APOLLO_LINK)"
147+
@echo " ................................................................................."
148+
@echo " ................................................................................."
149+
@echo " dashboard.aliyun : aliyun console"
150+
@echo " |$(DASHBOARD_ALIYUN_LINK)"
151+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
152+
endef
153+
154+
defineci.help
155+
@echo "\n"
156+
@echo " [valid ci commands]"
157+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
158+
@echo " ci.build : browse travis status"
159+
@echo " |$(CI_BUILD_LINK)"
160+
@echo " .........................................................................."
161+
@echo " ci.coverage : browse test coveralls status"
162+
@echo " |$(CI_COVERAGE_LINK)"
163+
@echo " .........................................................................."
164+
@echo " ci.codecov : browse test codecov status"
165+
@echo " |$(CI_CODECOV_LINK)"
166+
@echo " .........................................................................."
167+
@echo " ci.codefactor : improve code quality"
168+
@echo " |$(CI_CODEFACTOR_LINK)"
169+
@echo " .........................................................................."
170+
@echo " ci.codacy : improve code quality 2"
171+
@echo " |$(CI_CODACY_LINK)"
172+
@echo " .........................................................................."
173+
@echo " ci.depsbot : check outdated deps"
174+
@echo " | wip:$(CI_DEPSBOT_LINK) "
175+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
176+
endef
177+
178+
definegithub.help
179+
@echo "\n"
180+
@echo " [valid github commands]"
181+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
182+
@echo " github.code : browse source code in github"
183+
@echo " |$(GITHUB_CODE_LINK)"
184+
@echo " ...................................................................................."
185+
@echo " github.doc : browse repo docs in github"
186+
@echo " |$(GITHUB_DOC_LINK)"
187+
@echo " ...................................................................................."
188+
@echo " github.pr : browse PRs in github"
189+
@echo " |$(GITHUB_PR_LINK)"
190+
@echo " ...................................................................................."
191+
@echo " github.issue : browse issues in github"
192+
@echo " |$(GITHUB_ISSUE_LINK)"
193+
@echo " ...................................................................................."
194+
@echo " github.issue.new : create issue in github"
195+
@echo " |$(GITHUB_ISSUE_LINK)/new"
196+
@echo " ...................................................................................."
197+
@echo " github.app : github oauth status (need login)"
198+
@echo " |$(GITHUB_APP_LINK)"
199+
@echo " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
200+
endef

‎deploy/dev/Dockerfile‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
FROM node:8.11
2+
3+
RUN mkdir /root/web
4+
5+
ADD web.tar.gz /root/web
6+
RUN npm install -g pm2 --registry=https://registry.npm.taobao.org
7+
RUN cd /root/web/ && npm install --registry=https://registry.npm.taobao.org
8+
RUN cd /root/web/ && npm run build:dev
9+
10+
ADD loader.sh /usr/local/bin/loader.sh
11+
RUN chmod +x /usr/local/bin/loader.sh
12+
CMD ["/usr/local/bin/loader.sh"]

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp