Skip to content

Commit fe9b8bc

Browse files
committed
🔧 chore: update GitHub Actions publish workflow
1 parent 9842286 commit fe9b8bc

2 files changed

Lines changed: 36 additions & 24 deletions

File tree

.github/workflows/publish.yml

Lines changed: 35 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ on:
1212
branches: [main]
1313

1414
env:
15-
NODE_VERSION: '18'
15+
NODE_VERSION: '20'
1616

1717
jobs:
1818
test:
@@ -59,7 +59,9 @@ jobs:
5959
COMMIT_SHORT="${{ github.sha }}"
6060
COMMIT_SHORT="${COMMIT_SHORT:0:7}"
6161
62-
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @- << EOF
62+
TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%S.000Z)
63+
64+
cat > payload.json << EOF
6365
{
6466
"embeds": [{
6567
"title": "🧪 AI Commit Generator - Test Phase",
@@ -82,10 +84,13 @@ jobs:
8284
"inline": true
8385
}
8486
],
85-
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%S.000Z)"
87+
"timestamp": "$TIMESTAMP"
8688
}]
8789
}
8890
EOF
91+
92+
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @payload.json
93+
rm payload.json
8994
fi
9095
9196
publish:
@@ -110,8 +115,8 @@ jobs:
110115
rm -rf node_modules package-lock.json
111116
npm install
112117
113-
- name: Install VSCE
114-
run: npm install -g vsce
118+
- name: Install VSCE (latest)
119+
run: npm install -g @vscode/vsce@latest
115120

116121
- name: Check version changes
117122
id: version-check
@@ -133,7 +138,9 @@ jobs:
133138
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
134139
run: |
135140
if [ -n "$DISCORD_WEBHOOK" ]; then
136-
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @- << EOF
141+
TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%S.000Z)
142+
143+
cat > payload.json << EOF
137144
{
138145
"embeds": [{
139146
"title": "⚠️ AI Commit Generator - Version Skipped",
@@ -151,29 +158,32 @@ jobs:
151158
"inline": true
152159
}
153160
],
154-
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%S.000Z)"
161+
"timestamp": "$TIMESTAMP"
155162
}]
156163
}
157164
EOF
165+
166+
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @payload.json
167+
rm payload.json
158168
fi
159169
160-
- name: Package extension
170+
- name: Package extension with VSCE
161171
if: steps.version-check.outputs.version_changed == 'true'
162172
run: |
163173
npm run package
164-
vsce package
174+
vsce package --no-dependencies
165175
166176
- name: Publish to Visual Studio Marketplace
167177
if: steps.version-check.outputs.version_changed == 'true'
168178
env:
169179
VSCE_PAT: ${{ secrets.VSCE_PAT }}
170180
run: |
171-
vsce publish --pat $VSCE_PAT
181+
vsce publish --pat $VSCE_PAT --no-dependencies
172182
173183
- name: Create GitHub Release
174184
if: steps.version-check.outputs.version_changed == 'true'
175185
id: create-release
176-
uses: softprops/action-gh-release@v1
186+
uses: softprops/action-gh-release@v2
177187
env:
178188
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
179189
with:
@@ -198,21 +208,15 @@ jobs:
198208
files: |
199209
./ai-commit-generator-${{ steps.version-check.outputs.current_version }}.vsix
200210
201-
- name: Create Git Tag
202-
if: steps.version-check.outputs.version_changed == 'true'
203-
run: |
204-
git config --local user.email "[email protected]"
205-
git config --local user.name "GitHub Action"
206-
git tag v${{ steps.version-check.outputs.current_version }}
207-
git push origin v${{ steps.version-check.outputs.current_version }}
208-
209211
- name: Send Discord notification - Success
210212
if: steps.version-check.outputs.version_changed == 'true' && success()
211213
env:
212214
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
213215
run: |
214216
if [ -n "$DISCORD_WEBHOOK" ]; then
215-
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @- << EOF
217+
TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%S.000Z)
218+
219+
cat > payload.json << EOF
216220
{
217221
"embeds": [{
218222
"title": "🚀 AI Commit Generator - Published Successfully!",
@@ -238,10 +242,13 @@ jobs:
238242
"footer": {
239243
"text": "Deployed by ${{ github.actor }}"
240244
},
241-
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%S.000Z)"
245+
"timestamp": "$TIMESTAMP"
242246
}]
243247
}
244248
EOF
249+
250+
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @payload.json
251+
rm payload.json
245252
fi
246253
247254
- name: Send Discord notification - Failure
@@ -250,7 +257,9 @@ jobs:
250257
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
251258
run: |
252259
if [ -n "$DISCORD_WEBHOOK" ]; then
253-
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @- << EOF
260+
TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%S.000Z)
261+
262+
cat > payload.json << EOF
254263
{
255264
"embeds": [{
256265
"title": "❌ AI Commit Generator - Publish Failed",
@@ -276,8 +285,11 @@ jobs:
276285
"footer": {
277286
"text": "Attempted by ${{ github.actor }}"
278287
},
279-
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%S.000Z)"
288+
"timestamp": "$TIMESTAMP"
280289
}]
281290
}
282291
EOF
292+
293+
curl -H "Content-Type: application/json" -X POST "$DISCORD_WEBHOOK" -d @payload.json
294+
rm payload.json
283295
fi

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ Run the "Open AI Commit Config" command to create a configuration file.
183183

184184
```bash
185185
# Clone repository
186-
git clone <repository-url>
186+
git clone https://github.com/DTDucas/ai-commit
187187
cd ai-commit-generator
188188

189189
# Install dependencies

0 commit comments

Comments
 (0)