diff --git a/.github/workflows/macos_13.yml b/.github/workflows/macos_13.yml new file mode 100644 index 00000000..c71f8da0 --- /dev/null +++ b/.github/workflows/macos_13.yml @@ -0,0 +1,176 @@ +name: macOS 13 + +on: + pull_request: + branches: [ main ] + +jobs: + software_cpp: + name: Software C++ + runs-on: macos-13-xlarge + defaults: + run: + shell: bash -l {0} # Source profile for each step + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + - run: brew install faust + - run: brew install --cask vcv-rack + - name: VCV Rack headless first run + run: /Applications/VCV\ Rack\ 2\ Free.app/Contents/MacOS/Rack -h <<< '\n' + - run: python3 build-system/install.py + - run: erbb setup --with-xcode-support + - name: test/micropatch + run: erbb configure && erbb build && erbb build simulator && erbb build simulator --xcode + working-directory: test/micropatch + - name: test/seed2-dfm-eval-euro + run: erbb configure && erbb build firmware && erbb build simulator && erbb build simulator --xcode + working-directory: test/seed2-dfm-eval-euro + - name: test/data + run: erbb configure && erbb build + working-directory: test/data + - name: samples/bypass + run: erbb configure && erbb build && erbb build hardware && erbb build simulator && erbb build simulator --xcode + working-directory: samples/bypass + - name: samples/drop + run: erbb configure && erbb build && erbb build hardware && erbb build simulator && erbb build simulator --xcode + working-directory: samples/drop + - name: samples/reverb + run: erbb configure && erbb build && erbb build hardware && erbb build simulator && erbb build simulator --xcode + working-directory: samples/reverb + - name: samples/kick + run: erbb configure && erbb build && erbb build hardware && erbb build hardware --only-gerber && erbb build simulator && erbb build simulator --xcode + working-directory: samples/kick + - name: samples/custom + run: erbb configure && erbb build && erbb build hardware && erbb build simulator + working-directory: samples/custom + - name: samples/frohmager + run: erbb install simulator + working-directory: samples/frohmager + - name: erbb init + run: mkdir init && cd init && erbb init --name Init && erbb configure && erbb build && erbb build hardware && erbb build simulator && erbb build simulator --xcode + working-directory: samples + - name: VCV Rack headless run + run: /Applications/VCV\ Rack\ 2\ Free.app/Contents/MacOS/Rack -h <<< '\n' && cat $HOME/Documents/Rack2/log.txt + - name: Check micropatch + run: grep "Loaded ErbPluginMicropatch" $HOME/Documents/Rack2/log.txt + - name: Check bypass + run: grep "Loaded ErbPluginBypass" $HOME/Documents/Rack2/log.txt + - name: Check drop + run: grep "Loaded ErbPluginDrop" $HOME/Documents/Rack2/log.txt + - name: Check reverb + run: grep "Loaded ErbPluginReverb" $HOME/Documents/Rack2/log.txt + - name: Check kick + run: grep "Loaded ErbPluginKick" $HOME/Documents/Rack2/log.txt + - name: Check custom + run: grep "Loaded ErbPluginCustom" $HOME/Documents/Rack2/log.txt + - name: Check frohmager + run: grep "Loaded ErbPluginFrohmager" $HOME/Documents/Rack2/log.txt + - name: Check init + run: grep "Loaded ErbPluginInit" $HOME/Documents/Rack2/log.txt + + software_max: + name: Software Max/MSP/Gen~ + runs-on: macos-13-xlarge + defaults: + run: + shell: bash -l {0} # Source profile for each step + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + - run: brew install --cask vcv-rack + - name: VCV Rack headless first run + run: /Applications/VCV\ Rack\ 2\ Free.app/Contents/MacOS/Rack -h <<< '\n' + - run: python3 build-system/install.py + - run: erbb setup + - name: test/max + run: erbb configure && erbb build simulator && erbb build && erbb build hardware + working-directory: test/max + - name: test/max2 + run: erbb configure && erbb build simulator && erbb build && erbb build hardware + working-directory: test/max2 + - name: VCV Rack headless run + run: /Applications/VCV\ Rack\ 2\ Free.app/Contents/MacOS/Rack -h <<< '\n' && cat $HOME/Documents/Rack2/log.txt + - name: Check max + run: grep "Loaded ErbPluginMax" $HOME/Documents/Rack2/log.txt + + software_faust: + name: Software Faust + runs-on: macos-13-xlarge + defaults: + run: + shell: bash -l {0} # Source profile for each step + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + - run: brew install faust + - run: brew install --cask vcv-rack + - name: VCV Rack headless first run + run: /Applications/VCV\ Rack\ 2\ Free.app/Contents/MacOS/Rack -h <<< '\n' + - run: python3 build-system/install.py + - run: erbb setup + - name: samples/faust + run: erbb configure && erbb build && erbb build hardware && erbb build hardware --only-gerber && erbb build simulator && erbb build simulator --xcode + working-directory: samples/faust + - name: test/faust + run: erbb configure && erbb build simulator && erbb build && erbb build hardware && erbb build simulator --xcode + working-directory: test/faust + - name: test/faust2 + run: erbb configure && erbb build simulator && erbb build && erbb build hardware && erbb build simulator --xcode + working-directory: test/faust2 + - name: test/faust3 + run: erbb configure && erbb build simulator && erbb build && erbb build hardware && erbb build simulator --xcode + working-directory: test/faust3 + - name: VCV Rack headless run + run: /Applications/VCV\ Rack\ 2\ Free.app/Contents/MacOS/Rack -h <<< '\n' && cat $HOME/Documents/Rack2/log.txt + - name: Check samples/faust + run: grep "Loaded ErbPluginFlanger" $HOME/Documents/Rack2/log.txt + - name: Check test/faust + run: grep "Loaded ErbPluginFaust" $HOME/Documents/Rack2/log.txt + + hardware: + name: Hardware + runs-on: macos-13-xlarge + defaults: + run: + shell: bash -l {0} # Source profile for each step + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + - run: python3 build-system/install.py + - run: erbb setup + - run: ./boards/kivu12/build.py + + unit_tests: + name: Unit Tests + runs-on: macos-13-xlarge + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + - run: brew install ninja + - run: python3 test/unit/configure.py + - run: python3 test/unit/build.py + - run: python3 test/unit/run.py + + erbb_tests: + name: Erbb/Erbui Tests + runs-on: macos-13-xlarge + defaults: + run: + shell: bash -l {0} # Source profile for each step + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + - run: python3 build-system/install.py + - run: erbb setup + - run: python3 -m pip install coverage + - run: python3 build-system/test.py + - run: python3 build-system/cover.py + - run: python3 test/vcvrack/configure.py + - run: python3 test/vcvrack/build.py