Publish Studio Desktop for Linux in Flathub #29
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Publish Studio Desktop for Linux in Flathub | |
on: | |
workflow_dispatch: | |
# workflow_run: | |
# workflows: [ Publish Studio Desktop ] | |
# types: | |
# - completed | |
jobs: | |
deploy-flathub: | |
name: Deploy in Flathub | |
runs-on: ubuntu-latest | |
if: ${{ github.event_name == 'workflow_dispatch' || (github.event_name == 'workflow_run' && github.event.workflow_run.conclusion == 'success') }} | |
steps: | |
- name: Install Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install Flatpak and Flathub | |
run: | | |
sudo apt-get install flatpak -y | |
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo | |
sudo flatpak install flathub org.freedesktop.Sdk//23.08 -y --noninteractive | |
sudo flatpak install flathub org.freedesktop.Sdk.Extension.dotnet8//23.08 -y --noninteractive | |
- name: Checkout the target repository | |
uses: actions/checkout@v4 | |
with: | |
repository: flathub/com.one_ware.OneWare | |
token: ${{ secrets.HENDRIK_PERSONAL_TOKEN }} | |
- name: Checkout this repository | |
uses: actions/checkout@v4 | |
with: | |
path: source-repo | |
- uses: mavrosxristoforos/get-xml-info@2.0 | |
name: Get Version | |
id: get-oneware-version | |
with: | |
xml-file: 'source-repo/build/props/Base.props' | |
xpath: "//*[local-name()='Project']/*[local-name()='PropertyGroup']/*[local-name()='StudioVersion']" | |
- name: Update Nuget Sources | |
run: | | |
curl -o flatpak-dotnet-generator.py https://raw.githubusercontent.com/flatpak/flatpak-builder-tools/master/dotnet/flatpak-dotnet-generator.py | |
chmod +x flatpak-dotnet-generator.py | |
./flatpak-dotnet-generator.py --dotnet 8 -f 23.08 -r linux-x64 oneware-nuget-sources.json ./source-repo/studio/OneWare.Studio.Desktop/OneWare.Studio.Desktop.csproj | |
rm -f flatpak-dotnet-generator.py | |
- name: Delete the source repository | |
run: rm -rf source-repo | |
- name: Update Version | |
run: | | |
sed -i 's/tag: .*/tag: ${{ steps.get-oneware-version.outputs.info }}/' com.one_ware.OneWare.yml | |
- name: Commit changes | |
run: | | |
git config --global user.name "github-actions[bot]" | |
git config --global user.email "github-actions[bot]@users.noreply.github.com" | |
git add com.one_ware.OneWare.yml | |
git add oneware-nuget-sources.json | |
git commit -m "Update OneWare Version" | |
- name: Push changes and create pull request | |
uses: peter-evans/create-pull-request@v6 | |
with: | |
token: ${{ secrets.HENDRIK_PERSONAL_TOKEN }} | |
branch: release-${{ steps.get-oneware-version.outputs.info }} | |
title: "Update Version to ${{ steps.get-oneware-version.outputs.info }}" | |
body: "This is an automated pull request to update the version to ${{ steps.get-oneware-version.outputs.info }}" | |
labels: | | |
update | |
automated pr |