mirror of
https://codeberg.org/forgejo/docs.git
synced 2024-11-24 18:09:26 -05:00
developer: workflow: explain how to run end-to-end tests
Also fixes a few typos.
This commit is contained in:
parent
10d2156c6e
commit
c127ac6b59
1 changed files with 28 additions and 8 deletions
|
@ -34,9 +34,11 @@ the latest Gitea development branch. It starts like this:
|
|||
- all the commits it contained are `cherry-pick -x` and conflicts resolved
|
||||
- the `forgejo-ci` branch is force pushed after the CI confirms it is sane
|
||||
|
||||
The same is done for the `forgejo-development` branch is based on
|
||||
The same is done for the `forgejo-development` branch which is based on
|
||||
`forgejo-ci` and the commits it contains are similarly `cherry-pick
|
||||
-x`. The same is done for each _Feature branch_ until they all pass
|
||||
-x`.
|
||||
|
||||
And finally the same is done for each _Feature branch_ until they all pass
|
||||
the CI.
|
||||
|
||||
### Development branch
|
||||
|
@ -59,7 +61,7 @@ longer contain the tags from which releases were made. Instead, the following is
|
|||
This ensures the conflict resolution is documented in the relevant
|
||||
_Forgejo_ commit. The conflict must not be resolved in the _Gitea_
|
||||
commit because there would be no convenient way to know why and how it
|
||||
happened when browing the commit history.
|
||||
happened when browsing the commit history.
|
||||
|
||||
To improve the readability of the git history, pull requests to stable
|
||||
branches are rebased on top of the branch instead of being merged. It
|
||||
|
@ -67,18 +69,18 @@ saves one merge commit and creates a linear history.
|
|||
|
||||
## Feature branches
|
||||
|
||||
All _Feature branches_ are based on the {vX.Y/,}forgejo-development branch which provides development tools and documentation.
|
||||
|
||||
The `forgejo-development` branch is based on the {vX.Y/,}forgejo-ci branch which provides the CI configuration.
|
||||
All _Feature branches_ are based on the forgejo-development branch which provides development tools and documentation. The `forgejo-development` branch is based on the forgejo-ci branch which provides the CI configuration.
|
||||
|
||||
The purpose of each _Feature branch_ is documented below:
|
||||
|
||||
### General purpose
|
||||
|
||||
- [forgejo-ci](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-ci) based on [main](https://codeberg.org/forgejo/forgejo/src/branch/main)
|
||||
- [forgejo-ci](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-ci), based on [main](https://codeberg.org/forgejo/forgejo/src/branch/main)
|
||||
|
||||
CI configuration, including the release process.
|
||||
|
||||
- [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development) based on [forgejo-ci](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-ci)
|
||||
|
||||
Forgejo development tools, tests etc. that do not fit in a feature branch or that are used by multiple feature branches. The commits titles should be prefixed with
|
||||
a string that reflects their purpose such as `[DOCS]`, `[DB]`, `[TESTS]` etc.
|
||||
|
||||
|
@ -88,40 +90,48 @@ The purpose of each _Feature branch_ is documented below:
|
|||
### Dependency
|
||||
|
||||
- [forgejo-dependency](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-dependency) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Each commit is prefixed with the name of dependency in uppercase, for instance **[GOTH]** or **[GITEA]**. They are standalone and implement either a bug fix or a feature that is in the process of being contributed to the dependency. It is better to contribute directly to the dependency instead of adding a commit to this branch but it is sometimes not possible, for instance when someone does not have a GitHub account. The author of the commit is responsible for rebasing and resolve conflicts. The ultimate goal of this branch is to be empty and it is expected that a continuous effort is made to reduce its content so that the technical debt it represents does not burden Forgejo long term.
|
||||
|
||||
### [Privacy](https://codeberg.org/forgejo/forgejo/issues?labels=83271)
|
||||
|
||||
- [forgejo-privacy](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-privacy) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Customize Forgejo to have more privacy.
|
||||
|
||||
### Moderation
|
||||
|
||||
- [forgejo-moderation](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-moderation) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Add moderation tooling for users and admins.
|
||||
|
||||
### Branding
|
||||
|
||||
- [forgejo-branding](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-branding) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Replace hardcoded dependencies branding with a Forgejo equivalent.
|
||||
|
||||
### [Internationalization](https://codeberg.org/forgejo/forgejo/issues?labels=82637)
|
||||
|
||||
- [forgejo-i18n](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-i18n) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Internationalization and localization support.
|
||||
|
||||
### [Accessibility](https://codeberg.org/forgejo/forgejo/issues?labels=81214)
|
||||
|
||||
- [forgejo-a11y](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-a11y) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Accessibility improvements.
|
||||
|
||||
### [Federation](https://codeberg.org/forgejo/forgejo/issues?labels=79349)
|
||||
|
||||
- [forgejo-federation](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-federation) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
|
||||
Federation support.
|
||||
|
||||
- [forgejo-f3](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-f3) based on [forgejo-development](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-development)
|
||||
[F3](https://lab.forgefriends.org/friendlyforgeformat/gof3) support.
|
||||
|
||||
[F3](https://f3.forgefriends.org) support.
|
||||
|
||||
## Pull requests and feature branches
|
||||
|
||||
|
@ -135,3 +145,13 @@ Most people who are used to contributing will be familiar with the workflow of s
|
|||
_Feature branches_ can contain a number of commits grouped together, for instance for branding the documentation, the landing page and the footer. It makes it convenient for people working on that topic to get the big picture without browsing multiple branches. Creating a new _Feature branch_ for each individual commit, while possible, is likely to be difficult to work with.
|
||||
|
||||
Observing the granularity of the existing _Feature branches_ is the best way to figure out what works and what does not. It requires adjustments from time to time depending on the number of contributors and the complexity of the Forgejo codebase.
|
||||
|
||||
## End to end testing
|
||||
|
||||
Tests that require launching a Forgejo instance are found in the [end-to-end repository](https://code.forgejo.org/forgejo/end-to-end).
|
||||
|
||||
It is possible to run them on a pull request by setting the `run-end-to-end-tests` label. It will [trigger a workflow](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/.forgejo/workflows/cascade-setup-end-to-end.yml) that:
|
||||
|
||||
- builds a Forgejo binary including the pull request and uploads it as [an artifact](https://forgejo.org/docs/next/user/actions/#artifacts) of the PR
|
||||
- creates a pull request in the [end-to-end repository](https://code.forgejo.org/forgejo/end-to-end) against the [forgejo-pr branch](https://code.forgejo.org/forgejo/end-to-end/src/branch/forgejo-pr)
|
||||
- run [a workflow](https://code.forgejo.org/forgejo/end-to-end/src/branch/forgejo-pr/.forgejo/workflows/pr.yml) using the Forgejo binary found in the PR artifact
|
||||
|
|
Loading…
Reference in a new issue