| name: Tool Updater |
| |
| # To run on the GCP replace all 'ubuntu-latest' with 'self-hosted' |
| on: |
| # Runs every day at midnight UTC |
| schedule: |
| - cron: "0 0 * * *" |
| # Manual Dispatch |
| workflow_dispatch: |
| |
| jobs: |
| create-cid-tools-branches: |
| runs-on: ubuntu-20.04 |
| strategy: |
| matrix: |
| tools: [magic, netgen, yosys, openroad_app] |
| steps: |
| # EXPORT BLOCK |
| - name: Export Repo URL |
| run: echo "REPO_URL=https://github.com/${{ github.repository }}" >> $GITHUB_ENV |
| |
| - name: Export Branch Name |
| run: echo "BRANCH_NAME=${{ secrets.MAIN_BRANCH }}" >> $GITHUB_ENV |
| |
| - name: Export PDK ROOT |
| run: echo "PDK_ROOT=${{ github.workspace }}/pdks" >> $GITHUB_ENV |
| # END EXPORT BLOCK |
| |
| - uses: actions/checkout@v2 |
| with: |
| ref: ${{ secrets.MAIN_BRANCH }} |
| |
| - name: Export TOOL Name |
| run: echo "TOOL=${{ matrix.tools }}" >> $GITHUB_ENV |
| |
| - name: Update TOOL |
| run: cd ${GITHUB_WORKSPACE}/ && python3 ${GITHUB_WORKSPACE}/.github/scripts/update_tools.py ${{ env.TOOL }} |
| |
| - name: Create Pull Request |
| if: ${{ env.NO_UPDATE != '1' }} |
| uses: peter-evans/create-pull-request@v3 |
| with: |
| token: ${{ secrets.MY_TOKEN }} |
| title: "[BOT] Update ${{ env.TOOL }}" |
| body: | |
| This is an automated PR. |
| |
| See the individual commits for details. |
| commit-message: | |
| [BOT] Update ${{ env.TOOL }} |
| |
| ${{ env.TOOL }} -> ${{ env.TOOL_COMMIT_HASH }} |
| branch: ${{ matrix.tools }}-update-branch |
| push-to-fork: ${{ secrets.FORK_NAME }} |
| delete-branch: true |
| create-cid-pdk-branch: |
| runs-on: ubuntu-20.04 |
| steps: |
| # EXPORT BLOCK |
| - name: Export Repo URL |
| run: echo "REPO_URL=https://github.com/${{ github.repository }}" >> $GITHUB_ENV |
| |
| - name: Export Branch Name |
| run: echo "BRANCH_NAME=${{ secrets.MAIN_BRANCH }}" >> $GITHUB_ENV |
| |
| - name: Export PDK ROOT |
| run: echo "PDK_ROOT=${{ github.workspace }}/pdks" >> $GITHUB_ENV |
| # END EXPORT BLOCK |
| |
| - uses: actions/checkout@v2 |
| with: |
| ref: ${{ secrets.MAIN_BRANCH }} |
| |
| - name: Update PDK |
| run: python3 ${GITHUB_WORKSPACE}/.github/scripts/update_tools.py sky130 open_pdks |
| |
| - name: Create Pull Request |
| if: ${{ env.NO_UPDATE != '1' }} |
| uses: peter-evans/create-pull-request@v3 |
| with: |
| token: ${{ secrets.MY_TOKEN }} |
| title: "[BOT] Update PDK" |
| body: | |
| This is an automated PR. |
| |
| See the individual commits for details. |
| commit-message: | |
| [BOT] Update PDK |
| |
| sky130 -> ${{ env.SKY130_COMMIT_HASH }} |
| open_pdks -> ${{ env.OPEN_PDKS_COMMIT_HASH }} |
| base: ${{ env.BRANCH_NAME }} |
| branch: pdk-update-branch |
| push-to-fork: ${{ secrets.FORK_NAME }} |
| delete-branch: true |