name: Publish to Maven on: workflow_dispatch jobs: publish-modules: strategy: matrix: module: [imgui-app, imgui-lwjgl3, imgui-binding] name: Publish Module (${{ matrix.module }}) runs-on: ubuntu-latest env: NEXUS_UPD_ID: ${{ secrets.RELEASE_NEXUS_UPD_ID }} NEXUS_UPD_PASS: ${{ secrets.RELEASE_NEXUS_UPD_PASS }} SIGNING_KEY_ID: ${{ secrets.RELEASE_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.RELEASE_SIGNING_KEY }} steps: - name: Checkout Repository uses: actions/checkout@v2 - name: Set up Java 8 uses: actions/setup-java@v1 with: java-version: 8 - name: Publish uses: eskatos/gradle-command-action@v1 with: arguments: ${{ format(':{0}:publishMavenJavaPublicationToMavenCentralRepository', matrix.module) }} publish-natives: strategy: matrix: type: [win, linux, mac] freetype: [true, false] name: Publish Native (type=${{ matrix.type }}, freetype=${{ matrix.freetype }}) runs-on: ubuntu-latest env: NEXUS_UPD_ID: ${{ secrets.RELEASE_NEXUS_UPD_ID }} NEXUS_UPD_PASS: ${{ secrets.RELEASE_NEXUS_UPD_PASS }} SIGNING_KEY_ID: ${{ secrets.RELEASE_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.RELEASE_SIGNING_KEY }} steps: - name: Checkout Repository uses: actions/checkout@v2 - name: Set up Java 8 uses: actions/setup-java@v1 with: java-version: 8 - name: Publish uses: eskatos/gradle-command-action@v1 with: arguments: ${{ format(':imgui-binding-natives:publishMavenJavaPublicationToMavenCentralRepository -PdeployType={0} -Pfreetype={1}', matrix.type, matrix.freetype) }}