mirror of
https://github.com/The-OpenROAD-Project/OpenLane.git
synced 2026-05-29 00:23:55 +08:00
~ Updated documentation ~ Make it so the commits created by the bot are actually created by the bot and not Jeffrey DiCorpo ~ Fix `picorv32a` design in the extended test set
2.3 KiB
2.3 KiB
Openlane CI/CD
There are two primary flows: the pull request flow and the deployment flow.
The deployment flow occurs on a daily basis. 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
Repository secrets are used to protect certain credentials, but also as repository-dependent parameters for the CI.
Common
| Secret | Description |
|---|---|
MAIN_BRANCH |
The main branch for OpenLane. Format: main |
MY_TOKEN |
A token for a bot account that: 1. owns the fork for the tool update. 2. has write access to the volare repo to push newly-built PDKs to. |
CI
| Secret | Description |
|---|---|
DOCKER_IMAGE |
The name of the resulting Docker image (minus the tag). In our case, we use efabless/openlane. |
TOOL_DOCKER_IMAGE |
The name of the resulting Docker images for tools (minus the tag). In our case, we use efabless/openlane-tools. |
DOCKERHUB_USER |
A username for a user that has push access to the organization that owns DOCKER_IMAGE on Docker Hub. In our case, that's an Efabless Employee with push access. |
DOCKERHUB_PASSWORD |
The password/token for the given username that has push access to the organization that owns DOCKER_IMAGE on Docker Hub. |
VOLARE_OWNER/VOLARE_REPO |
(optional) A volare repo to cache builds in. In our case, VOLARE_OWNER would be efabless and VOLARE_REPO would be volare. |
Tool Updater
| Secret | Description |
|---|---|
FORK_NAME |
A fork to push branches for tool updates to. Format bot-account/OpenLane |
BOT_AUTHOR_LINE |
A git author line for the bot account, i.e. Firstname Lastname <email@example.com>. |
