22
22
# os: [ubuntu-latest, windows-latest, macOS-latest]
23
23
os : [ubuntu-latest]
24
24
steps :
25
- - uses : actions/checkout@v2
25
+ - uses : actions/checkout@v4
26
26
- run : git fetch --depth=1 origin +refs/tags/*:refs/tags/*
27
27
- name : Set an output
28
28
id : set-version
@@ -46,18 +46,14 @@ jobs:
46
46
echo $VERSION > .version
47
47
echo $NAME > .name
48
48
- name : Use Node.js
49
- uses : actions/setup-node@v2
49
+ uses : actions/setup-node@v4
50
50
with :
51
- node-version : 14
51
+ node-version : 20
52
52
- run : npm install
53
53
- name : lint
54
54
if : runner.os == 'Linux'
55
55
run : npm run lint
56
56
- run : npm run compile
57
- - name : npm test
58
-
59
- with :
60
- run : npm run test
61
57
- name : Build package
62
58
if : runner.os == 'Linux'
63
59
run : |
79
75
runs-on : ubuntu-latest
80
76
needs : build
81
77
steps :
82
- - uses : actions/download-artifact@v2
78
+ - uses : actions/download-artifact@v4
83
79
with :
84
80
name : meta
85
81
path : .
@@ -90,48 +86,35 @@ jobs:
90
86
set -x
91
87
echo ::set-output name=version::`cat .version`
92
88
echo ::set-output name=name::`cat .name`
93
- - uses : actions/download-artifact@v2
89
+ - uses : actions/download-artifact@v4
94
90
with :
95
91
name : ${{ steps.set-version.outputs.name }}.vsix
96
- - name : Create Release
97
- id : create_release
98
- uses : actions/create-release@v1
99
- if : runner.os == 'Linux'
100
- env :
101
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
102
- with :
103
- tag_name : v${{ steps.set-version.outputs.version }}
104
- release_name : v${{ steps.set-version.outputs.version }}
105
- prerelease : ${{ github.event_name != 'release' }}
106
- body : |
107
- Changes in this release
108
- ${{ steps.set-version.outputs.changelog }}
109
92
- name : Upload Release Asset
110
93
id : upload-release-asset
111
- uses : actions/upload-release-asset@v1
94
+ uses : softprops/action-gh-release@v2
112
95
if : runner.os == 'Linux'
113
96
env :
114
97
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
115
98
with :
116
- upload_url : ${{ steps.create_release .outputs.upload_url }}
117
- asset_path : ${{ steps.set-version.outputs.name }}.vsix
118
- asset_name : ${{ steps.set-version.outputs.name }}.vsix
119
- asset_content_type : application/zip
99
+ tag_name : v ${{ steps.set-version .outputs.version }}
100
+ prerelease : ${{ github.event_name != 'release' }}
101
+ files : ${{ steps.set-version.outputs.name }}.vsix
102
+ token : ${{ secrets.GITHUB_TOKEN }}
120
103
publish :
121
104
if : github.event_name == 'release'
122
105
runs-on : ubuntu-latest
123
106
needs : build
124
107
steps :
125
- - uses : actions/checkout@v2
108
+ - uses : actions/checkout@v4
126
109
with :
127
110
ref : master
128
111
token : ${{ secrets.GITHUB_TOKEN }}
129
- - uses : actions/download-artifact@v2
112
+ - uses : actions/download-artifact@v4
130
113
with :
131
114
name : meta
132
115
path : .
133
116
- name : Use Node.js
134
- uses : actions/setup-node@v2
117
+ uses : actions/setup-node@v4
135
118
with :
136
119
node-version : 14
137
120
- name : Prepare build
@@ -155,15 +138,15 @@ jobs:
155
138
npx vsce package -o ${{ steps.set-version.outputs.name }}.vsix
156
139
- name : Upload Release Asset
157
140
id : upload-release-asset
158
- uses : actions/upload-release-asset@v1
141
+ uses : softprops/action-gh-release@v2
159
142
if : runner.os == 'Linux'
160
143
env :
161
144
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
162
145
with :
163
- upload_url : ${{ github.event.release.upload_url }}
164
- asset_path : ${{ steps.set-version.outputs.name }}.vsix
165
- asset_name : ${{ steps.set-version.outputs.name }}.vsix
166
- asset_content_type : application/zip
146
+ tag_name : v ${{ steps.set-version.outputs.version }}
147
+ prerelease : ${{ github.event_name != 'release' }}
148
+ files : ${{ steps.set-version.outputs.name }}.vsix
149
+ token : ${{ secrets.GITHUB_TOKEN }}
167
150
- name : Publish to VSCode Marketplace
168
151
run : |
169
152
[ -n "${{ secrets.VSCE_TOKEN }}" ] && \
0 commit comments