ram: added multi-port configuration support #2945
Workflow file for this run
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 macOS | |
| on: | |
| push: | |
| branches: | |
| - master # Updated to strictly track master | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| Mac-Build: | |
| if: github.repository_owner != 'The-OpenROAD-Project-private' | |
| runs-on: macos-latest | |
| steps: | |
| - name: Setup xcode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Check out repository code | |
| uses: actions/checkout@v6 | |
| with: | |
| submodules: 'recursive' | |
| # 1. RESTORE: All jobs (PRs, manual runs, master) get to read the cache | |
| - name: Restore Bazel Disk Cache | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: ~/.cache/bazel-disk-cache | |
| key: ${{ runner.os }}-bazel-${{ github.sha }} | |
| restore-keys: | | |
| ${{ runner.os }}-bazel- | |
| - name: Install Bazelisk | |
| run: brew install bazelisk | |
| - name: Build OpenROAD | |
| env: | |
| BAZEL_CACHE_PASSWORD: ${{ secrets.BAZEL_CACHE_PASSWORD }} | |
| run: | | |
| # When the secret is present (push / dispatch / private repo PR) | |
| # add authed gRPC + Remote Asset API + uploads on top of the | |
| # .bazelrc anon HTTPS read-only cache. Fork PRs have no secret | |
| # and just use the anon read path. | |
| REMOTE_FLAGS=() | |
| if [ -n "${BAZEL_CACHE_PASSWORD}" ]; then | |
| TOKEN_B64=$(printf 'ci:%s' "${BAZEL_CACHE_PASSWORD}" | base64 | tr -d '\n') | |
| # Mask the derived token so it cannot leak in build logs. | |
| # GH auto-masks the raw secret but not base64-of-secret. | |
| echo "::add-mask::${TOKEN_B64}" | |
| REMOTE_FLAGS=( | |
| --remote_cache=grpcs://bazel.precisioninno.com:443 | |
| --experimental_remote_downloader=grpcs://bazel.precisioninno.com:443 | |
| --remote_upload_local_results=true | |
| --remote_header="Authorization=Basic ${TOKEN_B64}" | |
| ) | |
| fi | |
| # Trace the bazelisk invocation so we can confirm remote flags are | |
| # present. TOKEN_B64 is already masked above, so it prints as ***. | |
| set -x | |
| bazelisk build \ | |
| "${REMOTE_FLAGS[@]}" \ | |
| --disk_cache=~/.cache/bazel-disk-cache \ | |
| --experimental_disk_cache_gc_max_size=5G \ | |
| --//:platform=gui //:openroad | |
| # 2. SAVE: Only executes if this is a push/merge directly to the master branch | |
| - name: Save Bazel Disk Cache | |
| if: github.ref == 'refs/heads/master' && github.event_name == 'push' | |
| uses: actions/cache/save@v5 | |
| with: | |
| path: ~/.cache/bazel-disk-cache | |
| key: ${{ runner.os }}-bazel-${{ github.sha }} |