[CI] Install full caravel for build tasks like ship/setid
diff --git a/.github/scripts/build/run-set-id.sh b/.github/scripts/build/run-set-id.sh index 865285f..9b1cdf5 100644 --- a/.github/scripts/build/run-set-id.sh +++ b/.github/scripts/build/run-set-id.sh
@@ -23,6 +23,9 @@ cd $UPRJ_ROOT +# Install full version of caravel +git clone https://github.com/efabless/caravel --branch develop --depth 1 + LOG_FILE=out.log docker run -v $UPRJ_ROOT:$UPRJ_ROOT -v $PDK_ROOT:$PDK_ROOT -e UPRJ_ROOT=$UPRJ_ROOT -e PDK_ROOT=$PDK_ROOT -e CARAVEL_ROOT=$CARAVEL_ROOT -u $(id -u $USER):$(id -g $USER) $IMAGE_NAME bash -c "cd $UPRJ_ROOT; export USER_ID=$USER_ID; make set_user_id | tee $LOG_FILE;"
diff --git a/.github/scripts/build/run-ship.sh b/.github/scripts/build/run-ship.sh index 974f366..d1c01ab 100644 --- a/.github/scripts/build/run-ship.sh +++ b/.github/scripts/build/run-ship.sh
@@ -22,6 +22,9 @@ cd $UPRJ_ROOT +# Install full version of caravel +git clone https://github.com/efabless/caravel --branch develop --depth 1 + docker run -v $UPRJ_ROOT:$UPRJ_ROOT -v $PDK_ROOT:$PDK_ROOT -e UPRJ_ROOT=$UPRJ_ROOT -e PDK_ROOT=$PDK_ROOT -e CARAVEL_ROOT=$CARAVEL_ROOT -u $(id -u $USER):$(id -g $USER) $IMAGE_NAME bash -c "cd $UPRJ_ROOT; make ship;" SHIP_FILE=$UPRJ_ROOT/gds/caravel.gds
diff --git a/.github/workflows/caravel_build.yml b/.github/workflows/caravel_build.yml new file mode 100644 index 0000000..f86ab79 --- /dev/null +++ b/.github/workflows/caravel_build.yml
@@ -0,0 +1,78 @@ +name: Caravel Build + + +on: + # Runs on Every Push + push: + # Runs on Pull Requests + pull_request: + +jobs: + make_ship: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Install The PDK + run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/pdkBuild.sh + env: + OPENLANE_TAG: v0.12 + + - name: Run make ship + run: bash ${GITHUB_WORKSPACE}/.github/scripts/build/run-ship.sh + env: + OPENLANE_TAG: v0.12 + + set_user_id: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Install The PDK + run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/pdkBuild.sh + env: + OPENLANE_TAG: v0.12 + + - name: Run Set User ID + run: bash ${GITHUB_WORKSPACE}/.github/scripts/build/run-set-id.sh + env: + OPENLANE_TAG: v0.12 + + xor_wrapper: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Install The PDK + run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/pdkBuild.sh + env: + OPENLANE_TAG: v0.12 + + - name: Run XOR Check + run: bash ${GITHUB_WORKSPACE}/.github/scripts/build/run-xor.sh + env: + OPENLANE_TAG: v0.12
diff --git a/.github/workflows/caravel_example_ci.yml b/.github/workflows/user_project_ci.yml similarity index 60% rename from .github/workflows/caravel_example_ci.yml rename to .github/workflows/user_project_ci.yml index 76ef215..47cfded 100644 --- a/.github/workflows/caravel_example_ci.yml +++ b/.github/workflows/user_project_ci.yml
@@ -1,4 +1,4 @@ -name: CI +name: UPRJ_CI on: @@ -96,73 +96,4 @@ - name: Run DV tests # Run test number 0,1,2,3,4 in one job <test-ids> <sim-mode> - run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/run-dv-wrapper.sh 0,1,2,3,4 GL - - make_ship: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - submodules: 'true' - - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - - name: Install The PDK - run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/pdkBuild.sh - env: - OPENLANE_TAG: v0.12 - - - name: Run make ship - run: bash ${GITHUB_WORKSPACE}/.github/scripts/build/run-ship.sh - env: - OPENLANE_TAG: v0.12 - - set_user_id: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - submodules: 'true' - - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - - name: Install The PDK - run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/pdkBuild.sh - env: - OPENLANE_TAG: v0.12 - - - name: Run Set User ID - run: bash ${GITHUB_WORKSPACE}/.github/scripts/build/run-set-id.sh - env: - OPENLANE_TAG: v0.12 - - xor_wrapper: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - submodules: 'true' - - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - - name: Install The PDK - run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/pdkBuild.sh - env: - OPENLANE_TAG: v0.12 - - - name: Run XOR Check - run: bash ${GITHUB_WORKSPACE}/.github/scripts/build/run-xor.sh - env: - OPENLANE_TAG: v0.12 + run: bash ${GITHUB_WORKSPACE}/.github/scripts/dv/run-dv-wrapper.sh 0,1,2,3,4 GL \ No newline at end of file
diff --git a/Makefile b/Makefile index 7f8593d..ae125c1 120000 --- a/Makefile +++ b/Makefile
@@ -1 +1 @@ -caravel/Makefile \ No newline at end of file +caravel-lite/Makefile \ No newline at end of file
diff --git a/openlane/Makefile b/openlane/Makefile index 48e5b4a..f242a3c 120000 --- a/openlane/Makefile +++ b/openlane/Makefile
@@ -1 +1 @@ -../caravel/openlane/Makefile \ No newline at end of file +caravel-lite/openlane/Makefile \ No newline at end of file
diff --git a/openlane/user_project_wrapper/pin_order.cfg b/openlane/user_project_wrapper/pin_order.cfg index 267d91c..5e924e2 120000 --- a/openlane/user_project_wrapper/pin_order.cfg +++ b/openlane/user_project_wrapper/pin_order.cfg
@@ -1 +1 @@ -../../caravel/openlane/user_project_wrapper_empty/pin_order.cfg \ No newline at end of file +caravel-lite/openlane/user_project_wrapper_empty/pin_order.cfg \ No newline at end of file