diff --git a/.github/workflows/build-test-deploy.yml b/.github/workflows/build-test-deploy.yml new file mode 100644 index 000000000..c22462a40 --- /dev/null +++ b/.github/workflows/build-test-deploy.yml @@ -0,0 +1,40 @@ +name: Build, Test, and Deploy Project + +on: + workflow_dispatch: + inputs: + project: + description: 'Project to build (i.e. Demo/Blink)' + required: true + platform: + description: 'Platform to build for (i.e. cli, stm32f767)' + required: true + +jobs: + build: + runs-on: self-hosted + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Build ${{ github.event.inputs.project }} for ${{ github.event.inputs.platform }} + run: | + cd firmware + make PROJECT=${{ github.event.inputs.project }} PLATFORM=${{ github.event.inputs.platform }} build + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: build-artifact-${{ github.event.inputs.project }}-${{ github.event.inputs.platform }} + path: firmware/build/${{ github.event.inputs.project }}/${{ github.event.inputs.platform }} + + deploy: + runs-on: ubuntu-latest + needs: build + environment: deploy + steps: + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + path: firmware/build/${{ github.event.inputs.project }}/${{ github.event.inputs.platform }} + name: build-artifact-${{ github.event.inputs.project }}-${{ github.event.inputs.platform }} diff --git a/.github/workflows/test-self-hosted.yml b/.github/workflows/test-self-hosted.yml index 2ba8b0ac2..94be03016 100644 --- a/.github/workflows/test-self-hosted.yml +++ b/.github/workflows/test-self-hosted.yml @@ -34,7 +34,7 @@ jobs: run: | cd firmware make PROJECT=${{ matrix.project }} PLATFORM=${{ matrix.platform }} build - + # - name: Upload artifacts # uses: actions/upload-artifact@v4 # with: