Skip to content

Kodi Addon-Submitter #24

Kodi Addon-Submitter

Kodi Addon-Submitter #24

Workflow file for this run

name: Kodi Addon-Submitter
on:
create:
tags:
- v*
jobs:
kodi-addon-submitter:
runs-on: ubuntu-latest
name: Kodi Addon Submitter
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Extract kodi official repository target
id: extract_branch_pr
shell: bash
env:
ADDON_ID: ${{ github.event.repository.name }}
run: |
echo "branch=$(git --no-pager branch -a --contains "$GITHUB_SHA" | grep 'remotes/origin/' | cut -d '/' -f3)" >>"${GITHUB_OUTPUT}"
if [[ $ADDON_ID == plugin* ]]; then
echo "repo=repo-plugins" >>"${GITHUB_OUTPUT}"
else
echo "repo=repo-scripts" >>"${GITHUB_OUTPUT}"
fi
- name: Extract changelog
id: changelog
run: |
printf "changelog<<EOF\n" >>"${GITHUB_OUTPUT}"
perl -0777ne '/<news>\s*(.*?)\s*<\/news>/s && print $1' addon.xml >>"${GITHUB_OUTPUT}"
printf "\nEOF\n" >>"${GITHUB_OUTPUT}"
- name: Kodi addon checker validation
id: kodi-addon-checker
uses: xbmc/[email protected]
with:
kodi-version: ${{ steps.extract_branch_pr.outputs.branch }}
addon-id: ${{ github.event.repository.name }}
is-pr: true
- name: Generate distribution zip and submit to official kodi repository
id: kodi-addon-submitter
uses: xbmc/[email protected]
with:
kodi-repository: ${{ steps.extract_branch_pr.outputs.repo }}
kodi-version: ${{ steps.extract_branch_pr.outputs.branch }}
addon-id: ${{ github.event.repository.name }}
env:
GH_USERNAME: ${{ github.repository_owner }}
GH_TOKEN: ${{secrets.GH_TOKEN}}
EMAIL: ${{secrets.EMAIL}}
- name: Create Github Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: ${{ steps.changelog.outputs.changelog }}
draft: false
prerelease: false
- name: Upload Addon zip to github release
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ steps.kodi-addon-submitter.outputs.addon-zip }}
asset_name: ${{ steps.kodi-addon-submitter.outputs.addon-zip }}
asset_content_type: application/zip