Skip to content

Commit 78849a8

Browse files
committed
Explain how full automation works.
1 parent 8b50bbe commit 78849a8

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

index.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -161,10 +161,4 @@ Yosys built for WebAssembly is about half the speed of a native build. Nextpnr b
161161

162162
## How are the packages released?
163163

164-
Packages are [automatically](/maintaining) built and uploaded to the repository using [GitHub Actions][actions] after every push to one of the [package repositories][pkgrepos].
165-
166-
Every day, latest upstream changes are automatically pulled in, packaged, and uploaded to [Test PyPI][]. Every week, after manual review, latest upstream changes are packaged, uploaded to [PyPI][], and become available to downstream users.
167-
168-
[actions]: https://github.com/features/actions
169-
[pkgrepos]: https://github.com/YoWASP
170-
[test pypi]: https://test.pypi.org/
164+
Routine YoWASP maintenance is [fully automated](/maintaining#maintenance-automation). Upstream changes and releases are tracked daily without manual intervention.

maintaining.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,14 @@ git push origin develop:release
7070

7171
Branch protection ensures that the history remains linear (which is important for the automatic versioning to work) and that the `release` branch can only point to commits which successfully build and pass tests.
7272

73+
If you push a commit that has "autorelease" in its message, the branch advancement is done automatically.
74+
75+
Everything described above also applies to any branch matching the `develop*` glob, and its corresponding `release*` branch.
76+
7377
### Maintenance automation
7478

79+
Routine YoWASP maintenance is completely automated.
80+
7581
Every day, the `develop` branch is automatically updated with the latest upstream code. The update is pushed directly to the branch, so this can actually break the build.
7682

77-
Every week, a pull request from the `develop` branch to the `release` branch is automatically created if it does not already exist. This allows a last-minute human review of any packages that are pushed to PyPI while ensuring that keeping the PyPI packages up to date is as easy as clicking a single button.
83+
On every upstream release, an autorelease commit is pushed to a new `develop-X.Y.Z` branch, updating according to the newly found upstream tag. Once it is successfully built, the same commit is pushed to a new `release-X.Y.Z` branch. If the build fails, new commits fixing the issues can be pushed to the `develop-X.Y.Z` branch. YoWASP-specific issues can be addressed in a similar way per release branch.

0 commit comments

Comments
 (0)