This commit is contained in:
@@ -24,13 +24,11 @@ jobs:
|
|||||||
- name: Extract metadata from plugin.xml
|
- name: Extract metadata from plugin.xml
|
||||||
id: meta
|
id: meta
|
||||||
run: |
|
run: |
|
||||||
# Ensure plugin.xml exists
|
|
||||||
if [ ! -f plugin.xml ]; then
|
if [ ! -f plugin.xml ]; then
|
||||||
echo "❌ plugin.xml not found!" >&2
|
echo "❌ plugin.xml not found!" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Extract name and version (adjust XPath to your XML structure)
|
|
||||||
NAME=$(xmllint --xpath "string(//name)" plugin.xml)
|
NAME=$(xmllint --xpath "string(//name)" plugin.xml)
|
||||||
VERSION=v$(xmllint --xpath "string(//version)" plugin.xml)
|
VERSION=v$(xmllint --xpath "string(//version)" plugin.xml)
|
||||||
|
|
||||||
@@ -39,23 +37,27 @@ jobs:
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "PLUGIN_NAME=$NAME" >> $GITHUB_ENV
|
# Sanitize the name to a safe slug (lowercase, replace non-alnum with '-')
|
||||||
echo "VERSION=$VERSION" >> $GITHUB_ENV
|
SLUG=$(echo "$NAME" | tr '[:upper:]' '[:lower:]' | sed -E 's/[^a-z0-9]+/-/g; s/^-+//; s/-+$//')
|
||||||
echo "FILENAME=${NAME}-${VERSION}.zip" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
echo "✅ Plugin: $NAME, Version: $VERSION"
|
echo "PLUGIN_NAME=$NAME" >> $GITHUB_ENV
|
||||||
|
echo "SLUG=$SLUG" >> $GITHUB_ENV
|
||||||
|
echo "VERSION=$VERSION" >> $GITHUB_ENV
|
||||||
|
echo "FILENAME=${SLUG}-${VERSION}.zip" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
echo "✅ Plugin: $NAME, Slug: $SLUG, Version: $VERSION"
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# 2. Prepare package (copy everything EXCEPT plugin.xml, .git, .github)
|
# 2. Prepare package (copy everything EXCEPT plugin.xml, .git, .github)
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
- name: Prepare package
|
- name: Prepare package
|
||||||
run: |
|
run: |
|
||||||
mkdir -p build/"$PLUGIN_NAME"
|
mkdir -p build/"$SLUG"
|
||||||
rsync -a \
|
rsync -a \
|
||||||
--exclude='.git' \
|
--exclude='.git' \
|
||||||
--exclude='.github' \
|
--exclude='.github' \
|
||||||
--exclude='plugin.xml' \
|
--exclude='plugin.xml' \
|
||||||
./ build/"$PLUGIN_NAME"/
|
./ build/"$SLUG"/
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# 3. Build the zip
|
# 3. Build the zip
|
||||||
@@ -63,7 +65,7 @@ jobs:
|
|||||||
- name: Build plugin zip
|
- name: Build plugin zip
|
||||||
run: |
|
run: |
|
||||||
cd build
|
cd build
|
||||||
zip -r "../$FILENAME" "$PLUGIN_NAME"
|
zip -r "../$FILENAME" "$SLUG"
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user