Skip to content

Commit 160c87b

Browse files
committed
Updated for use with REST API v3. Added macos build and updated workflow
1 parent 4dfee8e commit 160c87b

5 files changed

Lines changed: 542 additions & 193 deletions

File tree

.github/workflows/build-release.yml

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -52,48 +52,42 @@ jobs:
5252
name: windows-build
5353
path: dist/MIDI-REST-Integration-${{ github.ref_name }}-windows.zip
5454

55-
# build-macos:
56-
# runs-on: macos-latest
57-
# steps:
58-
# - name: Checkout code
59-
# uses: actions/checkout@v3
60-
61-
# - name: Set up Python
62-
# uses: actions/setup-python@v4
63-
# with:
64-
# python-version: '3.10'
65-
# cache: 'pip'
66-
67-
# - name: Install dependencies
68-
# run: |
69-
# python -m pip install --upgrade pip
70-
# pip install -r requirements.txt
71-
# pip install pyinstaller # - name: Update version in version.py
72-
# run: |
73-
# tag="${{ github.ref_name }}"
74-
# # Update VERSION string
75-
# sed -i '' "s/VERSION = \"[0-9]\+\.[0-9]\+\.[0-9]\+\"/VERSION = \"$tag\"/" version.py
76-
#
77-
# # Update VERSION_INFO tuple
78-
# major=$(echo $tag | cut -d. -f1)
79-
# minor=$(echo $tag | cut -d. -f2)
80-
# patch=$(echo $tag | cut -d. -f3)
81-
# sed -i '' "s/VERSION_INFO = ([0-9]\+, [0-9]\+, [0-9]\+)/VERSION_INFO = ($major, $minor, $patch)/" version.py
82-
83-
# - name: Build application
84-
# run: |
85-
# python build.py --platform macos
86-
87-
# - name: Compress artifacts
88-
# run: |
89-
# cd dist
90-
# zip -r "MIDI-REST-Integration-${{ github.ref_name }}-darwin.zip" "MIDI-REST-Integration-${{ github.ref_name }}-darwin"
91-
92-
# - name: Upload artifacts
93-
# uses: actions/upload-artifact@v4
94-
# with:
95-
# name: macos-build
96-
# path: dist/MIDI-REST-Integration-${{ github.ref_name }}-darwin.zip
55+
build-macos:
56+
runs-on: macos-13
57+
steps:
58+
- name: Checkout code
59+
uses: actions/checkout@v3
60+
61+
- name: Set up Python
62+
uses: actions/setup-python@v4
63+
with:
64+
python-version: '3.10'
65+
cache: 'pip'
66+
67+
- name: Install dependencies
68+
run: |
69+
python -m pip install --upgrade pip
70+
pip install -r requirements.txt
71+
pip install pyinstaller
72+
73+
- name: Update version in version.py
74+
run: |
75+
tag="${{ github.ref_name }}"
76+
sed -i "" "s/VERSION = \"[0-9]\+\.[0-9]\+\.[0-9]\+\"/VERSION = \"$tag\"/" version.py
77+
major=$(echo $tag | cut -d. -f1)
78+
minor=$(echo $tag | cut -d. -f2)
79+
patch=$(echo $tag | cut -d. -f3)
80+
sed -i "" "s/VERSION_INFO = ([0-9]\+, [0-9]\+, [0-9]\+)/VERSION_INFO = ($major, $minor, $patch)/" version.py
81+
82+
- name: Build application
83+
run: |
84+
python build.py --platform macos
85+
86+
- name: Upload artifacts
87+
uses: actions/upload-artifact@v4
88+
with:
89+
name: macos-build
90+
path: dist/MIDI-REST-Integration-${{ github.ref_name }}-macOS.dmg
9791

9892
build-linux:
9993
runs-on: ubuntu-latest
@@ -107,12 +101,16 @@ jobs:
107101
python-version: '3.10'
108102
cache: 'pip'
109103

110-
- name: Install dependencies
104+
- name: Install system dependencies
105+
run: |
106+
sudo apt-get update
107+
sudo apt-get install -y libasound2-dev
108+
109+
- name: Install Python dependencies
111110
run: |
112111
python -m pip install --upgrade pip
113112
pip install -r requirements.txt
114113
pip install pyinstaller
115-
sudo apt-get update
116114
- name: Update version in version.py
117115
run: |
118116
tag="${{ github.ref_name }}"
@@ -140,7 +138,7 @@ jobs:
140138
name: linux-build
141139
path: dist/MIDI-REST-Integration-${{ github.ref_name }}-linux.tar.gz
142140
create-release:
143-
needs: [build-windows, build-linux]
141+
needs: [build-windows, build-linux, build-macos]
144142
runs-on: ubuntu-latest
145143
steps:
146144
- name: Download all artifacts
@@ -162,16 +160,18 @@ jobs:
162160
files: |
163161
artifacts/windows-build/MIDI-REST-Integration-${{ github.ref_name }}-windows.zip
164162
artifacts/linux-build/MIDI-REST-Integration-${{ github.ref_name }}-linux.tar.gz
163+
artifacts/macos-build/MIDI-REST-Integration-${{ github.ref_name }}-macOS.dmg
165164
body: |
166165
# MIDI REST Integration v${{ github.ref_name }}
167-
168-
This release contains binaries for Windows and Linux.
169-
166+
167+
This release contains binaries for Windows, Linux, and macOS.
168+
170169
## Installation
171-
172-
- **Windows**: Download the Windows zip file, extract it, and run the executable.
173-
- **Linux**: Download the Linux tar.gz file, extract it, and run the executable.
174-
170+
171+
- **Windows**: Download the `.zip`, extract it, and run the executable.
172+
- **Linux**: Download the `.tar.gz`, extract it, and run the executable.
173+
- **macOS**: Download the `.dmg`, open it, and drag the app to your Applications folder.
174+
175175
## Changes in v${{ github.ref_name }}
176-
176+
177177
_Release notes will be added here_

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
__pycache__/
22
dist/
33
build/
4-
.venv/
4+
.venv/
5+
.audit-env/

0 commit comments

Comments
 (0)