Add leading table of features to README #143
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
| # Appose CI Build | |
| # | |
| # Caching Strategy: | |
| # 1. Maven dependencies (via setup-java cache: 'maven') | |
| # 2. Appose environments and tool binaries (~/.local/share/appose) | |
| # - Includes pixi, uv, and micromamba executables | |
| # - Includes built environments | |
| # 3. Pixi package cache (rattler cache): | |
| # - Linux: ~/.cache/rattler/cache | |
| # - macOS: ~/Library/Caches/rattler/cache | |
| # - Windows: %LOCALAPPDATA%\rattler\cache | |
| # 4. uv package cache: | |
| # - Linux: ~/.cache/uv | |
| # - macOS: ~/.cache/uv | |
| # - Windows: %LOCALAPPDATA%\uv\cache | |
| # 5. Micromamba package cache: | |
| # - All platforms: ~/.local/share/mamba/pkgs and ~/.mamba/pkgs | |
| # | |
| # Cache keys are based on: | |
| # - pom.xml hash (dependencies change) | |
| # - Builder source files (tool versions change) | |
| # | |
| # This prevents redundant downloads of ~100MB+ tool binaries and packages on every CI run. | |
| name: build | |
| on: | |
| pull_request: | |
| branches: | |
| - main | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - "*-[0-9]+.*" | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Java | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '8' | |
| distribution: 'zulu' | |
| cache: 'maven' | |
| - name: Set up Python | |
| uses: actions/setup-python@v3 | |
| with: | |
| python-version: '3.10' | |
| - name: Cache Appose environments and tools | |
| id: cache-appose | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.local/share/appose | |
| key: ${{ runner.os }}-appose-${{ hashFiles('pom.xml') }}-${{ hashFiles('src/main/java/org/apposed/appose/builder/*.java') }} | |
| restore-keys: | | |
| ${{ runner.os }}-appose-${{ hashFiles('pom.xml') }}- | |
| ${{ runner.os }}-appose- | |
| - name: Cache Pixi packages (Rattler cache) | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cache/rattler/cache | |
| ~/Library/Caches/rattler/cache | |
| ~/AppData/Local/rattler/cache | |
| key: ${{ runner.os }}-pixi-pkgs-${{ hashFiles('src/test/resources/envs/*') }} | |
| restore-keys: | | |
| ${{ runner.os }}-pixi-pkgs- | |
| - name: Cache uv packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cache/uv | |
| ~/Library/Caches/uv | |
| ~/AppData/Local/uv/cache | |
| key: ${{ runner.os }}-uv-pkgs-${{ hashFiles('src/test/resources/envs/*') }} | |
| restore-keys: | | |
| ${{ runner.os }}-uv-pkgs- | |
| - name: Cache Micromamba packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.local/share/mamba/pkgs | |
| ~/.mamba/pkgs | |
| ~/AppData/Roaming/.mamba/pkgs | |
| ~/AppData/Roaming/mamba/pkgs | |
| key: ${{ runner.os }}-mamba-pkgs-${{ hashFiles('src/test/resources/envs/*') }} | |
| restore-keys: | | |
| ${{ runner.os }}-mamba-pkgs- | |
| - name: Set up CI environment | |
| run: .github/setup.sh | |
| shell: bash | |
| - name: Execute the build | |
| run: .github/build.sh | |
| shell: bash | |
| env: | |
| GPG_KEY_NAME: ${{ secrets.GPG_KEY_NAME }} | |
| GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} | |
| MAVEN_USER: ${{ secrets.MAVEN_USER }} | |
| MAVEN_PASS: ${{ secrets.MAVEN_PASS }} | |
| CENTRAL_USER: ${{ secrets.CENTRAL_USER }} | |
| CENTRAL_PASS: ${{ secrets.CENTRAL_PASS }} | |
| SIGNING_ASC: ${{ secrets.SIGNING_ASC }} |