lucy-cli 0.7.2 → 0.7.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. package/.yarn/cache/@eslint-config-array-npm-0.18.0-bb4bc4e301-5ff748e178.zip +0 -0
  2. package/.yarn/cache/@eslint-core-npm-0.7.0-55f1b6f05c-91d4aa2805.zip +0 -0
  3. package/.yarn/cache/@eslint-eslintrc-npm-3.2.0-1f7efe7868-c898e4d12f.zip +0 -0
  4. package/.yarn/cache/@eslint-js-npm-9.14.0-778d6db19a-727767d3c8.zip +0 -0
  5. package/.yarn/cache/@eslint-object-schema-npm-2.1.4-0546250476-5a03094115.zip +0 -0
  6. package/.yarn/cache/@eslint-plugin-kit-npm-0.2.3-ade9cfccf5-b93b9c3f5b.zip +0 -0
  7. package/.yarn/cache/@humanfs-core-npm-0.19.1-e2e7aaeb6e-611e054514.zip +0 -0
  8. package/.yarn/cache/@humanfs-node-npm-0.16.6-6ee2cad587-f9cb52bb23.zip +0 -0
  9. package/.yarn/cache/@humanwhocodes-retry-npm-0.3.1-9d87bf92c6-7e5517bb51.zip +0 -0
  10. package/.yarn/cache/@humanwhocodes-retry-npm-0.4.1-44b0ee0d64-f11167c28e.zip +0 -0
  11. package/.yarn/cache/{@shikijs-core-npm-1.22.2-38c51b2d7e-a49c4b9307.zip → @shikijs-core-npm-1.23.0-7609e52b62-be923c4cc4.zip} +0 -0
  12. package/.yarn/cache/@shikijs-engine-javascript-npm-1.23.0-515fb3dce6-e6cc266d7c.zip +0 -0
  13. package/.yarn/cache/{@shikijs-engine-oniguruma-npm-1.22.2-81b296889f-cbda50d13c.zip → @shikijs-engine-oniguruma-npm-1.23.0-65532dc404-e617cb94d1.zip} +0 -0
  14. package/.yarn/cache/{@shikijs-types-npm-1.22.2-8d42cc576d-1e9b63aac5.zip → @shikijs-types-npm-1.23.0-70f4a67e0e-af6f9296c1.zip} +0 -0
  15. package/.yarn/cache/@types-estree-npm-1.0.6-b5e23f2ea2-8825d6e729.zip +0 -0
  16. package/.yarn/cache/@types-merge-stream-npm-2.0.0-4b83b0d4bf-a310412bbc.zip +0 -0
  17. package/.yarn/cache/@typescript-eslint-eslint-plugin-npm-8.14.0-55616f1385-5ba1dc4eef.zip +0 -0
  18. package/.yarn/cache/@typescript-eslint-parser-npm-8.14.0-3444f81ac4-11a2c52efc.zip +0 -0
  19. package/.yarn/cache/@typescript-eslint-scope-manager-npm-8.14.0-4e9e7df726-9c4011771e.zip +0 -0
  20. package/.yarn/cache/@typescript-eslint-type-utils-npm-8.14.0-32010c30a5-5717b26ddf.zip +0 -0
  21. package/.yarn/cache/@typescript-eslint-types-npm-8.14.0-56131dda9e-032f1adb48.zip +0 -0
  22. package/.yarn/cache/@typescript-eslint-typescript-estree-npm-8.14.0-2681614eed-9412bd801f.zip +0 -0
  23. package/.yarn/cache/@typescript-eslint-utils-npm-8.14.0-4742a7bfab-7c432f2e29.zip +0 -0
  24. package/.yarn/cache/@typescript-eslint-visitor-keys-npm-8.14.0-c83f7a80b3-5f1279bf7c.zip +0 -0
  25. package/.yarn/cache/electron-to-chromium-npm-1.5.60-b8368b2876-049764e0d3.zip +0 -0
  26. package/.yarn/cache/emoji-regex-xs-npm-1.0.0-f4e3bfb84a-c33be159da.zip +0 -0
  27. package/.yarn/cache/{es-abstract-npm-1.23.3-ffd85665f7-f840cf1612.zip → es-abstract-npm-1.23.5-24fac3af09-17c81f8a42.zip} +0 -0
  28. package/.yarn/cache/eslint-npm-9.14.0-04ed57b338-1b54112da2.zip +0 -0
  29. package/.yarn/cache/eslint-scope-npm-8.2.0-d74e314c9e-750eff4672.zip +0 -0
  30. package/.yarn/cache/file-entry-cache-npm-8.0.0-5b09d19a83-f67802d333.zip +0 -0
  31. package/.yarn/cache/flat-cache-npm-4.0.1-12bf2455f7-899fc86bf6.zip +0 -0
  32. package/.yarn/cache/globals-npm-14.0.0-5fc3d8d5da-534b821673.zip +0 -0
  33. package/.yarn/cache/immutable-npm-5.0.2-d7d3c3ff6b-4adbd70580.zip +0 -0
  34. package/.yarn/cache/oniguruma-to-es-npm-0.1.2-77eeaabda3-30d0a1396d.zip +0 -0
  35. package/.yarn/cache/regex-recursion-npm-4.2.1-9993a7204d-4f39d856e7.zip +0 -0
  36. package/.yarn/cache/regex-utilities-npm-2.3.0-e1d010839d-41408777df.zip +0 -0
  37. package/.yarn/cache/sass-npm-1.81.0-42587b1ed8-93db5b342c.zip +0 -0
  38. package/.yarn/cache/{shiki-npm-1.22.2-a98fa8d6e2-874448fb53.zip → shiki-npm-1.23.0-0cfd6f2b40-f23c2e86ae.zip} +0 -0
  39. package/.yarn/cache/streamx-npm-2.20.2-33b6d2172c-4e18ed425e.zip +0 -0
  40. package/.yarn/cache/ts-api-utils-npm-1.4.0-b091964d6e-477601317d.zip +0 -0
  41. package/.yarn/install-state.gz +0 -0
  42. package/dist/Gulpfile.js +2 -2
  43. package/dist/helpers.d.ts +1 -1
  44. package/dist/helpers.js +1 -1
  45. package/dist/index.d.ts +2 -6
  46. package/dist/index.js +34 -20
  47. package/dist/init.js +3 -1
  48. package/dist/prepare.js +7 -6
  49. package/dist/settings.json +29 -2
  50. package/package.json +6 -6
  51. package/src/Gulpfile.ts +2 -2
  52. package/src/helpers.ts +1 -1
  53. package/src/index.ts +39 -30
  54. package/src/init.ts +6 -2
  55. package/src/prepare.ts +7 -6
  56. package/src/settings.json +29 -2
  57. package/.yarn/cache/@eslint-eslintrc-npm-2.1.4-1ff4b5f908-10957c7592.zip +0 -0
  58. package/.yarn/cache/@eslint-js-npm-8.57.1-dec269f278-2afb77454c.zip +0 -0
  59. package/.yarn/cache/@humanwhocodes-config-array-npm-0.13.0-843095a032-eae69ff913.zip +0 -0
  60. package/.yarn/cache/@humanwhocodes-object-schema-npm-2.0.3-4f0e508cd9-d3b78f6c58.zip +0 -0
  61. package/.yarn/cache/@shikijs-engine-javascript-npm-1.22.2-7bfeb1cb65-162f089f7e.zip +0 -0
  62. package/.yarn/cache/@types-merge-stream-npm-1.1.5-ee972b7117-79b4b10b9b.zip +0 -0
  63. package/.yarn/cache/@typescript-eslint-eslint-plugin-npm-5.62.0-c48b9a5492-fc104b389c.zip +0 -0
  64. package/.yarn/cache/@typescript-eslint-parser-npm-5.62.0-c6b29fa302-d168f4c7f2.zip +0 -0
  65. package/.yarn/cache/@typescript-eslint-type-utils-npm-5.62.0-220216d668-fc41eece5f.zip +0 -0
  66. package/.yarn/cache/doctrine-npm-3.0.0-c6f1615f04-fd7673ca77.zip +0 -0
  67. package/.yarn/cache/electron-to-chromium-npm-1.5.56-9680391041-ef8213e353.zip +0 -0
  68. package/.yarn/cache/eslint-npm-8.57.1-dd20287a5a-e2489bb7f8.zip +0 -0
  69. package/.yarn/cache/eslint-scope-npm-7.2.2-53cb0df8e8-ec97dbf5fb.zip +0 -0
  70. package/.yarn/cache/espree-npm-9.6.1-a50722a5a9-eb8c149c7a.zip +0 -0
  71. package/.yarn/cache/file-entry-cache-npm-6.0.1-31965cf0af-f49701feaa.zip +0 -0
  72. package/.yarn/cache/flat-cache-npm-3.2.0-9a887f084e-e7e0f59801.zip +0 -0
  73. package/.yarn/cache/globals-npm-13.24.0-cc7713139c-56066ef058.zip +0 -0
  74. package/.yarn/cache/immutable-npm-4.3.7-a76ac3621b-1c50eb053b.zip +0 -0
  75. package/.yarn/cache/natural-compare-lite-npm-1.4.0-12b6b308ed-5222ac3986.zip +0 -0
  76. package/.yarn/cache/oniguruma-to-js-npm-0.4.3-d9beced012-563d2e3490.zip +0 -0
  77. package/.yarn/cache/sass-npm-1.80.6-30d57f2c14-1a81e0fe09.zip +0 -0
  78. package/.yarn/cache/streamx-npm-2.20.1-2a3f1504e4-48605ddd3a.zip +0 -0
  79. package/.yarn/cache/type-fest-npm-0.20.2-b36432617f-4fb3272df2.zip +0 -0
  80. package/files/.drone/.drone.yml +0 -156
  81. package/files/.drone/mail_prod_build.hbs +0 -319
  82. package/files/.drone/mail_prod_deploy.hbs +0 -309
  83. package/files/.drone/mail_satges.hbs +0 -309
  84. package/files/.drone/telegram_prod_build.tpl +0 -23
  85. package/files/.drone/telegram_prod_deploy.tpl +0 -20
  86. package/files/.drone/telegram_stages.tpl +0 -20
  87. package/files/lucy.json +0 -29
