Compare commits

...
Sign in to create a new pull request.

22 commits
next ... v10.0

Author SHA1 Message Date
Daschi
99f96a0992 fix: add missing "be"
(cherry picked from commit 7035093b38)
2025-01-17 11:41:41 +00:00
Robert Wolff
eb4fe5fb93 fix release schedule for v10.0
(cherry picked from commit 8f46649aa9)
2025-01-16 13:18:07 +00:00
Robert Wolff
c0efdea1f0 add docs for continue-on-error: true for steps
(cherry picked from commit fe44b624bd)
2025-01-15 05:41:18 +00:00
Robert Wolff
0ab2a8cb8a link to next/contributor from any docs version
(cherry picked from commit 73185bdfd1)
2025-01-14 21:14:12 +00:00
Robert Wolff
b5e9a3a031 Add info about public access controls (close #925) (#1026)
See #925.

Co-authored-by: jinn <jinn@noreply.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/docs/pulls/1026
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Robert Wolff <mahlzahn@posteo.de>
Co-committed-by: Robert Wolff <mahlzahn@posteo.de>
(cherry picked from commit ca9a5347ef)
2025-01-14 11:15:25 +00:00
Robert Wolff
acedbfd224 fix actions conditionals with missing quotes
(cherry picked from commit 900cbfd759)
2025-01-13 14:48:34 +01:00
gratux
0ecb957fca fix version number
(cherry picked from commit 2bdaba96b0)
2025-01-12 06:02:16 +00:00
gratux
b94045ec56 feat: new runner config force_rebuild
(cherry picked from commit 5aaf293e57)
2025-01-11 16:56:50 +00:00
Earl Warren
e4f0c3be93 user: link to the runner installation guide
(cherry picked from commit 20bf504546)
2025-01-11 08:38:24 +00:00
0ko
dbe6b23781 fix(admin/cheat-sheet): actualize service.explore
(cherry picked from commit 23443f94f5)
2025-01-10 08:33:03 +00:00
Robert Wolff
9750043672 specify container.options as string, fix #994
(cherry picked from commit b456b064ce)
2025-01-09 06:58:19 +00:00
Christoph Heiss
6eacf5c18f admin: runner-installation: update container.docker_host description
The behaviour was changed in a non-backwards-compatible manner with
5.0.0 [0], and then further modified with the 5.0.3 release [1].
Mention that fact explicitly as an additional note, so that users know
how to configure it as needed based on their version.

The description in the example config is taken from upstream [2].

[0] https://code.forgejo.org/forgejo/runner/src/branch/main/RELEASE-NOTES.md#5-0-0
[1] https://code.forgejo.org/forgejo/runner/src/branch/main/RELEASE-NOTES.md#5-0-3
[2] https://code.forgejo.org/forgejo/runner/src/branch/main/internal/pkg/config/config.example.yaml

Signed-off-by: Christoph Heiss <christoph@c8h4.io>
(cherry picked from commit a23914b548)
2025-01-05 13:37:47 +00:00
Christoph Heiss
a0697d3c3d tree-wide: fix typos
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
(cherry picked from commit 46420f31e0)
2025-01-05 11:40:45 +00:00
Christoph Heiss
d50f1ea0c4 admin: runner-installation: update NixOS instructions (#998)
Preview: https://forgejo.codeberg.page/@docs_pull_998/docs/next/admin/runner-installation/#nixos

Fixes #903.

As described in that issue, the Nix package has been renamed upstream, as well as that the mentioned service module does not exist in reality.
I reworked that section to bring everything up-to-date. The mentioned labels pre-population does not apply to Forgejo, at least.  I have also added a small example as reference.

Further, I included a small change to `scripts/preview.sh`, to detect the actual URL open command - on Linux, `xdg-open` is normally the canonical one.

Reviewed-on: https://codeberg.org/forgejo/docs/pulls/998
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Christoph Heiss <christoph@c8h4.io>
Co-committed-by: Christoph Heiss <christoph@c8h4.io>
(cherry picked from commit 2bb951215c)
2025-01-05 09:51:39 +00:00
cascading-pr
eb1fb6b7a4 cascading-pr update 2025-01-01 08:55:21 +00:00
George Bartolomey
a20dc81a62
Add DEFAULT_UPDATE_STYLE
Signed-off-by: George Bartolomey <george@bh4.ru>
(cherry picked from commit 26583527ed)
2024-12-30 15:36:41 +00:00
Shiny Nematoda
a77312d2f9 user/code-search: update directory search
(cherry picked from commit f93ebc57e7)
2024-12-30 15:34:50 +00:00
Earl Warren
ceb7297bae user: search: fix typos
(cherry picked from commit 2f15734bac)
2024-12-30 12:17:57 +00:00
Earl Warren
a242536c0f user: actions: options are limited to --volume and --tmpfs
(cherry picked from commit d50ee6513e)
2024-12-28 08:01:50 +00:00
0ko
68204abc99 fix(runner-installation): update location of example compose file
(cherry picked from commit 3ff80d4b69)
2024-12-27 06:38:26 +00:00
Earl Warren
bb343dcd14 admin: upgrading from Gitea < 1.23 is a two step process
(cherry picked from commit 4700c033bf)
2024-12-25 17:32:08 +00:00
Earl Warren
aabe80ece3
update the title of the v10.0 documentation 2024-12-25 11:39:53 +01:00
30 changed files with 496 additions and 395 deletions

View file

@ -98,7 +98,7 @@ A label has the following structure:
<label-name>:<label-type>://<default-image>
```
The `label name` is a unique string that identifies the label. It is the part that is specified in the `runs-on` field of workflows to choose which runners the workflow can be excecuted on.
The `label name` is a unique string that identifies the label. It is the part that is specified in the `runs-on` field of workflows to choose which runners the workflow can be executed on.
The `label type` determines what containerization system will be used to run the workflow. There are three options:
@ -153,7 +153,7 @@ Label example:
### Special labels
Runner labels can also be used to define other special features a runner has. For example, you could use `gpu:docker://node:20-bullseye` to define a runner that has a GPU installed. Workflows which need a GPU could then specify `runs-on: gpu` to be excecuted on this runner.
Runner labels can also be used to define other special features a runner has. For example, you could use `gpu:docker://node:20-bullseye` to define a runner that has a GPU installed. Workflows which need a GPU could then specify `runs-on: gpu` to be executed on this runner.
### Mimicking GitHub runners

View file

@ -123,6 +123,7 @@ In addition, there is _`StaticRootPath`_ which can be set as a built-in at build
- `DEFAULT_MERGE_MESSAGE_ALL_AUTHORS`: **false**: In the default merge message for squash commits walk all commits to include all authors in the Co-authored-by otherwise just use those in the limited list
- `DEFAULT_MERGE_MESSAGE_MAX_APPROVERS`: **10**: In default merge messages limit the number of approvers listed as `Reviewed-by:`. Set to `-1` to include all.
- `DEFAULT_MERGE_MESSAGE_OFFICIAL_APPROVERS_ONLY`: **true**: In default merge messages only include approvers who are officially allowed to review.
- `DEFAULT_UPDATE_STYLE`: **merge**: Set default PR branch update style for repository creating, valid options: `merge`, `rebase`
- `POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES`: **false**: In default squash-merge messages include the commit message of all commits comprising the pull request.
- `ADD_CO_COMMITTER_TRAILERS`: **true**: Add co-authored-by and co-committed-by trailers to merge commit messages if committer does not match author.
- `TEST_CONFLICTING_PATCHES_WITH_GIT_APPLY`: **false**: PR patches are tested using a three-way merge method to discover if there are conflicts. If this setting is set to **true**, conflicting patches will be retested using `git apply` - This was the previous behaviour in 1.18 (and earlier) but is somewhat inefficient. Please report if you find that this setting is required.
@ -587,7 +588,7 @@ And the following unique queues:
- `ENABLED`: **false**: Enable media proxy, we support images only at the moment.
- `SERVER_URL`: **\<empty\>**: URL of camo server, it **is required** if camo is enabled.
- `HMAC_KEY`: **\<empty\>**: Provide the HMAC key for encoding URLs, it **is required** if camo is enabled.
- `ALLWAYS`: **false**: Set to true to use camo for both HTTP and HTTPS content, otherwise only non-HTTPS URLs are proxied
- `ALWAYS`: **false**: Set to true to use camo for both HTTP and HTTPS content, otherwise only non-HTTPS URLs are proxied
## OpenID (`openid`)
@ -692,8 +693,10 @@ And the following unique queues:
### Service - Explore (`service.explore`)
- `REQUIRE_SIGNIN_VIEW`: **false**: Only allow signed in users to view the explore pages.
- `DISABLE_USERS_PAGE`: **false**: Disable the users explore page.
- `REQUIRE_SIGNIN_VIEW`: **false**: Only allow signed in users to view the explore section.
- `DISABLE_USERS_PAGE`: **false**: Disable user listing in the explore section.
- `DISABLE_ORGANIZATIONS_PAGE`: **false**: Disable organization listing in the explore section.
- `DISABLE_CODE_PAGE`: **false**: Disable the code search page in the explore section.
## SSH Minimum Key Sizes (`ssh.minimum_key_sizes`)
@ -886,7 +889,7 @@ The defaults of the console change if Forgejo detects that stdout and/or stderr
- For the console logger `COLORIZE` will default to `true` if not on windows or the terminal is determined to be able to color.
- `STDERR`: **false** (journald: **true**): Use Stderr instead of Stdout.
- `FLAGS`: **stdflags** (journald: **journaldflags**): Instead of colour or text annotations, machine-readable prefixes are used that can be parsed by sytemd-journald.
- `FLAGS`: **stdflags** (journald: **journaldflags**): Instead of colour or text annotations, machine-readable prefixes are used that can be parsed by systemd-journald.
### File log mode (`log.file`, or `MODE=file`)

View file

@ -4,7 +4,7 @@ license: 'Apache-2.0'
origin_url: 'https://github.com/go-gitea/gitea/blob/e865de1e9d65dc09797d165a51c8e705d2a86030/docs/content/installation/database-preparation.en-us.md'
---
You need a database to use Forgejo. The easiest option is SQLite which managed files next to Forgejo and does not require setting up a database server. However, if you plan to use Forgejo with several hundreds of users, or if you already run a databse server, you might want to choose another option.
You need a database to use Forgejo. The easiest option is SQLite which managed files next to Forgejo and does not require setting up a database server. However, if you plan to use Forgejo with several hundreds of users, or if you already run a database server, you might want to choose another option.
Forgejo supports:

View file

@ -5,6 +5,11 @@ license: 'CC-BY-SA-4.0'
This guide describes how to go from Gitea to Forgejo if Gitea is installed via a package manager.
Upgrades are supported [up to Gitea v1.22 included](https://forgejo.org/2024-12-gitea-compatibility/), in two steps:
- Upgrade from any Gitea version up to and including v1.22.x to Forgejo v10.0.x
- Upgrade from Forgejo v10.0.x to any Forgejo version greater than v10.
## Arch Linux
Arch Linux provides package for both Gitea and Forgejo,

View file

@ -11,8 +11,8 @@ Forgejo stable releases are published on a fixed schedule, every quarter. The mo
| ----------- | ----------------- | ---------------- | ---------------- |
| 7.0 (LTS) | 1 April 2024 | 23 April 2024 | **16 July 2025** |
| 8.0 | 1 July 2024 | 30 July 2024 | 16 October 2024 |
| 9.0 | 25 September 2024 | 16 October 2024 | 15 January 2025 |
| 10.0 | 25 December 2024 | 15 January 2025 | 16 April 2025 |
| 9.0 | 25 September 2024 | 16 October 2024 | 16 January 2025 |
| 10.0 | 25 December 2024 | 16 January 2025 | 16 April 2025 |
| 11.0 (LTS) | 26 March 2025 | 16 April 2025 | **15 July 2026** |
| 12.0 | 25 June 2025 | 16 July 2025 | 15 October 2025 |
| 13.0 | 24 September 2025 | 15 October 2025 | 14 January 2026 |

View file

@ -204,8 +204,8 @@ container:
enable_ipv6: false
# Whether to use privileged mode or not when launching task containers (privileged mode is required for Docker-in-Docker).
privileged: false
# And other options to be used when the container is started (eg, --add-host=my.forgejo.url:host-gateway).
options:
# Additional options to be used when the container is started (e.g., --add-host=my.forgejo.url:host-gateway).
options: ""
# The parent directory of a job's working directory.
# If it's empty, /workspace will be used.
workdir_parent:
@ -220,12 +220,14 @@ container:
# - '**'
valid_volumes: []
# overrides the docker client host with the specified one.
# If "-", an available docker host will automatically be found.
# If empty, an available docker host will automatically be found and mounted in the job container (e.g. /var/run/docker.sock).
# If "-" or "", an available docker host will automatically be found.
# If "automount", an available docker host will automatically be found and mounted in the job container (e.g. /var/run/docker.sock).
# Otherwise the specified docker host will be used and an error will be returned if it doesn't work.
docker_host: "-"
# Pull docker image(s) even if already present
force_pull: false
# Rebuild local docker image(s) even if already present
force_rebuild: false
host:
# The parent directory of a job's working directory.
@ -233,6 +235,12 @@ host:
workdir_parent:
```
Note: `container.docker_host = "automount"` is only available for
forgejo-runner >= 5.0.3. For forgejo-runner < 5.0.3, it must be explicitly
set to an empty string. \
Note: `container.force_rebuild` is only available for
forgejo-runner >= 6.1.0. For forgejo-runner < 6.1.0, it defaults to `false`
#### Cache configuration
Some actions such as https://data.forgejo.org/actions/cache or
@ -354,7 +362,7 @@ command: '/bin/sh -c "sleep 5; forgejo-runner daemon"'
Here, the sleep allows the `docker-in-docker` service to start up before the `forgejo-runner daemon` is started.
More [docker compose](https://docs.docker.com/compose/) examples [are provided](https://codeberg.org/forgejo/runner/src/branch/main/examples/docker-compose) to demonstrate how to install the OCI image to successfully run a workflow.
More [docker compose](https://docs.docker.com/compose/) examples [are provided](https://code.forgejo.org/forgejo/runner/src/branch/main/examples/docker-compose) to demonstrate how to install the OCI image to successfully run a workflow.
## Standard registration
@ -369,7 +377,7 @@ A special kind of token is needed and can be obtained from the `Create new runne
![Screenshot showing runner registration popup](../_images/user/actions/runners-add.png)
To register the runner, excecute `forgejo-runner register` and fill in the prompts. For example:
To register the runner, execute `forgejo-runner register` and fill in the prompts. For example:
```shell
$ forgejo-runner register
@ -517,9 +525,30 @@ Now, `Forgejo runner` will create networks with IPv6 enabled, and workflow conta
### NixOS
The [`forgejo-actions-runner`](https://github.com/NixOS/nixpkgs/blob/ac6977498b1246f21af08f3cf25ea7b602d94b99/pkgs/development/tools/continuous-integration/forgejo-actions-runner/default.nix) recipe is released in NixOS.
A [`forgejo-runner`](https://search.nixos.org/packages?channel=unstable&show=forgejo-runner&type=packages&query=forgejo-runner) package is available for Nix.
As NixOS service module [`services.gitea-actions-runner.*`](https://search.nixos.org/options?channel=unstable&type=options&query=services.gitea-actions-runner) can be used.
Please note that the `services.forgejo-actions-runner.instances.<name>.labels` key may be set to `[]` (an empty list) to use the packaged Forgejo instance list. One of `virtualisation.docker.enable` or `virtualisation.podman.enable` will need to be set. The default Forgejo image list is populated with docker images.
If application containers are to be used (Docker or Podman), one of `virtualisation.docker.enable` or `virtualisation.podman.enable` must also be set to `true`.
An example service definition might look like this:
```nix
services.gitea-actions-runner = {
package = pkgs.forgejo-runner;
instances.my-forgejo-instance = {
enable = true;
name = "my-forgejo-runner-01";
token = "<registration-token>";
url = "https://code.forgejo.org/";
labels = [
"node-22:docker://node:22-bookworm"
"nixos-latest:docker://nixos/nix"
];
settings = { ... };
};
```
The runner configuration can be specified in `services.gitea-actions-runner.instances.<instance>.settings` as per [Configuration](#configuration).
IPv6 support is not enabled by default for docker. The following snippet enables this.

View file

@ -249,10 +249,6 @@ for instance (the plural is not a typo, it is a unification problem) -
because their behavior is not thoroughly tested and may lead to
unexpected results.
There are no safeguards preventing the use of undocumented features
because it may not be backward compatible when upgrading from Gitea to
Forgejo.
## Legacy settings
Some settings are deprecated but still supported in the interest of

View file

@ -44,13 +44,20 @@ It is **critical** to verify that Forgejo works very carefully. Restoring the ba
- Manually verify via the web interface. Making a checklist of a typical use case is a good way to not miss anything.
- If there is a problem of any kind, increase the log level and take a look at the logs. If you cannot figure out what the problem is, ask for help [in the Forgejo chatroom](https://matrix.to/#/#forgejo-chat:matrix.org) before trying to fix it.
## Preparing an upgrade from Gitea
Upgrades to Forgejo are transparently supported [up to Gitea v1.22 included](https://forgejo.org/2024-12-gitea-compatibility/), in two steps:
- Upgrade from any Gitea version up to and including v1.22.x to Forgejo v10.0.x
- Upgrade from Forgejo v10.0.x to any Forgejo version greater than v10.
## Preparing the Forgejo upgrade
- Manually analyze (reading the patches to the sources of the template directory) and update the customized CSS / content.
- Do not use `forgejo help` to figure out the location of `CustomPath`, look at the configuration tab of the `Site administration` panel when logged in as an admin.
- `forgejo manager flush-queues`. If it times out, run it again with a more generous `--timeout` argument. It is important because the queues contain serialized data that is not guaranteed to be backward compatible between versions.
Note: Forgejo installations using Docker requires [docker >= 20.10.6](https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.14.0) otherwise mysterious problems will happen (mysterious in the sense that the problem will about something unrelated to the Docker version").
Note: Forgejo installations using Docker requires [docker >= 20.10.6](https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.14.0) otherwise mysterious problems will happen (mysterious in the sense that the problem will be about something unrelated to the Docker version").
## Performing the upgrade

View file

@ -86,7 +86,7 @@ This way of expressing stars will have the following features:
3. With NodeInfo given it would be more easy to distinguish the uri layout for object and actor id's and make implementation more straight forward
1. The NodeInfo field reflects the software & version sending an activity. Values of may be gitea, forgejo, gitlab, ...
2. Knowing the sending system will it make easier to interact with:
1. We know exactly how the actor can be derefernced - names maybe filled & used different (see: https://codeberg.org/meissa/forgejo/src/commit/7cac9806f8247963b1cdce3f2c5f5d1bc3763fbe/routers/api/v1/activitypub/repository.go#L180)
1. We know exactly how the actor can be dereferenced - names maybe filled & used different (see: https://codeberg.org/meissa/forgejo/src/commit/7cac9806f8247963b1cdce3f2c5f5d1bc3763fbe/routers/api/v1/activitypub/repository.go#L180)
2. We know how we can validate the given references - valid uris will be different in details (see: https://codeberg.org/meissa/forgejo/src/commit/7cac9806f8247963b1cdce3f2c5f5d1bc3763fbe/models/forgefed/actor.go#L121)
4. startTime protects against The Reply Attack discussed in [threat-analysis][threat-analysis]

View file

@ -89,7 +89,7 @@ Or for eglot:
(add-hook 'go-mode-hook #'eglot-format-buffer-before-save)
```
As additional quality of life inprovements, you might consider installing [company](https://company-mode.github.io/), [flycheck](https://www.flycheck.org/en/latest/) and/or [magit](https://magit.vc/). Consider the package website for a complete explanation and installation instructions.
As additional quality of life improvements, you might consider installing [company](https://company-mode.github.io/), [flycheck](https://www.flycheck.org/en/latest/) and/or [magit](https://magit.vc/). Consider the package website for a complete explanation and installation instructions.
<details>
<summary> Here is an init example if you just want to use all three packages </summary>
@ -176,7 +176,7 @@ vim.g.mapleader = " "
vim.g.maplocalleader = " "
local on_attach = function(client, bufno)
-- depricated since neovim 0.10
-- deprecated since neovim 0.10
-- vim.api.nvim_buf_set_option(bufno, "omnifunc", "v:lua.vim.lsp.omnifunc")
vim.api.nvim_set_option_value("omnifunc", "v:lua.vim.lsp.omnifunc", { buf = bufno })

View file

@ -29,6 +29,6 @@ In order to normalize URIs we care:
3. No parameters: `https://federated-repo.prod.meissa.de/api/v1/activitypub/user-id/1?some-parameters=1`
4. No Webfinger: `https://user1@federated-repo.prod.meissa.de` (with following redirects)
5. No default api: `https://federated-repo.prod.meissa.de/api/activitypub/user-id/1`
6. No autorization: `https://user:password@federated-repo.prod.meissa.de/api/v1/activitypub/user-id/1`
6. No authorization: `https://user:password@federated-repo.prod.meissa.de/api/v1/activitypub/user-id/1`
7. No default ports: `https://federated-repo.prod.meissa.de:443/api/v1/activitypub/user-id/1`
8. Accept non default ports: `http://localhost:3000/api/v1/activitypub/user-id/1`

View file

@ -185,7 +185,8 @@ using `USE_GOTESTSUM=yes` while running tests, for example:
USE_GOTESTSUM=yes make test
```
`gotestsum` behaves like the default `go test` except it reformats the test results
so that they are clearer for human interpreation and include a helpful summary.
`gotestsum` behaves like the default `go test` except it reformats the test
results so that they are clearer for human interpretation and include a helpful
summary.
You need to have `gotestsum` installed (see the link above) to use it as it does not come built-in unlike `go test`.

View file

@ -66,14 +66,14 @@ license: 'CC-BY-SA-4.0'
1. **Knock foreign http server**: Script Kiddi sends a Like Activity containing an attack actor url `http://attacked.target/very/special/path` in place of actor. Our repository server sends a `get Person Actor` request to this url. The target receives a DenialdOfService attack. We loose CPU & instance reputation.
2. **Sql injection**: Experienced hacker sends a Like Activity containing an actor url pointing to an evil forgejo instance. Our repository server sends an `get Person Actor` request to this instance and gets a person having sth. like `; drop database;` in its name. If our server tries to create a new user out of this person, the db might be dropped.
3. **Malicious Activities**: Malicious Fediverse Member sends Star Activities containing non authorized Person Actors. The Actors listed as stargazer might get angry about this. The project may loose project reputation.
4. **DOS by Rate**: Experienced Hacker records activities sent and replays some of them. Without order of activities (i.e. timestamp) we can not decide wether we should execute the activity again. If the replayed activities are UnLike Activity we might loose stars.
4. **DOS by Rate**: Experienced Hacker records activities sent and replays some of them. Without order of activities (i.e. timestamp) we can not decide whether we should execute the activity again. If the replayed activities are UnLike Activity we might loose stars.
5. **Replay**: Experienced Hacker records activities sends a massive amount of activities which leads to new user creation & storage loss. Our instance might fall out of service. See also [replay attack@wikipedia][2].
6. **Replay out of Order**: Experienced Hacker records activities sends again Unlike Activities happened but was succeeded by an Like. Our instance accept the Unlike and removes a star. Our repository gets rated unintended bad.
7. **DOS by Slowlories**: Experienced Hacker may craft their malicious server to keep connections open. Then they send a Like Activity with the actor URL pointing to that malicious server, and your background job keeps waiting for data. Then they send more such requests, until you exhaust your limit of file descriptors openable for your system and cause a DoS (by causing cascading failures all over the system, given file descriptors are used for about everything, from files, to sockets, to pipes). See also [Slowloris@wikipedia][1].
8. **Saturate by future StartTime**: Hacker sends an Activity having `startTime` in far future. Our Instance does no longer accept Activities till they have far far future `startTime` from the actors instance.
9. **Malicious Forge**: If a "Malicious Fediverse Member" deploys an 'federated' forge that sends the right amount of Like activities to not hit the rate limiter, an malicious user can modify the code of any 'federated' forge to ensure that if an foreign server tries to verify and activity, it will always succeed (such as creating users on demand, or simply mocking the data).
10. **Malicious Controlled Forge**: A "Malicious Forge Admin" of a good reputation instance may impersonate users on his instance and trigger federated activities.
11. **Side Chanel Malicious Activities**: A Owner of a good reputation instance may craft malicious activities with the hope not to get moderated.
11. **Side Channel Malicious Activities**: A Owner of a good reputation instance may craft malicious activities with the hope not to get moderated.
### Mitigations
@ -84,7 +84,7 @@ license: 'CC-BY-SA-4.0'
5. We introduce (or have) rate limiting per IP.
6. We ensure, that outgoing HTTP requests have a reasonable timeout (if you didn't get that 500b JSON response after 10 seconds, you probably won't get it).
7. **Instance Level Moderation** (such as blocking other federated forges) can mitigate "Malicious Forge"
8. **User Level Moderation** (such as blocking other federated users) can mitigate "Side Chanel Malicious Activities"
8. **User Level Moderation** (such as blocking other federated users) can mitigate "Side Channel Malicious Activities"
### DREAD-Score

View file

@ -1,5 +1,5 @@
---
title: 'Forgejo prerelease documentation'
title: 'Forgejo v10.0 documentation'
---
- [What is Forgejo?](/)
@ -7,5 +7,5 @@ title: 'Forgejo prerelease documentation'
- [FAQ](/faq/)
- [Administrator guide](./admin/)
- [User guide](./user/)
- [Contributor guide](./contributor/)
- [Contributor guide](../next/contributor/)
- [License](./license/)

View file

@ -4,18 +4,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "24",
"run_id": "28",
"run_number": "1",
"actor": "forgejo-actions",
"repository": "root/example-post-7-0-schedule",
"event_name": "schedule",
"sha": "c44310f15966a7f6dc8bb0540e78b26042176814",
"sha": "cb3122db26a190fa7c0b5618ab52ab073b55b195",
"ref": "main",
"ref_name": "main",
"ref_type": "",
"head_ref": "",
"base_ref": "",
"token": "30309bfb5a8a3cbb80bed4573ce454238cb7147d",
"token": "a07d73b78bf6d502b994920b310a68f0b95def05",
"workspace": "/workspace/root/example-post-7-0-schedule",
"action": "0",
"action_path": "",
@ -27,7 +27,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -21,12 +21,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -40,8 +41,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -50,7 +51,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -62,14 +63,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -96,26 +97,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 28,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:46Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:03Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"repo_id": 16,
"sha": "483a4bfe864b8663933825d8904de97eab8baa72"
"repo_id": 20,
"sha": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6"
},
"body": "",
"changed_files": 2,
"closed_at": null,
"comments": 0,
"created_at": "2024-11-10T12:13:47Z",
"created_at": "2025-01-01T08:51:04Z",
"deletions": 0,
"diff_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1.diff",
"diff_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1.diff",
"draft": false,
"due_date": null,
"head": {
@ -131,12 +132,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/fork-org/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/fork-org/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": true,
@ -150,12 +152,12 @@
"has_pull_requests": true,
"has_releases": false,
"has_wiki": false,
"html_url": "http://10.194.201.194:3000/fork-org/example-pull-request",
"id": 17,
"html_url": "http://10.194.201.195:3000/fork-org/example-pull-request",
"id": 21,
"ignore_whitespace_conflicts": false,
"internal": false,
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/fork-org/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/fork-org/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -167,14 +169,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/1bc28d03d2a646081c5f3f2f94128925",
"created": "2024-11-10T12:13:46Z",
"avatar_url": "http://10.194.201.195:3000/avatars/1bc28d03d2a646081c5f3f2f94128925",
"created": "2025-01-01T08:51:03Z",
"description": "",
"email": "",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/fork-org",
"html_url": "http://10.194.201.195:3000/fork-org",
"id": 2,
"is_admin": false,
"language": "",
@ -201,12 +203,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -220,8 +223,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -230,7 +233,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -242,14 +245,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -276,12 +279,12 @@
"release_counter": 0,
"repo_transfer": null,
"size": 28,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:46Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:03Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
@ -295,23 +298,23 @@
"release_counter": 0,
"repo_transfer": null,
"size": 29,
"ssh_url": "forgejo@10.194.201.194:fork-org/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:fork-org/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:47Z",
"url": "http://10.194.201.194:3000/api/v1/repos/fork-org/example-pull-request",
"updated_at": "2025-01-01T08:51:04Z",
"url": "http://10.194.201.195:3000/api/v1/repos/fork-org/example-pull-request",
"watchers_count": 1,
"website": ""
},
"repo_id": 17,
"sha": "28ab2380358967e850ef0f16a2bd16741452a58e"
"repo_id": 21,
"sha": "e6bfb3382bfb54dea2e11e662edb14f854baaa4a"
},
"html_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1",
"html_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1",
"id": 1,
"is_locked": false,
"labels": [],
"merge_base": "483a4bfe864b8663933825d8904de97eab8baa72",
"merge_base": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6",
"merge_commit_sha": null,
"mergeable": true,
"merged": false,
@ -319,25 +322,25 @@
"merged_by": null,
"milestone": null,
"number": 1,
"patch_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1.patch",
"patch_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1.patch",
"pin_order": 0,
"requested_reviewers": null,
"requested_reviewers_teams": null,
"review_comments": 0,
"state": "open",
"title": "PR from fork",
"updated_at": "2024-11-10T12:13:47Z",
"url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1",
"updated_at": "2025-01-01T08:51:04Z",
"url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1",
"user": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -365,12 +368,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -384,8 +388,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -394,7 +398,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -406,14 +410,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -440,12 +444,12 @@
"release_counter": 0,
"repo_transfer": null,
"size": 28,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:46Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:03Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
@ -454,14 +458,14 @@
"review": null,
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -481,18 +485,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "17",
"run_id": "21",
"run_number": "1",
"actor": "root",
"repository": "root/example-pull-request",
"event_name": "pull_request",
"sha": "28ab2380358967e850ef0f16a2bd16741452a58e",
"sha": "e6bfb3382bfb54dea2e11e662edb14f854baaa4a",
"ref": "refs/pull/1/head",
"ref_name": "1",
"ref_type": "",
"head_ref": "main",
"base_ref": "main",
"token": "ba0ab7517ce99ae08a4beff34d6cfd9cdafe2c90",
"token": "488007dce3e54280cf7423a7f14952a8da34cef2",
"workspace": "/workspace/root/example-pull-request",
"action": "6",
"action_path": "",
@ -504,7 +508,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -21,12 +21,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -40,8 +41,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -50,7 +51,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -62,14 +63,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -96,26 +97,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 28,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:46Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:03Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"repo_id": 16,
"sha": "483a4bfe864b8663933825d8904de97eab8baa72"
"repo_id": 20,
"sha": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6"
},
"body": "",
"changed_files": 2,
"closed_at": null,
"comments": 0,
"created_at": "2024-11-10T12:13:47Z",
"created_at": "2025-01-01T08:51:04Z",
"deletions": 0,
"diff_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1.diff",
"diff_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1.diff",
"draft": false,
"due_date": null,
"head": {
@ -131,12 +132,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/fork-org/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/fork-org/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": true,
@ -150,12 +152,12 @@
"has_pull_requests": true,
"has_releases": false,
"has_wiki": false,
"html_url": "http://10.194.201.194:3000/fork-org/example-pull-request",
"id": 17,
"html_url": "http://10.194.201.195:3000/fork-org/example-pull-request",
"id": 21,
"ignore_whitespace_conflicts": false,
"internal": false,
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/fork-org/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/fork-org/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -167,14 +169,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/1bc28d03d2a646081c5f3f2f94128925",
"created": "2024-11-10T12:13:46Z",
"avatar_url": "http://10.194.201.195:3000/avatars/1bc28d03d2a646081c5f3f2f94128925",
"created": "2025-01-01T08:51:03Z",
"description": "",
"email": "",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/fork-org",
"html_url": "http://10.194.201.195:3000/fork-org",
"id": 2,
"is_admin": false,
"language": "",
@ -201,12 +203,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -220,8 +223,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -230,7 +233,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -242,14 +245,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -276,12 +279,12 @@
"release_counter": 0,
"repo_transfer": null,
"size": 28,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:46Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:03Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
@ -295,23 +298,23 @@
"release_counter": 0,
"repo_transfer": null,
"size": 29,
"ssh_url": "forgejo@10.194.201.194:fork-org/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:fork-org/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:47Z",
"url": "http://10.194.201.194:3000/api/v1/repos/fork-org/example-pull-request",
"updated_at": "2025-01-01T08:51:04Z",
"url": "http://10.194.201.195:3000/api/v1/repos/fork-org/example-pull-request",
"watchers_count": 1,
"website": ""
},
"repo_id": 17,
"sha": "28ab2380358967e850ef0f16a2bd16741452a58e"
"repo_id": 21,
"sha": "e6bfb3382bfb54dea2e11e662edb14f854baaa4a"
},
"html_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1",
"html_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1",
"id": 1,
"is_locked": false,
"labels": [],
"merge_base": "483a4bfe864b8663933825d8904de97eab8baa72",
"merge_base": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6",
"merge_commit_sha": null,
"mergeable": true,
"merged": false,
@ -319,25 +322,25 @@
"merged_by": null,
"milestone": null,
"number": 1,
"patch_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1.patch",
"patch_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1.patch",
"pin_order": 0,
"requested_reviewers": null,
"requested_reviewers_teams": null,
"review_comments": 0,
"state": "open",
"title": "PR from fork",
"updated_at": "2024-11-10T12:13:47Z",
"url": "http://10.194.201.194:3000/root/example-pull-request/pulls/1",
"updated_at": "2025-01-01T08:51:04Z",
"url": "http://10.194.201.195:3000/root/example-pull-request/pulls/1",
"user": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -365,12 +368,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -384,8 +388,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -394,7 +398,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -406,14 +410,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -440,12 +444,12 @@
"release_counter": 0,
"repo_transfer": null,
"size": 28,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:46Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:03Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
@ -454,14 +458,14 @@
"review": null,
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -481,18 +485,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "18",
"run_id": "22",
"run_number": "2",
"actor": "root",
"repository": "root/example-pull-request",
"event_name": "pull_request_target",
"sha": "483a4bfe864b8663933825d8904de97eab8baa72",
"sha": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6",
"ref": "refs/heads/main",
"ref_name": "main",
"ref_type": "branch",
"head_ref": "main",
"base_ref": "main",
"token": "20721d143b1453d68264bf621096cc1ecdf7e094",
"token": "098c652476ced053c01e3c1fa43ca9838230118c",
"workspace": "/workspace/root/example-pull-request",
"action": "6",
"action_path": "",
@ -504,7 +508,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -21,12 +21,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -40,8 +41,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -50,7 +51,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -62,14 +63,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -96,26 +97,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 30,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"repo_id": 16,
"sha": "483a4bfe864b8663933825d8904de97eab8baa72"
"repo_id": 20,
"sha": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6"
},
"body": "",
"changed_files": 2,
"closed_at": null,
"comments": 0,
"created_at": "2024-11-10T12:13:48Z",
"created_at": "2025-01-01T08:51:05Z",
"deletions": 0,
"diff_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2.diff",
"diff_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2.diff",
"draft": false,
"due_date": null,
"head": {
@ -131,12 +132,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -150,8 +152,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -160,7 +162,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -172,14 +174,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -206,24 +208,24 @@
"release_counter": 0,
"repo_transfer": null,
"size": 30,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"repo_id": 16,
"sha": "204d377a8f707de901d69549b38b8e20b95ed5ea"
"repo_id": 20,
"sha": "a68927e242897e29864e190a68b3cfec682905b7"
},
"html_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2",
"html_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2",
"id": 2,
"is_locked": false,
"labels": [],
"merge_base": "483a4bfe864b8663933825d8904de97eab8baa72",
"merge_base": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6",
"merge_commit_sha": null,
"mergeable": true,
"merged": false,
@ -231,25 +233,25 @@
"merged_by": null,
"milestone": null,
"number": 2,
"patch_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2.patch",
"patch_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2.patch",
"pin_order": 0,
"requested_reviewers": null,
"requested_reviewers_teams": null,
"review_comments": 0,
"state": "open",
"title": "PR same repo",
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2",
"user": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -277,12 +279,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -296,8 +299,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -306,7 +309,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -318,14 +321,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -352,12 +355,12 @@
"release_counter": 0,
"repo_transfer": null,
"size": 30,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
@ -366,14 +369,14 @@
"review": null,
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -393,18 +396,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "19",
"run_id": "23",
"run_number": "3",
"actor": "root",
"repository": "root/example-pull-request",
"event_name": "pull_request",
"sha": "204d377a8f707de901d69549b38b8e20b95ed5ea",
"sha": "a68927e242897e29864e190a68b3cfec682905b7",
"ref": "refs/pull/2/head",
"ref_name": "2",
"ref_type": "",
"head_ref": "other",
"base_ref": "main",
"token": "9ec230e11678c080b7320e95afd0b89803a48d81",
"token": "40d61d8650801e10acb1a05458bec6ec302c0ea8",
"workspace": "/workspace/root/example-pull-request",
"action": "6",
"action_path": "",
@ -416,7 +419,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -21,12 +21,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -40,8 +41,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -50,7 +51,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -62,14 +63,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -96,26 +97,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 30,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"repo_id": 16,
"sha": "483a4bfe864b8663933825d8904de97eab8baa72"
"repo_id": 20,
"sha": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6"
},
"body": "",
"changed_files": 2,
"closed_at": null,
"comments": 0,
"created_at": "2024-11-10T12:13:48Z",
"created_at": "2025-01-01T08:51:05Z",
"deletions": 0,
"diff_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2.diff",
"diff_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2.diff",
"draft": false,
"due_date": null,
"head": {
@ -131,12 +132,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -150,8 +152,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -160,7 +162,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -172,14 +174,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -206,24 +208,24 @@
"release_counter": 0,
"repo_transfer": null,
"size": 30,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"repo_id": 16,
"sha": "204d377a8f707de901d69549b38b8e20b95ed5ea"
"repo_id": 20,
"sha": "a68927e242897e29864e190a68b3cfec682905b7"
},
"html_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2",
"html_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2",
"id": 2,
"is_locked": false,
"labels": [],
"merge_base": "483a4bfe864b8663933825d8904de97eab8baa72",
"merge_base": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6",
"merge_commit_sha": null,
"mergeable": true,
"merged": false,
@ -231,25 +233,25 @@
"merged_by": null,
"milestone": null,
"number": 2,
"patch_url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2.patch",
"patch_url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2.patch",
"pin_order": 0,
"requested_reviewers": null,
"requested_reviewers_teams": null,
"review_comments": 0,
"state": "open",
"title": "PR same repo",
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/root/example-pull-request/pulls/2",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/root/example-pull-request/pulls/2",
"user": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -277,12 +279,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-pull-request.git",
"created_at": "2024-11-10T12:13:46Z",
"clone_url": "http://10.194.201.195:3000/root/example-pull-request.git",
"created_at": "2025-01-01T08:51:03Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -296,8 +299,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-pull-request",
"id": 16,
"html_url": "http://10.194.201.195:3000/root/example-pull-request",
"id": 20,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -306,7 +309,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -318,14 +321,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -352,12 +355,12 @@
"release_counter": 0,
"repo_transfer": null,
"size": 30,
"ssh_url": "forgejo@10.194.201.194:root/example-pull-request.git",
"ssh_url": "forgejo@10.194.201.195:root/example-pull-request.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:48Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-pull-request",
"updated_at": "2025-01-01T08:51:05Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-pull-request",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
@ -366,14 +369,14 @@
"review": null,
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -393,18 +396,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "20",
"run_id": "24",
"run_number": "4",
"actor": "root",
"repository": "root/example-pull-request",
"event_name": "pull_request_target",
"sha": "483a4bfe864b8663933825d8904de97eab8baa72",
"sha": "233e1a160e3ac5d5ce7f8831dba5dbfa69bc5fe6",
"ref": "refs/heads/main",
"ref_name": "main",
"ref_type": "branch",
"head_ref": "other",
"base_ref": "main",
"token": "86afe8394462c951e48f3131f29f5c01777bf501",
"token": "162df22bd583eee105a585773ffb8ef9f9137991",
"workspace": "/workspace/root/example-pull-request",
"action": "6",
"action_path": "",
@ -416,7 +419,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -1,6 +1,6 @@
{
"event": {
"after": "45f5a7b619b8ba789429b7fb8a513d6c148458ea",
"after": "7dbc33a37a2ee8975d88103a3bf40fded6e6c2f4",
"before": "0000000000000000000000000000000000000000",
"commits": [
{
@ -17,16 +17,16 @@
"name": "username",
"username": "root"
},
"id": "45f5a7b619b8ba789429b7fb8a513d6c148458ea",
"id": "7dbc33a37a2ee8975d88103a3bf40fded6e6c2f4",
"message": "initial commit\n",
"modified": [],
"removed": [],
"timestamp": "2024-11-10T12:12:54Z",
"url": "http://10.194.201.194:3000/root/example-push/commit/45f5a7b619b8ba789429b7fb8a513d6c148458ea",
"timestamp": "2025-01-01T08:50:21Z",
"url": "http://10.194.201.195:3000/root/example-push/commit/7dbc33a37a2ee8975d88103a3bf40fded6e6c2f4",
"verification": null
}
],
"compare_url": "http://10.194.201.194:3000/",
"compare_url": "http://10.194.201.195:3000/",
"head_commit": {
"added": [
".forgejo/workflows/test.yml"
@ -41,24 +41,24 @@
"name": "username",
"username": "root"
},
"id": "45f5a7b619b8ba789429b7fb8a513d6c148458ea",
"id": "7dbc33a37a2ee8975d88103a3bf40fded6e6c2f4",
"message": "initial commit\n",
"modified": [],
"removed": [],
"timestamp": "2024-11-10T12:12:54Z",
"url": "http://10.194.201.194:3000/root/example-push/commit/45f5a7b619b8ba789429b7fb8a513d6c148458ea",
"timestamp": "2025-01-01T08:50:21Z",
"url": "http://10.194.201.195:3000/root/example-push/commit/7dbc33a37a2ee8975d88103a3bf40fded6e6c2f4",
"verification": null
},
"pusher": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -86,12 +86,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-push.git",
"created_at": "2024-11-10T12:12:54Z",
"clone_url": "http://10.194.201.195:3000/root/example-push.git",
"created_at": "2025-01-01T08:50:21Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -105,8 +106,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-push",
"id": 12,
"html_url": "http://10.194.201.195:3000/root/example-push",
"id": 16,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -115,7 +116,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-push/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-push/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -127,14 +128,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -161,26 +162,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 25,
"ssh_url": "forgejo@10.194.201.194:root/example-push.git",
"ssh_url": "forgejo@10.194.201.195:root/example-push.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:12:54Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-push",
"updated_at": "2025-01-01T08:50:22Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-push",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -201,18 +202,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "12",
"run_id": "16",
"run_number": "1",
"actor": "root",
"repository": "root/example-push",
"event_name": "push",
"sha": "45f5a7b619b8ba789429b7fb8a513d6c148458ea",
"sha": "7dbc33a37a2ee8975d88103a3bf40fded6e6c2f4",
"ref": "refs/heads/main",
"ref_name": "main",
"ref_type": "branch",
"head_ref": "",
"base_ref": "",
"token": "010ed2d2a9fa87f08d5c7a77a75341247ff7244f",
"token": "4069b67eecafec9883534e2be9f06ad4a0d1436e",
"workspace": "/workspace/root/example-push",
"action": "0",
"action_path": "",
@ -224,7 +225,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -1,9 +1,9 @@
{
"event": {
"after": "72756a53e345468e6b54fb9faec59cd05183068a",
"after": "6bd90717021f7a4b873ae2ac4308bafb6e21b8e4",
"before": "0000000000000000000000000000000000000000",
"commits": [],
"compare_url": "http://10.194.201.194:3000/root/example-tag/compare/0000000000000000000000000000000000000000...72756a53e345468e6b54fb9faec59cd05183068a",
"compare_url": "http://10.194.201.195:3000/root/example-tag/compare/0000000000000000000000000000000000000000...6bd90717021f7a4b873ae2ac4308bafb6e21b8e4",
"head_commit": {
"added": [
".forgejo/workflows/test.yml",
@ -19,24 +19,24 @@
"name": "username",
"username": "root"
},
"id": "72756a53e345468e6b54fb9faec59cd05183068a",
"id": "6bd90717021f7a4b873ae2ac4308bafb6e21b8e4",
"message": "initial commit\n",
"modified": [],
"removed": [],
"timestamp": "2024-11-10T12:13:00Z",
"url": "http://10.194.201.194:3000/root/example-tag/commit/72756a53e345468e6b54fb9faec59cd05183068a",
"timestamp": "2025-01-01T08:50:27Z",
"url": "http://10.194.201.195:3000/root/example-tag/commit/6bd90717021f7a4b873ae2ac4308bafb6e21b8e4",
"verification": null
},
"pusher": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -64,12 +64,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-tag.git",
"created_at": "2024-11-10T12:13:00Z",
"clone_url": "http://10.194.201.195:3000/root/example-tag.git",
"created_at": "2025-01-01T08:50:28Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -83,8 +84,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-tag",
"id": 13,
"html_url": "http://10.194.201.195:3000/root/example-tag",
"id": 17,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -93,7 +94,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-tag/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-tag/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -105,14 +106,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@example.com",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -139,26 +140,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 26,
"ssh_url": "forgejo@10.194.201.194:root/example-tag.git",
"ssh_url": "forgejo@10.194.201.195:root/example-tag.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:13:01Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-tag",
"updated_at": "2025-01-01T08:50:28Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-tag",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -179,18 +180,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "13",
"run_id": "17",
"run_number": "1",
"actor": "root",
"repository": "root/example-tag",
"event_name": "push",
"sha": "72756a53e345468e6b54fb9faec59cd05183068a",
"sha": "6bd90717021f7a4b873ae2ac4308bafb6e21b8e4",
"ref": "refs/tags/v1.1",
"ref_name": "v1.1",
"ref_type": "tag",
"head_ref": "",
"base_ref": "",
"token": "91d9c5fe7606caffa7046ae8b9097bec541f0629",
"token": "e7525555f05ad1b0472e76fc4b84bb33a76889d9",
"workspace": "/workspace/root/example-tag",
"action": "0",
"action_path": "",
@ -202,7 +203,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -1 +1 @@
10.0-test

View file

@ -19,12 +19,13 @@
"archived": false,
"archived_at": "1970-01-01T00:00:00Z",
"avatar_url": "",
"clone_url": "http://10.194.201.194:3000/root/example-workflow-dispatch.git",
"created_at": "2024-11-10T12:16:07Z",
"clone_url": "http://10.194.201.195:3000/root/example-workflow-dispatch.git",
"created_at": "2025-01-01T08:54:13Z",
"default_allow_maintainer_edit": false,
"default_branch": "main",
"default_delete_branch_after_merge": false,
"default_merge_style": "merge",
"default_update_style": "merge",
"description": "",
"empty": false,
"fork": false,
@ -38,8 +39,8 @@
"has_pull_requests": true,
"has_releases": true,
"has_wiki": true,
"html_url": "http://10.194.201.194:3000/root/example-workflow-dispatch",
"id": 23,
"html_url": "http://10.194.201.195:3000/root/example-workflow-dispatch",
"id": 27,
"ignore_whitespace_conflicts": false,
"internal": false,
"internal_tracker": {
@ -48,7 +49,7 @@
"enable_time_tracker": true
},
"language": "",
"languages_url": "http://10.194.201.194:3000/api/v1/repos/root/example-workflow-dispatch/languages",
"languages_url": "http://10.194.201.195:3000/api/v1/repos/root/example-workflow-dispatch/languages",
"link": "",
"mirror": false,
"mirror_interval": "",
@ -60,14 +61,14 @@
"original_url": "",
"owner": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -94,26 +95,26 @@
"release_counter": 0,
"repo_transfer": null,
"size": 27,
"ssh_url": "forgejo@10.194.201.194:root/example-workflow-dispatch.git",
"ssh_url": "forgejo@10.194.201.195:root/example-workflow-dispatch.git",
"stars_count": 0,
"template": false,
"topics": null,
"updated_at": "2024-11-10T12:16:08Z",
"url": "http://10.194.201.194:3000/api/v1/repos/root/example-workflow-dispatch",
"updated_at": "2025-01-01T08:54:13Z",
"url": "http://10.194.201.195:3000/api/v1/repos/root/example-workflow-dispatch",
"watchers_count": 1,
"website": "",
"wiki_branch": "main"
},
"sender": {
"active": false,
"avatar_url": "http://10.194.201.194:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2024-11-10T12:10:05Z",
"avatar_url": "http://10.194.201.195:3000/avatars/04edfc0ef6c6cf6d6b88fbc69f9f9071",
"created": "2025-01-01T08:47:11Z",
"description": "",
"email": "root@noreply.10.194.201.194",
"email": "root@noreply.10.194.201.195",
"followers_count": 0,
"following_count": 0,
"full_name": "",
"html_url": "http://10.194.201.194:3000/root",
"html_url": "http://10.194.201.195:3000/root",
"id": 1,
"is_admin": false,
"language": "",
@ -134,18 +135,18 @@
},
"event_path": "/var/run/act/workflow/event.json",
"workflow": "",
"run_id": "25",
"run_id": "29",
"run_number": "1",
"actor": "root",
"repository": "root/example-workflow-dispatch",
"event_name": "workflow_dispatch",
"sha": "a2c166c121477e6f9605245c40332b135c3acd3d",
"sha": "00a9c530a7ac649e1540702e351ce5ebbbf9c7e6",
"ref": "refs/heads/main",
"ref_name": "main",
"ref_type": "branch",
"head_ref": "",
"base_ref": "",
"token": "bc28cefb45e311663fb8e0a2951505a223dae754",
"token": "095d1046379de0302aa679cbd20ad9108a6d0e4b",
"workspace": "/workspace/root/example-workflow-dispatch",
"action": "0",
"action_path": "",
@ -157,7 +158,7 @@
"retention_days": "",
"runner_perflog": "/dev/null",
"runner_tracking_id": "",
"server_url": "http://10.194.201.194:3000",
"api_url": "http://10.194.201.194:3000/api/v1",
"server_url": "http://10.194.201.195:3000",
"api_url": "http://10.194.201.195:3000/api/v1",
"graphql_url": ""
}

View file

@ -110,8 +110,8 @@ In a `workflow` file strings that look like `${{ ... }}` are evaluated by the `F
Can be used in `if:` conditionals on jobs and steps.
- `success()`. returns true when none of the previous jobs/steps have failed or been canceled.
- `always()`. causes the job/step to always execute, and returns true, even when canceled. If you want to run a job/step regardless of its success or failure, use the recommended alternative: **!cancelled()**.
- `success()`. returns true when none of the previous jobs/steps have failed or been cancelled.
- `always()`. causes the job/step to always execute, and returns true, even when cancelled. If you want to run a job/step regardless of its success or failure, use the recommended alternative: `'!cancelled()'` (the expression must be enclosed by quotes to not be interpreted as YAML tag).
- `failure()`. returns true when any previous step/job has failed.
### Functions
@ -218,9 +218,12 @@ A list of command and arguments, equivalent to [[COMMAND] [ARG...]](https://docs
### options
A string of additional options, as documented [docker run](https://docs.docker.com/engine/reference/commandline/run/). For instance: "--workdir /myworkdir --ulimit nofile=1024:1024".
A string of the following additional options, as documented [docker run](https://docs.docker.com/engine/reference/commandline/run/).
> **NOTE:** the `--volume` option is restricted to a allowlist of volumes configured in the runner executing the task. See the [Forgejo Actions administrator guide](../../admin/actions/) for more information.
- `--volume`
- `--tmpfs`
> **NOTE:** the `--volume` option is restricted to a allowlist of volumes configured in the runner executing the task. See the [Forgejo runner installation guide](../../admin/runner-installation/#configuration) for more information.
### username
@ -872,7 +875,7 @@ container:
Set the volumes for the container to use, as if provided with the `--volume` argument of the `docker run` command.
> **NOTE:** the `--volume` option is restricted to a allowlist of volumes configured in the runner executing the task. See the [Forgejo Actions administrator guide](../../admin/actions/) for more information.
> **NOTE:** the `--volume` option is restricted to a allowlist of volumes configured in the runner executing the task. See the [Forgejo runner installation guide](../../admin/runner-installation/#configuration) for more information.
> **NOTE:** ignored if `jobs.<job_id>.runs-on` is an LXC container.
@ -880,7 +883,10 @@ Set the volumes for the container to use, as if provided with the `--volume` arg
### `jobs.<job_id>.container.options`
A string of additional options, as documented in [docker run](https://docs.docker.com/engine/reference/commandline/run/). For instance: "--workdir /myworkdir --ulimit nofile=1024:1024".
A string of the following additional options, as documented [docker run](https://docs.docker.com/engine/reference/commandline/run/).
- `--volume`
- `--tmpfs`
> **NOTE:** the `--volume` option is restricted to a allowlist of volumes configured in the runner executing the task. See the [Forgejo Actions administrator guide](../../admin/actions/) for more information.
@ -1102,6 +1108,17 @@ the path to the executable file to run.
Set environment variables like it's [top-level variant `env`](#env-2), but only for the current step.
### `jobs.<job_id>.steps[*].continue-on-error`
If it is set to `true` for a step the following steps continue to run independent of its failure or success. Also, the job has successful state.
```yaml
steps:
- run: echo "failing step" && false
continue-on-error: true
- run: echo "this step runs and job is successful"
```
## Debugging workflows
### Errors in the YAML file

View file

@ -15,29 +15,47 @@ When `REPO_INDEXER_ENABLED` is set to `false`, code search is restricted to a si
The following options are currently available for code search while using `git-grep`.
- **Match**: Perform an exact match on the provided expression.
- **Union**: Conduct a union match, returning results that contain atleast one of the specified keywords. For example, a search query containing `hello world` will yeild results with either `hello` or `world`.
- **RegExp**: Utilize the provided regular expression to perform a pettern-based match (matches will not be highlighted).
- **Exact**: Perform an exact match on the provided expression.
- **Union**: Conduct a union match, returning results that contain at least one of the specified keywords. For example, a search query containing `hello world` will yield results with either `hello` or `world`.
- **RegExp**: Utilize the provided regular expression to perform a pattern-based match (matches will not be highlighted).
## Scope
Since `git-grep` is performed on the fly, they can be executed on any valid branch or tag. The currently active branch/tag is displayed as the default value in the dropdown menu above the search bar, allowing users to easily switch between branches and tags.
Searching within a specific directory (or file) executes `git-grep` using a [literal pathspec](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefpathspecapathspec) for the given path. If `REPO_INDEXER_INCLUDE` has been set by the administrator the filter is added if and only if it matches one of the globs.
### Example
Performing a search for `foo` at `/{user}/{repo}/src/branch/main/src` returns results that belong to the branch `main` inside the directory `/src`
```
main
├── docs -> [...]
└── src
└── main.go
└── utils.go
```
In the above figure the search would matches results for `foo`, in `main.go` and `utils.go`, but not from `docs/*`.
# Indexer
![Code search results page using indexer](../_images/user/code-search/indexer.png)
For complex searches or cross-repository queries across an entire organisation or instance, `REPO_INDEXER_ENABLED` must be set to `true`. This enables code search via the selected indexer ([`REPO_INDEXER_TYPE`](../../admin/config-cheat-sheet#indexer-indexer)).
For complex searches or cross-repository queries across an entire organization or instance, `REPO_INDEXER_ENABLED` must be set to `true`. This enables code search via the selected indexer ([`REPO_INDEXER_TYPE`](../../admin/config-cheat-sheet#indexer-indexer)).
## Supported Options
The following options are currently available for code search while using an indexer.
- **Match**: Perform an exact match on the provided expression.
- **Fuzzy**: Conduct a fuzzy search, returning results that contain the keyword within a maximum edit-distance of 2. For example, a search query containing `hello` will yeild results with
- **Exact**: Perform an exact match on the provided expression.
- **Fuzzy**: Conduct a fuzzy search, returning results that contain the keyword within a maximum edit-distance of 2. For example, a search query containing `hello` will yield results with
- **edit distance of 0**: `hello`
- **edit distance of 1**: For example, `hllo` (delete), `helloo` (add), `hallo` (modify).
## Scope
Please note that when using the repository indexer, search results are limited to the contents of the HEAD branch of each repository.
Similar to basic search, searching within a directory (or file) is also possible for advanced search. However, unlike basic search the search is more granular as it applies the filter, but selectively includes/excludes files depending on `REPO_INDEXER_INCLUDE`/`REPO_INDEXER_EXCLUDE`

View file

@ -87,7 +87,7 @@ In this example https://v7.next.forgejo.org will be configured to add the option
- Choose an arbitrary but distinctive name for the OAuth2 provider: (e.g. **Codeberg**).
- Choose an existing Codeberg user to create the OAuth2 application. It does not need to be a user with elevated privileges. (e.g. **user-for-oauth-application**)
- On https://codeberg.org, login as **user-for-oauth-application**
- Visit https://codeberg.org/user/settings/applications and create a new OAuth2 application. There needs to be only one redirect URI, composed with the abitrary name that was chosen above: https://v7.next.forgejo.org/user/oauth2/Codeberg/callback.
- Visit https://codeberg.org/user/settings/applications and create a new OAuth2 application. There needs to be only one redirect URI, composed with the arbitrary name that was chosen above: https://v7.next.forgejo.org/user/oauth2/Codeberg/callback.
![Create a new OAuth2 application](../_images/user/oauth2-provider/authsource-provider-create.png)
- When created, the OAuth2 application is given a **Client ID** and a **Client secret** that https://v7.next.forgejo.org will need to let https://codeberg.org know it is an authorized OAuth2 client.
![Client ID and secret of a new OAuth2 application](../_images/user/oauth2-provider/authsource-provider-show.png)
@ -95,16 +95,16 @@ In this example https://v7.next.forgejo.org will be configured to add the option
- Create a new authentication source on https://v7.next.forgejo.org, the Forgejo instance that is going to act as the OAuth2 client, allowing its users to register using the account they have on https://codeberg.org.
- Visit https://v7.next.forgejo.org/admin/auths/new to create the authentication source with:
- **Authentication type:** OAuth2
- **Authentication name:** the abitrary name that was chosen above (e.g. **Codeberg**)
- **Authentication name:** the arbitrary name that was chosen above (e.g. **Codeberg**)
- **OAuth2 provider:** OpenID Connect
- **Client ID:** copy/pasted from the OAuth2 application created on Codebeg
- **Client Secret:** copy/pasted from the OAuth2 application created on Codebeg
- **Icon URL:** https://design.codeberg.org/logo-kit/icon.svg
- **OpenID Connect Auto Discovery URL:** https://codeberg.org/.well-known/openid-configuration
- Leave all other fields to their default values
![Create a new OAuth2 authentication soure](../_images/user/oauth2-provider/authsource-client-create.png)
![Create a new OAuth2 authentication source](../_images/user/oauth2-provider/authsource-client-create.png)
- It will show in the list of authentication sources at https://v7.next.forgejo.org/admin/auths.
![List of OAuth2 authentication soure](../_images/user/oauth2-provider/authsource-client-list.png)
![List of OAuth2 authentication source](../_images/user/oauth2-provider/authsource-client-list.png)
- On https://v7.next.forgejo.org, not logged in
- Visit https://v7.next.forgejo.org/user/login
![Login page with Codeberg authentication source](../_images/user/oauth2-provider/authsource-intro-login-page.png)

View file

@ -47,10 +47,12 @@ and shows a link to the repository on the package site (as well as a link to the
## Access Restrictions
| Package owner type | User | Organization |
| ------------------ | ----------------------------------------------------------- | -------------------------------------------------------- |
| **read** access | public, if user is public too; otherwise for this user only | public, if org is public, otherwise for org members only |
| **write** access | owner only | org members with admin or write access to the org |
| Package owner type | User | Organization |
| ------------------ | ------------------------------------------------------- | -------------------------------------------------------- |
| **read** access | public, if user is public, otherwise for this user only | public, if org is public, otherwise for org members only |
| **write** access | owner only | org members with admin or write access to the org |
Additionally, public access can be restricted instance-wide by the setting of [`service.REQUIRE_SIGNIN_VIEW`](../../admin/config-cheat-sheet/#service-service).
N.B.: These access restrictions are subject to change, where more finegrained control will be added via a dedicated organization team permission.

View file

@ -94,4 +94,4 @@ After adding the push mirror, you can click the **Copy public key** link to copy
![The push mirror entry is shown](../_images/user/repo-mirror/push_mirror_with_ssh.png)
This public key can then be added as a deploy key on the target repository, how to add one varies by platform but generally it should be an option in the repository's settings.
After adding the public key as the deploy key, you can go back to Forgejo and click the **Syncronize now** button and see that it works.
After adding the public key as the deploy key, you can go back to Forgejo and click the **Synchronize now** button and see that it works.

View file

@ -1,8 +1,8 @@
[
{ "major": "7", "minor": "0", "cut": "2024-04-01", "release": "2024-04-23", "eol": "2025-07-16", "lts": true },
{ "major": "8", "minor": "0", "cut": "2024-07-01", "release": "2024-07-30", "eol": "2024-10-16", "lts": false },
{ "major": "9", "minor": "0", "cut": "2024-09-25", "release": "2024-10-16", "eol": "2025-01-15", "lts": false },
{ "major": "10", "minor": "0", "cut": "2024-12-25", "release": "2025-01-15", "eol": "2025-04-16", "lts": false },
{ "major": "9", "minor": "0", "cut": "2024-09-25", "release": "2024-10-16", "eol": "2025-01-16", "lts": false },
{ "major": "10", "minor": "0", "cut": "2024-12-25", "release": "2025-01-16", "eol": "2025-04-16", "lts": false },
{ "major": "11", "minor": "0", "cut": "2025-03-26", "release": "2025-04-16", "eol": "2026-07-15", "lts": true },
{ "major": "12", "minor": "0", "cut": "2025-06-25", "release": "2025-07-16", "eol": "2025-10-15", "lts": false },
{ "major": "13", "minor": "0", "cut": "2025-09-24", "release": "2025-10-15", "eol": "2026-01-14", "lts": false },

View file

@ -1,5 +1,11 @@
#!/usr/bin/env sh
if hash xdg-open 2>/dev/null; then
open_cmd=xdg-open
else
open_cmd=open
fi
current_branch=$(git branch --show-current)
repo_path=$(pwd)
@ -32,7 +38,7 @@ mkdir -p $(dirname ./src/content/images/$current_branch) # in case of branch na
ln -s $repo_path/images/ ./public/images/$current_branch
# once the dev server is running, open the current docs branch in the browser
sleep 3 && open http://localhost:4321/docs/$current_branch/ &
sleep 3 && $open_cmd http://localhost:4321/docs/$current_branch/ &
# start the dev server
pnpm run dev