-
-
Notifications
You must be signed in to change notification settings - Fork 17
145 lines (122 loc) · 5.08 KB
/
ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
name: CI
on:
push:
branches:
- main
env:
CI: false
jobs:
build-deploy:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
registry-url: 'https://registry.npmjs.org'
- run: npm install
- run: npm run build
- run: npm run coverage
- run: npm run make-badges
- run: pwd
- run: ls -al
- run: ls -al coverage
- name: Create idoc config
run: |
cat > idoc.yml << EOF
site: "Coverage Badges {{version}}"
menus:
Home: index.html
footer: |
<a href="https://jaywcjlove.github.io/#/sponsor" target="_blank">Sponsor</a> •
<a href="https://jaywcjlove.github.io/create-tag-action" target="_blank">Create Tag</a> •
<a href="https://jaywcjlove.github.io/github-action-contributors" target="_blank">Contributors</a> •
<a href="https://jaywcjlove.github.io/github-action-read-file" target="_blank">Read File Content</a> •
<a href="./index.html" target="_blank">Generated Badges</a>
<br />
Released under the MIT License. Copyright © {{idocYear}} Kenny Wong<br />
Generated by <a href="https://github.com/jaywcjlove/idoc" target="_blank">idoc</a> v{{idocVersion}}
EOF
- run: npm install idoc@1.27.2 -g
- run: idoc
- run: cp -rp coverage/lcov-report dist
- run: cat coverage/coverage-summary.json
- name: Create Coverage Badges
uses: ./
# uses: jaywcjlove/coverage-badges-cli@main
with:
style: flat
label: flat style
source: coverage/coverage-summary.json
output: dist/badges-flat.svg
- name: Create Coverage Badges
uses: jaywcjlove/coverage-badges-cli@main
id: coverage_badges
with:
label: classic style
source: coverage/coverage-summary.json
output: dist/badges-classic.svg
- name: Create Defalut Coverage Badges
uses: jaywcjlove/coverage-badges-cli@main
with:
source: coverage/coverage-summary.json
output: dist/badges.svg
- name: Generate Contributors Images
uses: jaywcjlove/github-action-contributors@main
with:
filter-author: (renovate\[bot\]|renovate-bot|dependabot\[bot\])
output: dist/CONTRIBUTORS.svg
avatarSize: 42
- run: echo '${{ steps.coverage_badges.outputs.svg }}'
# - run: npm i markdown-to-html-cli -g
# - run: markdown-to-html --output coverage/index.html --github-corners https://github.com/jaywcjlove/coverage-badges-cli
- name: Create Tag
id: create_tag
uses: jaywcjlove/create-tag-action@main
with:
package-path: ./package.json
- name: get tag version
id: tag_version
uses: jaywcjlove/changelog-generator@main
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/main'
with:
commit_message: ${{steps.tag_version.outputs.tag}} ${{ github.event.head_commit.message }}
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./dist
- name: Generate Changelog
id: changelog
uses: jaywcjlove/changelog-generator@main
with:
token: ${{ secrets.GITHUB_TOKEN }}
head-ref: ${{steps.create_tag.outputs.version}}
filter-author: (小弟调调™|Renovate Bot)
filter: '[R|r]elease[d]\s+[v|V]\d(\.\d+){0,2}'
- name: Create Release
uses: ncipollo/release-action@v1
if: steps.create_tag.outputs.successful
with:
name: ${{ steps.create_tag.outputs.version }}
tag: ${{ steps.create_tag.outputs.version }}
token: ${{ secrets.GITHUB_TOKEN }}
body: |
[![Buy me a coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor) [![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/coverage-badges-cli@${{steps.changelog.outputs.version}}/file/README.md)
Documentation ${{ steps.changelog.outputs.tag }}: https://raw.githack.com/jaywcjlove/coverage-badges-cli/${{ steps.changelog.outputs.gh-pages-short-hash }}/index.html
Comparing Changes: ${{ steps.changelog.outputs.compareurl }}
${{ steps.changelog.outputs.changelog }}
- name: package.json info
uses: jaywcjlove/github-action-package@main
with:
path: package.json
unset: scripts,jest,lint-staged,devDependencies
# - run: npm install @jsdevtools/npm-publish -g
# - run: npm-publish --token="${{ secrets.NPM_TOKEN }}" ./package.json
- run: npm publish --access public --provenance
name: 📦 coverage-badges-cli publish to NPM
continue-on-error: true
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}