Merge pull request #330 from Project-Env/dependabot/maven/org.graalvm… #1002
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build | |
| on: | |
| push: | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ macos-latest, windows-latest, ubuntu-latest ] | |
| include: | |
| - os: ubuntu-latest | |
| cli_assembly_id: linux-amd64 | |
| cli_assembly_format: tar.gz | |
| cli_assembly_arch: x86-64-v3 | |
| - os: windows-latest | |
| cli_assembly_id: windows-amd64 | |
| cli_assembly_format: zip | |
| cli_assembly_arch: x86-64-v3 | |
| gu_executable_ext: .cmd | |
| - os: macos-13 | |
| cli_assembly_id: macos-amd64 | |
| cli_assembly_format: tar.gz | |
| cli_assembly_arch: x86-64-v3 | |
| - os: macos-latest | |
| cli_assembly_id: macos-aarch64 | |
| cli_assembly_format: tar.gz | |
| cli_assembly_arch: armv8-a | |
| steps: | |
| - uses: ilammy/msvc-dev-cmd@v1 | |
| if: ${{ runner.os == 'Windows'}} | |
| - run: ldd --version | |
| if: ${{ runner.os == 'Linux'}} | |
| - uses: actions/checkout@v6 | |
| - uses: actions/cache@v4 | |
| with: | |
| path: ~/.sonar/cache | |
| key: ${{ runner.os }}-sonar | |
| restore-keys: ${{ runner.os }}-sonar | |
| - uses: actions/cache@v4 | |
| with: | |
| path: ~/.m2 | |
| key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | |
| restore-keys: ${{ runner.os }}-m2 | |
| - uses: Project-Env/project-env-github-action@v1.5.0 | |
| - uses: repolevedavaj/install-nsis@v1.1.0 | |
| with: | |
| nsis-version: 3.08 | |
| if: ${{ runner.os == 'Windows'}} | |
| - run: mvn -B -s etc/m2/settings.xml verify -Pnative-image -Psonar "-Dcli.assembly.id=${{ matrix.cli_assembly_id }}" "-Dcli.assembly.format=${{ matrix.cli_assembly_format }}" "-Dcli.binary.arch=${{ matrix.cli_assembly_arch }}" | |
| if: ${{ runner.os == 'Linux' && github.actor != 'dependabot[bot]' }} | |
| env: | |
| GITHUB_USER: ${{ github.actor }} | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
| - run: mvn -B -s etc/m2/settings.xml verify -Pnative-image "-Dcli.assembly.id=${{ matrix.cli_assembly_id }}" "-Dcli.assembly.format=${{ matrix.cli_assembly_format }}" "-Dcli.binary.arch=${{ matrix.cli_assembly_arch }}" | |
| if: ${{ runner.os != 'Linux' || github.actor == 'dependabot[bot]' }} | |
| env: | |
| GITHUB_USER: ${{ github.actor }} | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Sign and notarize executable | |
| if: ${{ runner.os == 'macOS' && github.actor != 'dependabot[bot]' }} | |
| run: ../../../etc/github-actions/sign-and-notarize-executable.sh | |
| working-directory: code/cli/target | |
| env: | |
| EXECUTABLE_NAME: project-env-cli | |
| EXECUTABLE_PACKAGE_NAME: cli-dev-${{ matrix.cli_assembly_id }}.${{ matrix.cli_assembly_format }} | |
| EXECUTABLE_ID: io.projectenv.core.cli | |
| APPLE_ID: ${{ secrets.APPLE_ID }} | |
| APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }} | |
| APPLE_ID_TEAM: ${{ secrets.APPLE_ID_TEAM }} | |
| APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }} | |
| APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} | |
| APPLE_IDENTITY: ${{ secrets.APPLE_IDENTITY }} | |
| - uses: actions/upload-artifact@v5 | |
| if: ${{ github.actor != 'dependabot[bot]' }} | |
| with: | |
| name: cli-dev-${{ matrix.cli_assembly_id }}.${{ matrix.cli_assembly_format }} | |
| path: code/cli/target/cli-dev-${{ matrix.cli_assembly_id }}.${{ matrix.cli_assembly_format }} | |
| - uses: repolevedavaj/create-cli-app-nsis-installer@main | |
| if: ${{ runner.os == 'Windows'}} | |
| with: | |
| package-identifier: ProjectEnv.ProjectEnvCli | |
| package-name: Project-Env Cli | |
| package-version: dev | |
| source-directory: code/cli/target/cli-dev-windows-amd64 | |
| - uses: actions/upload-artifact@v5 | |
| if: ${{ runner.os == 'Windows' && github.actor != 'dependabot[bot]' }} | |
| with: | |
| name: cli-dev-${{ matrix.cli_assembly_id }}-setup.exe | |
| path: code/cli/target/cli-dev-${{ matrix.cli_assembly_id }}-setup.exe |