mirror of
https://github.com/The-OpenROAD-Project/OpenLane.git
synced 2026-05-29 00:23:55 +08:00
hotfix: fix venv target, ci docker pushes
Some checks failed
CI / Fetch or Build PDK (sky130A) (push) Has been cancelled
CI / Prepare Test Matrices (push) Has been cancelled
CI / Docker Build (amd64) (push) Has been cancelled
CI / Docker Build (arm64v8) (push) Has been cancelled
Documentation / Check Variables (push) Has been cancelled
CI / Regression Test (Test ${{ matrix.test }}) (push) Has been cancelled
CI / Test Design ${{ matrix.design.name }} (${{ matrix.design.pdk }}/${{matrix.design.scl}}) (push) Has been cancelled
CI / Cleanup (and Possibly Deployment) (push) Has been cancelled
Some checks failed
CI / Fetch or Build PDK (sky130A) (push) Has been cancelled
CI / Prepare Test Matrices (push) Has been cancelled
CI / Docker Build (amd64) (push) Has been cancelled
CI / Docker Build (arm64v8) (push) Has been cancelled
Documentation / Check Variables (push) Has been cancelled
CI / Regression Test (Test ${{ matrix.test }}) (push) Has been cancelled
CI / Test Design ${{ matrix.design.name }} (${{ matrix.design.pdk }}/${{matrix.design.scl}}) (push) Has been cancelled
CI / Cleanup (and Possibly Deployment) (push) Has been cancelled
Signed-off-by: Mohamed Gaber <me@donn.website>
This commit is contained in:
22
.github/workflows/lint.yml
vendored
22
.github/workflows/lint.yml
vendored
@@ -1,22 +0,0 @@
|
||||
name: Lint
|
||||
on:
|
||||
# Runs on all pushes to branches
|
||||
push:
|
||||
# Runs on all PRs
|
||||
pull_request:
|
||||
# Manual Dispatch
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
lint_python:
|
||||
name: Lint Python Code
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out Git repository
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Linters
|
||||
run: python3 -m pip install -r ./requirements_lint.txt
|
||||
- name: Ensure Black Formatting
|
||||
run: black --check .
|
||||
- name: Lint with Flake8
|
||||
run: flake8 .
|
||||
14
.github/workflows/openlane_ci.yml
vendored
14
.github/workflows/openlane_ci.yml
vendored
@@ -291,18 +291,18 @@ jobs:
|
||||
run: |
|
||||
echo "TAG_LIST=" >> $GITHUB_ENV
|
||||
|
||||
- name: Docker Tag (Main Branch Hashes)
|
||||
if: ${{ env.PUSHING == '1' && github.event_name == 'push' && env.BRANCH_NAME == env.MAIN_BRANCH }}
|
||||
run: |
|
||||
echo "TAG_LIST=$TAG_LIST ${{ env.GIT_COMMIT_HASH }}" >> $GITHUB_ENV
|
||||
|
||||
- name: Docker Tag (Branches)
|
||||
if: ${{ env.PUSHING == '1' && github.event_name == 'push' }}
|
||||
run: |
|
||||
echo "TAG_LIST=$TAG_LIST ${{ env.BRANCH_NAME }}" >> $GITHUB_ENV
|
||||
|
||||
- name: Docker Push (Version Tag/Latest)
|
||||
if: ${{ env.PUSHING == '1' && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && env.NEW_TAG != 'NO_NEW_TAG' }}
|
||||
- name: Docker Tag (Main Branch Hashes)
|
||||
if: ${{ env.PUSHING == '1' && github.event_name == 'push' && env.BRANCH_NAME == vars.MAIN_BRANCH }}
|
||||
run: |
|
||||
echo "TAG_LIST=$TAG_LIST ${{ env.GIT_COMMIT_HASH }}" >> $GITHUB_ENV
|
||||
|
||||
- name: Docker Push (Main Branch Tags/Latest)
|
||||
if: ${{ env.PUSHING == '1' && github.event_name == 'push' && env.BRANCH_NAME == vars.MAIN_BRANCH && env.NEW_TAG != '' }}
|
||||
run: |
|
||||
echo "TAG_LIST=$TAG_LIST ${{ env.NEW_TAG }} latest" >> $GITHUB_ENV
|
||||
|
||||
|
||||
@@ -18,10 +18,6 @@ Please do not write new shell scripts, no matter how trivial.
|
||||
### Python
|
||||
Python code should run on Python 3.6+.
|
||||
|
||||
You will need to ensure that your Python code passes linting with the tools and plugins in [`requirements_lint.txt`](https://github.com/The-OpenROAD-Project/OpenLane/tree/master/requirements_lint.txt). The commands are simply `black .` and `flake8 .`. Please fix all warnings.
|
||||
|
||||
For new code, please follow [PEP-8 naming conventions](https://peps.python.org/pep-0008/#naming-conventions). The linters do not enforce them just yet because of the corpus of existing code that does not do that, but they will in the future.
|
||||
|
||||
Do all arithmetic either in integers or using the Python [`decimal`](https://docs.python.org/3.6/library/decimal.html) library. All (numerous) existing uses of IEEE-754 are bugs we are interested in fixing.
|
||||
|
||||
## Yosys, OpenROAD and Magic Scripts
|
||||
@@ -49,4 +45,4 @@ For a PR to be merged, there are two requirements:
|
||||
## Licensing and Copyright
|
||||
Please add you (or your employer's) copyright headers to any files to which you have made major edits.
|
||||
|
||||
Please note all code contributions must have the same license as OpenLane, i.e., the Apache License, version 2.0.
|
||||
Please note all code contributions must have the same license as OpenLane, i.e., the Apache License, version 2.0.
|
||||
|
||||
12
Makefile
12
Makefile
@@ -91,19 +91,19 @@ ENV_COMMAND = $(ENV_START) $(OPENLANE_IMAGE_NAME)-$(DOCKER_ARCH)
|
||||
all: get-openlane pdk
|
||||
|
||||
.PHONY: openlane
|
||||
openlane: venv/created
|
||||
openlane: venv/manifest.txt
|
||||
@PYTHON_BIN=$(PWD)/venv/bin/$(PYTHON_BIN) $(MAKE) -C docker openlane
|
||||
|
||||
.PHONY: openlane-and-push-tools
|
||||
openlane-and-push-tools: venv/created
|
||||
@PYTHON_BIN=$(PWD)/venv/bin/$(PYTHON_BIN) BUILD_IF_CANT_PULL=1 BUILD_IF_CANT_PULL_THEN_PUSH=1 $(MAKE) -C docker openlane
|
||||
|
||||
pull-openlane:
|
||||
@docker pull "$(OPENLANE_IMAGE_NAME)"
|
||||
|
||||
get-openlane:
|
||||
@$(MAKE) pull-openlane || $(MAKE) openlane
|
||||
|
||||
pull-openlane:
|
||||
@docker pull "$(OPENLANE_IMAGE_NAME)"
|
||||
|
||||
.PHONY: mount
|
||||
mount:
|
||||
cd $(OPENLANE_DIR) && \
|
||||
@@ -128,11 +128,11 @@ start-build-env: venv/manifest.txt
|
||||
bash -c "bash --rcfile <(cat ~/.bashrc ./venv/bin/activate)"
|
||||
|
||||
venv: venv/manifest.txt
|
||||
venv/manifest.txt: ./requirements.txt ./requirements_dev.txt ./requirements_lint.txt ./dependencies/python/precompile_time.txt ./dependencies/python/run_time.txt
|
||||
venv/manifest.txt: ./requirements.txt ./dependencies/python/precompile_time.txt ./dependencies/python/run_time.txt
|
||||
rm -rf ./venv
|
||||
$(PYTHON_BIN) -m venv ./venv
|
||||
PYTHONPATH= ./venv/bin/$(PYTHON_BIN) -m pip install --upgrade --no-cache-dir pip
|
||||
PYTHONPATH= ./venv/bin/$(PYTHON_BIN) -m pip install --upgrade --no-cache-dir -r ./requirements_dev.txt
|
||||
PYTHONPATH= ./venv/bin/$(PYTHON_BIN) -m pip install --upgrade --no-cache-dir -r ./requirements.txt
|
||||
PYTHONPATH= ./venv/bin/$(PYTHON_BIN) -m pip freeze > $@
|
||||
|
||||
DLTAG=custom_design_List
|
||||
|
||||
@@ -4,9 +4,10 @@ The versions of OpenLane currently being offered and supported are currently
|
||||
versions 1.0.X, as they were used for countless tape outs for the Google MPW and
|
||||
Efabless chipIgnite shuttles. Only critical bugfixes will be merged at this
|
||||
point. The intent is that tape-outs on older shuttles may be reproduced.
|
||||
**OpenLane is not recommended for new projects or designs.**
|
||||
|
||||
For all newer designs, kindly check out the successor to the OpenLane flow,
|
||||
the LibreLane flow infrastructure (which is backwards-compatible.)
|
||||
For new designs, kindly check out the successor to the OpenLane flow, the
|
||||
LibreLane flow infrastructure (which is backwards-compatible.)
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/librelane/librelane"><img src="./docs/_static/librelane_banner.svg" width="80%" alt="LibreLane: Meet the successor to OpenLane — community-driven and rewritten from scratch with a modular architecture. Configure your designs using one file just like OpenLane, or use Python to implement advanced flows."></a>
|
||||
|
||||
@@ -5,22 +5,4 @@ There are two primary flows: the pull request flow and the deployment flow.
|
||||
|
||||
The deployment flow occurs on each push, with an extended test set nightly. The PR flow happens whenever someone creates a new Pull Request. PRs can be created by contributors or by an automated tool updater that runs on a schedule.
|
||||
|
||||
* A maintainer cannot review their own code, but they can merge it after a review by another maintainer.
|
||||
|
||||
## Required Secrets/Variables
|
||||
Repository secrets are used to protect certain credentials, while variables are repository-dependent parameters for the CI.
|
||||
|
||||
### Common
|
||||
| Variable | Description |
|
||||
|---------------|---------------------------------------------------------------|
|
||||
| `MAIN_BRANCH` | The main branch for OpenLane. Format: `main`|`master`|`etc` |
|
||||
|
||||
| Secret | Description |
|
||||
|---------------|---------------------------------------------------------------|
|
||||
| `BOT_TOKEN` | A GitHub token for a bot account that is able to create new tags on this repository. |
|
||||
|
||||
### CI
|
||||
| Variable | Description |
|
||||
|---------------|
|
||||
| `DOCKER_IMAGE` | The name of the resulting Docker image (minus the tag). In our case, we use `ghcr.io/the-openroad-project/openlane`. |
|
||||
| `TOOL_DOCKER_IMAGE` | The name of the resulting Docker images for tools (minus the tag). In our case, we use `ghcr.io/the-openroad-project/openlane-tools`. |
|
||||
* A maintainer cannot review their own code, but they should merge it after a review by another maintainer.
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
-r ./requirements.txt
|
||||
-r ./requirements_lint.txt
|
||||
@@ -1,3 +0,0 @@
|
||||
black>=25,<26
|
||||
flake8>=7.3.0,<8
|
||||
flake8-no-implicit-concat
|
||||
Reference in New Issue
Block a user