package/src/prepare.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import chalk from 'chalk';
2
- import { ModuleSettings, ProjectSettings, blue, green, orange, red } from './index.js';
2
+ import { ModuleSettings, ProjectSettings, blue, green, orange, red, magenta } from './index.js';
3
3
  import { gitInit, installPackages } from './helpers.js';
4
4
 
5
5
  /**
@@ -10,14 +10,15 @@ import { gitInit, installPackages } from './helpers.js';
10
10
  */
11
11
  export async function prepare(moduleSettings: ModuleSettings, projectSettings: ProjectSettings) {
12
12
 
13
- if(projectSettings.lucySettings?.initialized) {
14
- console.log((`💩 ${red.underline.bold("=> This project is already initialized =>")} ${orange(moduleSettings.targetFolder)}`));
13
+ if(!projectSettings.lucySettings?.initialized) {
14
+ console.log((`💩 ${red.underline.bold("=> This project is not initialized =>")} ${orange(moduleSettings.targetFolder)}`));
15
+ console.log("🐕" + magenta.underline(' => Use init to initialize'));
15
16
  return;
16
17
  }
17
18
 
18
- await installPackages(moduleSettings.settings.wixPackages, moduleSettings.settings.devPackages, moduleSettings.targetFolder, moduleSettings.lockVersion);
19
+ await installPackages(projectSettings.lucySettings.wixPackages, projectSettings.lucySettings.devPackages, moduleSettings.targetFolder, moduleSettings.lockVersion);
19
20
 
20
- await gitInit(moduleSettings.targetFolder, projectSettings?.lucySettings?.modules ? projectSettings?.lucySettings?.modules : moduleSettings.settings.modules);
21
+ await gitInit(moduleSettings.targetFolder, projectSettings?.lucySettings?.modules);
21
22
 
22
- console.log(chalk.greenBright.underline('🐶 => Initialization done!'));
23
+ console.log(chalk.greenBright.underline('🐶 => Prepare done!'));
23
24
  }
package/src/settings.json CHANGED
@@ -12,7 +12,34 @@
12
12
  "initialized": false,
13
13
  "wixPackages": {},
14
14
  "devPackages": {
15
- "@wix/cli": "latest"
15
+ "@wix/cli": "latest",
16
+ "@styled/typescript-styled-plugin": "^1.0.1",
17
+ "@total-typescript/ts-reset": "0.6.1",
18
+ "@types/jest": "^29.5.3",
19
+ "@types/node": "22.9.0",
20
+ "@types/react": "^18.2.21",
21
+ "@typescript-eslint/parser": "8.14.0",
22
+ "@typescript-eslint/utils": "8.14.0",
23
+ "@wix/eslint-plugin-cli": "latest",
24
+ "cypress": "13.15.2",
25
+ "cypress-cloud": "^1.9.3",
26
+ "esbuild": "0.24.0",
27
+ "eslint": "9.14.0",
28
+ "eslint-plugin-import": "^2.27.5",
29
+ "eslint-plugin-jsdoc": "50.5.0",
30
+ "eslint-plugin-named-import-spacing": "^1.0.3",
31
+ "eslint-plugin-neverthrow": "^1.1.4",
32
+ "eslint-plugin-simple-import-sort": "12.1.1",
33
+ "jest": "^29.6.1",
34
+ "prettier": "^3.0.3",
35
+ "sass": "^1.65.1",
36
+ "ts-jest": "^29.1.1",
37
+ "ts-node": "^10.9.1",
38
+ "tsx": "4.19.2",
39
+ "typedoc": "0.26.11",
40
+ "typedoc-theme-hierarchy": "5.0.3",
41
+ "typescript": "^5.1.6",
42
+ "typescript-eslint-language-service": "^5.0.5"
16
43
  },
17
44
  "scripts": {
18
45
  "postinstall": "wix sync-types",
@@ -21,7 +48,7 @@
21
48
  "lint": "eslint .",
22
49
  "docs": "typedoc --tsconfig typescript/tsconfig.json --skipErrorChecking",
23
50
  "build": "lucy-cli build-prod",
24
- "fix-wix": "lucy-cli fix",
51
+ "fix-wix": "lucy-cli fix-wix",
25
52
  "tsc": "tsc -p ./typescript/tsconfig.json --noEmit",
26
53
  "test": "jest --config jest.config.ts --passWithNoTests",
27
54
  "test:watch": "jest --config jest.config.ts --watch"
@@ -1,156 +0,0 @@
1
- kind: pipeline
2
- type: docker
3
- name: Build-Pipeline
4
-
5
- steps:
6
- - name: Test-${DRONE_TAG}
7
- image: node:18
8
- commands:
9
- - yarn install --ignore-scripts
10
- - npx gulp fix-masterpage
11
- - npx gulp fix-types
12
- - yarn tsc
13
- - yarn test
14
- - yarn build
15
- settings:
16
- mtu: 1450
17
- when:
18
- ref:
19
- include:
20
- - refs/tags/*
21
- branch:
22
- exclude:
23
- - main
24
- - name: push commit
25
- image: appleboy/drone-git-push
26
- settings:
27
- remote_name: origin
28
- commit: true
29
- commit_message: Tests Passed - ${DRONE_COMMIT_MESSAGE}
30
- branch: ${DRONE_BRANCH}
31
- when:
32
- status:
33
- - success
34
- ref:
35
- include:
36
- - refs/tags/*
37
- branch:
38
- exclude:
39
- - main
40
- - name: Notify-via-Telegram
41
- image: appleboy/drone-telegram
42
- settings:
43
- mtu: 1450
44
- token:
45
- from_secret: telegram_token
46
- to:
47
- from_secret: telegram_default_groupe_id
48
- message_file: .drone/telegram_prod_build.tpl
49
- when:
50
- status:
51
- - failure
52
- - success
53
- ref:
54
- include:
55
- - refs/tags/*
56
- branch:
57
- exclude:
58
- - main
59
- - name: Notify-via-Mail
60
- image: drillster/drone-email
61
- settings:
62
- mtu: 1450
63
- host: smtp.gmail.com
64
- username:
65
- from_secret: gmail_user
66
- password:
67
- from_secret: gmail_pass
68
- from: admin@integralschweiz.org
69
- recipients: []
70
- recipients_only: true
71
- body: file:///drone/src/.drone/mail_prod_build.hbs
72
- when:
73
- status: [ changed, failure, success ]
74
- when:
75
- status:
76
- - failure
77
- - success
78
- ref:
79
- include:
80
- - refs/tags/*
81
- branch:
82
- exclude:
83
- - main
84
- trigger:
85
- event:
86
- - tag
87
- ############Production Deploy only##########
88
- ---
89
- kind: pipeline
90
- type: docker
91
- name: Deploy-Production
92
-
93
- steps:
94
- - name: Create-Pull-Request & Merge
95
- image: registry.integral-systems.ch/integral-systems/alpine:github-client-alpine
96
- environment:
97
- GH_TOKEN:
98
- from_secret: github_api_token
99
- commands:
100
- - gh pr create --base main --head dev --title "Automated Pull Request ${DRONE_TAG}" --body "This pull request is for version ${DRONE_TAG} with the commit message ${DRONE_COMMIT_MESSAGE}"
101
- - PR_NUMBER=$(gh pr list --base main --head dev --json number --jq '.[0].number')
102
- - gh pr merge "$PR_NUMBER" --auto --merge
103
- #############Notification###################
104
- - name: Notify-via-Telegram
105
- image: appleboy/drone-telegram
106
- settings:
107
- mtu: 1450
108
- token:
109
- from_secret: telegram_token
110
- to:
111
- from_secret: telegram_default_groupe_id
112
- message_file: .drone/telegram_prod_deploy.tpl
113
- when:
114
- status:
115
- - failure
116
- - success
117
- - name: Notify-via-Mail
118
- image: drillster/drone-email
119
- settings:
120
- mtu: 1450
121
- host: smtp.gmail.com
122
- username:
123
- from_secret: gmail_user
124
- password:
125
- from_secret: gmail_pass
126
- from: admin@integralschweiz.org
127
- recipients: []
128
- recipients_only: true
129
- body: file:///drone/src/.drone/mail_prod_deploy.hbs
130
- when:
131
- status: [ changed, failure, success ]
132
- when:
133
- status:
134
- - failure
135
- - success
136
- # - name: Update-Rollbar-Deploy
137
- # image: plugins/webhook
138
- # settings:
139
- # mtu: 1450
140
- # urls: https://api.rollbar.com/api/1/deploy
141
- # headers:
142
- # - "X-Rollbar-Access-Token=675b85f9093e4099b89376f4a973bca8"
143
- # template: |
144
- # {
145
- # "environment": "production",
146
- # "revision": "{{build.commit}}",
147
- # "rollbar_username": "{{build.author}}",
148
- # "local_username": "{{build.author}}",
149
- # "comment": "{{build.message}}",
150
- # "status": "succeeded"
151
- # }
152
- trigger:
153
- event:
154
- - promote
155
- target:
156
- - production
@@ -1,319 +0,0 @@
1
- <!DOCTYPE html
2
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml">
4
-
5
- <head>
6
- <meta name="viewport"
7
- content="width=device-width" />
8
- <meta http-equiv="Content-Type"
9
- content="text/html; charset=UTF-8" />
10
- <style>
11
- * {
12
- margin: 0;
13
- padding: 0;
14
- font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
15
- box-sizing: border-box;
16
- font-size: 14px;
17
- }
18
-
19
- body {
20
- -webkit-font-smoothing: antialiased;
21
- -webkit-text-size-adjust: none;
22
- width: 100% !important;
23
- height: 100%;
24
- line-height: 1.6;
25
- background-color: #f6f6f6;
26
- }
27
-
28
- table td {
29
- vertical-align: top;
30
- }
31
-
32
- .body-wrap {
33
- background-color: #f6f6f6;
34
- width: 100%;
35
- }
36
-
37
- .container {
38
- display: block !important;
39
- max-width: 600px !important;
40
- margin: 0 auto !important;
41
- /* makes it centered */
42
- clear: both !important;
43
- }
44
-
45
- .content {
46
- max-width: 600px;
47
- margin: 0 auto;
48
- display: block;
49
- padding: 20px;
50
- }
51
-
52
- .main {
53
- background: #fff;
54
- border: 1px solid #e9e9e9;
55
- border-radius: 3px;
56
- }
57
-
58
- .content-wrap {
59
- padding: 20px;
60
- }
61
-
62
- .content-block {
63
- padding: 0 0 20px;
64
- }
65
-
66
- .header {
67
- width: 100%;
68
- margin-bottom: 20px;
69
- }
70
-
71
- h1,
72
- h2,
73
- h3 {
74
- font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
75
- color: #000;
76
- margin: 40px 0 0;
77
- line-height: 1.2;
78
- font-weight: 400;
79
- }
80
-
81
- h1 {
82
- font-size: 32px;
83
- font-weight: 500;
84
- }
85
-
86
- h2 {
87
- font-size: 24px;
88
- }
89
-
90
- h3 {
91
- font-size: 18px;
92
- }
93
-
94
- hr {
95
- border: 1px solid #e9e9e9;
96
- margin: 20px 0;
97
- height: 1px;
98
- padding: 0;
99
- }
100
-
101
- p,
102
- ul,
103
- ol {
104
- margin-bottom: 10px;
105
- font-weight: normal;
106
- }
107
-
108
- p li,
109
- ul li,
110
- ol li {
111
- margin-left: 5px;
112
- list-style-position: inside;
113
- }
114
-
115
- a {
116
- color: #348eda;
117
- text-decoration: underline;
118
- }
119
-
120
- .last {
121
- margin-bottom: 0;
122
- }
123
-
124
- .first {
125
- margin-top: 0;
126
- }
127
-
128
- .padding {
129
- padding: 10px 0;
130
- }
131
-
132
- .aligncenter {
133
- text-align: center;
134
- }
135
-
136
- .alignright {
137
- text-align: right;
138
- }
139
-
140
- .alignleft {
141
- text-align: left;
142
- }
143
-
144
- .clear {
145
- clear: both;
146
- }
147
-
148
- .alert {
149
- font-size: 16px;
150
- color: #fff;
151
- font-weight: 500;
152
- padding: 20px;
153
- text-align: center;
154
- border-radius: 3px 3px 0 0;
155
- }
156
-
157
- .alert a {
158
- color: #fff;
159
- text-decoration: none;
160
- font-weight: 500;
161
- font-size: 16px;
162
- }
163
-
164
- .alert.alert-warning {
165
- background: #ff9f00;
166
- }
167
-
168
- .alert.alert-bad {
169
- background: #d0021b;
170
- }
171
-
172
- .alert.alert-good {
173
- background: #68b90f;
174
- }
175
-
176
- @media only screen and (max-width: 640px) {
177
-
178
- h1,
179
- h2,
180
- h3 {
181
- font-weight: 600 !important;
182
- margin: 20px 0 5px !important;
183
- }
184
-
185
- h1 {
186
- font-size: 22px !important;
187
- }
188
-
189
- h2 {
190
- font-size: 18px !important;
191
- }
192
-
193
- h3 {
194
- font-size: 16px !important;
195
- }
196
-
197
- .container {
198
- width: 100% !important;
199
- }
200
-
201
- .content,
202
- .content-wrapper {
203
- padding: 10px !important;
204
- }
205
- }
206
- </style>
207
- </head>
208
-
209
- <body>
210
- <table class="body-wrap">
211
- <tr>
212
- <td></td>
213
- <td class="container"
214
- width="600">
215
- <div class="content">
216
- <table class="main"
217
- width="100%"
218
- cellpadding="0"
219
- cellspacing="0">
220
- <tr>
221
- {{#success build.status}}
222
- <td class="alert alert-good">
223
- <a href="{{ build.link }}">
224
- Successful Production-Build #{{ build.number }}
225
- </a>
226
- </td>
227
- {{else}}
228
- <td class="alert alert-bad">
229
- <a href="{{ build.link }}">
230
- Failed Production-Build #{{ build.number }}
231
- </a>
232
- </td>
233
- {{/success}}
234
- </tr>
235
- <tr>
236
- <td class="content-wrap">
237
- <table width="100%"
238
- cellpadding="0"
239
- cellspacing="0">
240
- <tr>
241
- <td>
242
- Repo:
243
- </td>
244
- <td>
245
- {{ repo.owner }}/{{ repo.name }}
246
- </td>
247
- </tr>
248
- <tr>
249
- <td>
250
- Author:
251
- </td>
252
- <td>
253
- {{ commit.author.name }} ({{ commit.author.email }})
254
- </td>
255
- </tr>
256
- <tr>
257
- <td>
258
- Branch:
259
- </td>
260
- <td>
261
- {{ commit.branch }}
262
- </td>
263
- </tr>
264
- <tr>
265
- <td>
266
- Tag:
267
- </td>
268
- <td>
269
- {{ tag }}
270
- </td>
271
- </tr>
272
- <tr>
273
- <td>
274
- Commit:
275
- </td>
276
- <td>
277
- {{ truncate commit.sha 8 }}
278
- </td>
279
- </tr>
280
- <tr>
281
- <td>
282
- Started at:
283
- </td>
284
- <td>
285
- {{ datetime build.created "Mon Jan 2 15:04:05 MST 2006" "Local" }}
286
- </td>
287
- </tr>
288
- {{#success build.status}}
289
- <tr>
290
- <td>
291
- Deploy Build:
292
- </td>
293
- <td>
294
- drone build promote {{ repo.owner }}/{{ repo.name }} {{build.number}} production
295
- </td>
296
- </tr>
297
- {{/success}}
298
- </table>
299
- <hr>
300
- <table width="100%"
301
- cellpadding="0"
302
- cellspacing="0">
303
- <tr>
304
- <td>
305
- {{ commit.message }}
306
- </td>
307
- </tr>
308
- </table>
309
- </td>
310
- </tr>
311
- </table>
312
- </div>
313
- </td>
314
- <td></td>
315
- </tr>
316
- </table>
317
- </body>
318
-
319
- </html>