-
Notifications
You must be signed in to change notification settings - Fork 15
48 lines (41 loc) · 1.96 KB
/
Copy pathrelease.yml
File metadata and controls
48 lines (41 loc) · 1.96 KB
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
name: Release skill zip
on:
push:
tags:
- 'v*'
permissions:
contents: write
jobs:
build-and-release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
- name: Build zip of cloud-finops skill folder
run: |
VERSION="${GITHUB_REF_NAME}"
ZIP_NAME="cloud-finops-${VERSION}.zip"
cd "${GITHUB_WORKSPACE}"
# Exclude local-only directories that may exist in worktrees
# (e.g. .claude/settings.local.json from Claude Code worktrees).
# cd into skills/ so the zip root contains `cloud-finops/...` rather
# than `skills/cloud-finops/...`. Backward-compatible with the
# Claude.ai / Claude Desktop upload path (Settings -> Skills -> Upload).
(cd skills && zip -r "../${ZIP_NAME}" cloud-finops \
-x 'cloud-finops/.claude/*' \
-x 'cloud-finops/**/.backups/*' \
-x 'cloud-finops/.git/*')
ls -lh "${ZIP_NAME}"
unzip -l "${ZIP_NAME}" | head -5 # log the first few entries to verify forward-slash paths
echo "ZIP_NAME=${ZIP_NAME}" >> "$GITHUB_ENV"
- name: Create GitHub Release with zip attached
uses: softprops/action-gh-release@3bb12739c298aeb8a4eeaf626c5b8d85266b0e65 # v2.6.2
with:
name: ${{ github.ref_name }}
tag_name: ${{ github.ref_name }}
files: ${{ env.ZIP_NAME }}
generate_release_notes: true
body: |
## Cloud FinOps Skill & MCP ${{ github.ref_name }}
The attached `cloud-finops-${{ github.ref_name }}.zip` is the skill bundle for upload into Claude Desktop / claude.ai (Settings → Skills → Upload).
For Claude Code users (and 11 other tools), see [INSTALLATION.md](https://github.com/OptimNow/cloud-finops-skills/blob/main/INSTALLATION.md) for the cross-tool installer and the model-agnostic response contract.