112fa7ce0SHenrik Yllemoname: Build and Release Plugin 212fa7ce0SHenrik Yllemo 312fa7ce0SHenrik Yllemoon: 412fa7ce0SHenrik Yllemo push: 512fa7ce0SHenrik Yllemo branches: 612fa7ce0SHenrik Yllemo - main 712fa7ce0SHenrik Yllemo 812fa7ce0SHenrik Yllemojobs: 912fa7ce0SHenrik Yllemo build-release: 1012fa7ce0SHenrik Yllemo runs-on: ubuntu-latest 11fdc4b28eSHenrik Yllemo permissions: 12fdc4b28eSHenrik Yllemo contents: write 1312fa7ce0SHenrik Yllemo 1412fa7ce0SHenrik Yllemo steps: 1512fa7ce0SHenrik Yllemo - uses: actions/checkout@v4 1612fa7ce0SHenrik Yllemo 1712fa7ce0SHenrik Yllemo - name: Extract plugin name and version 1812fa7ce0SHenrik Yllemo id: plugin-info 1912fa7ce0SHenrik Yllemo run: | 20fdc4b28eSHenrik Yllemo PLUGIN_VERSION=$(grep "^version" plugin.info.txt | cut -d' ' -f2) 21fdc4b28eSHenrik Yllemo BUILD_DATE=$(date +%Y%m%d.%H%M%S) 22fdc4b28eSHenrik Yllemo TAG="v${PLUGIN_VERSION}-${BUILD_DATE}" 23fdc4b28eSHenrik Yllemo echo "version=${PLUGIN_VERSION}" >> $GITHUB_OUTPUT 2412fa7ce0SHenrik Yllemo echo "tag=${TAG}" >> $GITHUB_OUTPUT 25fdc4b28eSHenrik Yllemo echo "Plugin Version: ${PLUGIN_VERSION}, Tag: ${TAG}" 2612fa7ce0SHenrik Yllemo 2712fa7ce0SHenrik Yllemo - name: Create plugin package 2812fa7ce0SHenrik Yllemo run: | 2912fa7ce0SHenrik Yllemo mkdir -p skillforge-package 3012fa7ce0SHenrik Yllemo # Copy all plugin files except git-related and excluded files 3112fa7ce0SHenrik Yllemo cp -r action.php admin.php helper.php syntax.php plugin.info.txt README.md LICENSE CHANGELOG.md style.css skillforge-package/ 3212fa7ce0SHenrik Yllemo cp -r classes/ conf/ lang/ skillforge-package/ 3312fa7ce0SHenrik Yllemo 3412fa7ce0SHenrik Yllemo # Create ZIP archive 35fdc4b28eSHenrik Yllemo FILENAME="skillforge-${{ steps.plugin-info.outputs.version }}.zip" 36fdc4b28eSHenrik Yllemo zip -r "$FILENAME" skillforge-package/ 37fdc4b28eSHenrik Yllemo ls -lh "$FILENAME" 38fdc4b28eSHenrik Yllemo echo "RELEASE_FILE=$FILENAME" >> $GITHUB_ENV 39*cc7d7d43SHenrik Yllemo 40*cc7d7d43SHenrik Yllemo - name: Create Release 41*cc7d7d43SHenrik Yllemo uses: softprops/action-gh-release@v2 4212fa7ce0SHenrik Yllemo with: 4312fa7ce0SHenrik Yllemo tag_name: ${{ steps.plugin-info.outputs.tag }} 44fdc4b28eSHenrik Yllemo name: SkillForge ${{ steps.plugin-info.outputs.version }} 4512fa7ce0SHenrik Yllemo body: | 4612fa7ce0SHenrik Yllemo ## SkillForge DokuWiki Plugin 4712fa7ce0SHenrik Yllemo 4812fa7ce0SHenrik Yllemo **Version:** ${{ steps.plugin-info.outputs.version }} 4912fa7ce0SHenrik Yllemo 5012fa7ce0SHenrik Yllemo ### Installation 5112fa7ce0SHenrik Yllemo 5212fa7ce0SHenrik Yllemo 1. Download the `skillforge-${{ steps.plugin-info.outputs.version }}.zip` file below 5312fa7ce0SHenrik Yllemo 2. Extract it in your DokuWiki plugins directory: `lib/plugins/` 5412fa7ce0SHenrik Yllemo 3. Go to Admin → SkillForge to configure 5512fa7ce0SHenrik Yllemo 5612fa7ce0SHenrik Yllemo ### What's included 5712fa7ce0SHenrik Yllemo - Plugin core files (action.php, admin.php, helper.php, syntax.php) 5812fa7ce0SHenrik Yllemo - Configuration templates (conf/) 5912fa7ce0SHenrik Yllemo - Language files (lang/) 6012fa7ce0SHenrik Yllemo - Documentation (README.md, CHANGELOG.md) 6112fa7ce0SHenrik Yllemo files: | 62fdc4b28eSHenrik Yllemo ${{ env.RELEASE_FILE }} 6312fa7ce0SHenrik Yllemo draft: false 6412fa7ce0SHenrik Yllemo prerelease: false 6512fa7ce0SHenrik Yllemo env: 6612fa7ce0SHenrik Yllemo GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 67