From 72c5d0427e5ad1898bc28778abc9383b569e0614 Mon Sep 17 00:00:00 2001 From: Christian Grasser Date: Sun, 12 Oct 2025 19:12:53 +0200 Subject: [PATCH] github action CI build --- .github/dependabot.yml | 13 +++++++++ .github/workflows/CI_build.yml | 52 ++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/CI_build.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..2d01d71 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + + # Maintain dependencies for GitHub Actions + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "monthly" diff --git a/.github/workflows/CI_build.yml b/.github/workflows/CI_build.yml new file mode 100644 index 0000000..0481971 --- /dev/null +++ b/.github/workflows/CI_build.yml @@ -0,0 +1,52 @@ +name: CI_build + +on: [push, pull_request] + +jobs: + build: + + runs-on: windows-latest + strategy: + fail-fast: false + matrix: + build_configuration: [Release, Debug] + build_platform: [x64, Win32, ARM64] + + steps: + - name: Checkout repo + uses: actions/checkout@v5 + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v2 + + - name: MSBuild of plugin dll + working-directory: vs.proj\ + run: msbuild NppPluginTemplate.vcxproj /m /p:configuration="${{ matrix.build_configuration }}" /p:platform="${{ matrix.build_platform }}" + + - uses: olegtarasov/get-tag@v2.1.4 + id: tagName + + - name: Archive artifacts for x64 + if: matrix.build_platform == 'x64' && matrix.build_configuration == 'Release' + run: 7z a NppRgaIsaPlugin_${{ steps.tagName.outputs.tag }}_${{ matrix.build_platform }}.zip .\bin64\NppRgaIsaPlugin.dll + + - name: Archive artifacts for Win32 + if: matrix.build_platform == 'Win32' && matrix.build_configuration == 'Release' + run: 7z a NppRgaIsaPlugin_${{ steps.tagName.outputs.tag }}_${{ matrix.build_platform }}.zip .\bin\NppRgaIsaPlugin.dll + + - name: Archive artifacts for ARM64 + if: matrix.build_platform == 'ARM64' && matrix.build_configuration == 'Release' + run: 7z a NppRgaIsaPlugin_${{ steps.tagName.outputs.tag }}_${{ matrix.build_platform }}.zip .\arm64\NppRgaIsaPlugin.dll + + - name: Archive artifacts for ${{ matrix.build_platform }} + if: matrix.build_configuration == 'Release' + uses: actions/upload-artifact@v4 + with: + name: NppRgaIsaPlugin_${{ steps.tagName.outputs.tag }}_${{ matrix.build_platform }}.zip + path: NppRgaIsaPlugin_${{ steps.tagName.outputs.tag }}_${{ matrix.build_platform }}.zip + + - name: Create release on tagging + uses: softprops/action-gh-release@v2 + if: startsWith(github.ref, 'refs/tags/') + with: + files: NppRgaIsaPlugin_${{ steps.tagName.outputs.tag }}_${{ matrix.build_platform }}.zip