Commit graph

234 commits

Author SHA1 Message Date
Earl Warren
e248179333 Merge pull request 'chore(ci): docker-runner-one is not a known label' (#6177) from earl-warren/forgejo:wip-renovate into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6177
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-12-06 11:11:25 +00:00
Earl Warren
87fd4eeaa5 Revert "chore(ci): merge jobs in issue-labels.yml in one workflow" (#6178)
This is a clean revert of the commits that led to grouping all jobs related to issue labeling into one workflow. The assumption that it would be more efficient was incorrect because it assumed the conditions for running each job would be evaluated statically Forgejo side. In reality the conditions are evaluated by the runner and multiplies the number of runs required instead of decreasing them. In turn, this clutters the status line of each pull request with numerous skipped runs. Finally it is more complex to maintain multiple jobs into a single workflow because the conditions for it to run have to be duplicated.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6178
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Co-authored-by: Earl Warren <contact@earl-warren.org>
Co-committed-by: Earl Warren <contact@earl-warren.org>
2024-12-06 11:05:00 +00:00
Earl Warren
ffd5a48b1f
chore(ci): docker-runner-one is not a known label
It was temporarily created when trying to have multiple runners on
multiple machines but this did not yield good results.
2024-12-06 05:46:52 +01:00
Earl Warren
4075d2c891
chore(ci): run merge conditions when a new commit is pushed
Otherwise the latest status of the PR may be skipped instead of fail
if the condition is not met.
2024-12-02 13:20:35 +01:00
Renovate Bot
8365133d6c Update renovate to v39.42.4 (forgejo) (#6115)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-12-02 07:14:08 +00:00
Renovate Bot
5f0049bfea Update renovate to v39.28.0 (forgejo) (#6065)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-25 00:33:00 +00:00
Michael Kriese
caea17ccb2
ci: use more tmpfs and noatime for faster CI 2024-11-22 11:13:04 +01:00
Earl Warren
a69943085a
chore(ci): remove unused experimental DNS updates 2024-11-20 15:13:53 +00:00
Earl Warren
cff7754735 Merge pull request 'ci: disable postgresql fsync' (#5962) from viceice/ci/pg/fsync into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5962
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-11-18 21:43:15 +00:00
Earl Warren
1806db31d1
chore(ci): merge jobs in issue-labels.yml in one workflow
Fixes: forgejo/forgejo#5999
2024-11-18 19:43:35 +01:00
Earl Warren
7c1f3a7594
chore(ci): cat all issue labels workflows in issue-labels.yml
cat cascade-setup-end-to-end.yml backport.yml merge-requirements.yml release-notes-assistant.yml > issue-labels.yml
rm cascade-setup-end-to-end.yml backport.yml merge-requirements.yml release-notes-assistant.yml
2024-11-18 19:40:15 +01:00
Earl Warren
73cb6c9204
chore(ci): make release-notes-assistant job copy/pastable (part two)
The event is pull_request_target

Refs: forgejo/forgejo#5999
2024-11-18 18:11:07 +01:00
Earl Warren
18cecf124f
chore(ci): make release-notes-assistant job copy/pastable
Refs: forgejo/forgejo#5999
2024-11-18 17:23:33 +01:00
Otto
6cfaebf043 Merge pull request 'chore(ci): make backporting job copy/pastable' (#6002) from earl-warren/forgejo:wip-ci-labels-backports into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6002
Reviewed-by: Otto <otto@codeberg.org>
2024-11-18 10:44:38 +00:00
Renovate Bot
6553148de9 Update renovate to v39.19.1 (forgejo) (#6008)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-18 05:52:58 +00:00
Earl Warren
b6869d643e
chore(ci): make backporting job copy/pastable
Refs: forgejo/forgejo#5999
2024-11-17 19:17:11 +01:00
Earl Warren
64a89c8d33
chore(ci): make merge-conditions job copy/pastable
Refs: forgejo/forgejo#5999
2024-11-17 17:57:40 +01:00
Earl Warren
b5161325ef
chore(ci): make end-to-end job copy/pastable
Refs: forgejo/forgejo#5999
2024-11-17 13:33:21 +01:00
Michael Kriese
7f707b2a6f
ci: disable postgresql fsync 2024-11-15 15:29:06 +01:00
Michael Kriese
5406310f3e
ci: upload all e2e artifacts 2024-11-15 15:01:39 +01:00
Michael Kriese
c8d97e5594
ci: use oci mirror images 2024-11-15 08:19:50 +01:00
Michael Kriese
19c9e0a0c2
ci: proper job name 2024-11-15 00:48:45 +01:00
Otto
d1ad4dd561 Merge pull request 'Highlight user mention in comments and commit messages' (#5899) from 0ko/forgejo:mention-highlight into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5899
Reviewed-by: Otto <otto@codeberg.org>
2024-11-14 17:46:03 +00:00
Michael Kriese
8a4407ef72
ci: use tmpfs for service storage 2024-11-14 17:27:48 +01:00
Michael Kriese
eda83cc7ed
ci: disable mysql binlog 2024-11-14 16:39:34 +01:00
Otto Richter
019e38a746 chore(ci): Upload screenshots on test failure 2024-11-14 14:12:31 +01:00
Earl Warren
068558accd
chore(ci): ROLE forgejo-coding & forgejo-testing (part two)
When the CI vars.ROLE is forgejo-coding, it is assumed to be the
repository where collaborative coding happens,
i.e. https://codeberg.org/forgejo/forgejo

When the CI vars.ROLE is forgejo-testing, it is assumed that only codebase
testing is to be run and no other tests such as release build
integration, label constraints, backporting etc.
2024-11-13 23:04:47 +01:00
Earl Warren
f82840f1ea
chore(ci): ROLE forgejo-coding & forgejo-testing
When the CI vars.ROLE is forgejo-coding, it is assumed to be the
repository where collaborative coding happens,
i.e. https://codeberg.org/forgejo/forgejo

When the CI vars.ROLE is forgejo-testing, it is assumed that only codebase
testing is to be run and no other tests such as release build
integration, label constraints, backporting etc.
2024-11-13 22:18:35 +01:00
Earl Warren
7492330721
chore(ci): trigger a mirror when a release is publish
Notify https://code.forgejo.org/forgejo/forgejo that a new release was
published by setting the trigger label to
https://code.forgejo.org/forgejo/forgejo/issues/5.

It is only ever useful when a stable release is published, the
experimental releases are not mirrored. But it is triggered in all
cases. This will waste a few mirror check daily, when experimental
releases are built. This is an improvement compared to the current
situation where mirrors are checked hourly:

* Instead of being checked 24 times per day it will be down to less
  than 5
* The mirror happens immediately after the release is published
  instead of waiting for the next run of the cron job.

If a mirror operation is in progress, as evidenced by the presence of
the trigger label on the issure, it means two releases are being
published. Wait up to 1h for the mirror to complete and remove the
trigger label.
2024-11-13 17:17:08 +01:00
Renovate Bot
ff1a084fa3 Update renovate to v39.9.0 (forgejo) (#5907)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-11 05:57:44 +00:00
Earl Warren
2cfd59cb30 Merge pull request 'chore(ci): Enforce test label with CI check' (#5886) from fnetx/test-label-test into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5886
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-11-10 12:21:08 +00:00
Earl Warren
493175e6fd
fix(ci): only trigger end-to-end tests when the label is set
Use event.label instead of event.pull_request.labels.*.name

Prior to Forgejo v9.0.2 it was not set and that was the only workaround.
2024-11-10 11:44:59 +01:00
Otto Richter
2483dbc694 chore(ci): Enforce test label with CI check
Re-add the test after bugfixes have been deployed to Codeberg
2024-11-10 02:16:21 +01:00
Earl Warren
39f4018d87
fix(ci): slow runners may need more than 50 minutes for a test 2024-11-09 18:16:38 +01:00
Michael Kriese
2eeb2fcd35
chore(renovate): only run if renovate workflow changed 2024-11-08 13:05:43 +01:00
Michael Kriese
669b4b46e6
chore(renovate): pin to single actions runner 2024-11-08 12:18:29 +01:00
Renovate Bot
8b27dcb3b6 Update renovate to v39 (forgejo) (major) (#5829)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5829
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-06 14:39:53 +00:00
Earl Warren
ece87d0569
chore(ci): deprecate legacy infrastructure supporting v*.next
https://code.forgejo.org/infrastructure/k8s/ was replaced with
https://code.forgejo.org/infrastructure/k8s-cluster/
2024-11-05 16:18:06 +01:00
Renovate Bot
fb1b3e2c6d Update renovate to v38.142.5 (forgejo) (#5802)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5802
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-04 05:52:26 +00:00
Renovate Bot
c56c49adeb Update actions/git-backporting action to v4.8.4 2024-11-03 00:03:53 +00:00
Otto Richter
2f7f3834b6 Revert "chore(ci): Enforce test label with CI check"
This reverts commit 5da7f07fbe.

The status check patterns are not updated correctly, so this change adds
mainly confusion and little value.

See https://codeberg.org/forgejo/forgejo/pulls/5769
2024-11-01 14:36:37 +01:00
Renovate Bot
ab936de02d Update infrastructure/next-digest action to v1.1.0 2024-11-01 10:40:13 +00:00
Otto Richter
5da7f07fbe chore(ci): Enforce test label with CI check
- test label needs to be set and either present, not-needed or manual
- if manual test label is set, PR description needs to contain a heading
  (defined by '#') starting with "Test" (e.g. "Test instructions",
"Testing" etc)
2024-10-31 16:39:53 +01:00
Earl Warren
b087cdc002
chore(ci): use rootless for the container images sent to k8s
The input to the action is not image_suffix but tag_suffix. It finds
an image and does not error. But it is the root image and the k8s
cluster needs the rootless image.
2024-10-31 12:24:40 +01:00
Earl Warren
dab156b452
chore(ci): notify the k8s cluster about experimental releases
This is in preparation of the migration of the v*.next.forgejo.org
instances currently managed at https://code.forgejo.org/infrastructure/k8s

The key difference is that the former system relies on ad-hoc scripts
and creates one k8s cluster for each instance, sharing nothing between
them.

The newer k8s cluster is used for all and requires significantly less
ad-hoc tooling.

See also:

* https://code.forgejo.org/infrastructure/next-digest
* https://code.forgejo.org/infrastructure/k8s-cluster/src/branch/main/k8s.md#updating-v-next-forgejo-org
2024-10-30 19:44:55 +01:00
Renovate Bot
f9a16f8be0 Update renovate to v38.133.0 2024-10-28 06:26:24 +00:00
Otto Richter
511b213db2 tests(e2e): skip browser downloads
The browser versions are updated weekly in the cache, see https://code.forgejo.org/forgejo/playwright-image-builder
When they change between the runs, they are refreshed for each CI run (see https://codeberg.org/forgejo/forgejo/actions/runs/35651/jobs/3#jobstep-7-19 for an example).

Updating the browsers weekly is good enough, so skip the explicit update check here.
Related playwright documentation: https://playwright.dev/docs/library#browser-downloads
2024-10-24 22:42:21 +02:00
Earl Warren
e0ea4e2de4
feat(ci): allow manual triggering of the test suite
When a skip ci label is added to the PR title, removing it won't
trigger the CI. There needs to be a way to manually trigger it.
2024-10-21 08:06:22 +02:00
Renovate Bot
13762759fd Update renovate to v38.128.6 2024-10-21 00:03:17 +00:00
Earl Warren
54c8ac3e39
vars.SKIP_END_TO_END optionally skip tests when building a release
The end-to-end tests will always fail when more than one release is
broken. When trying to fix one, the other will get in the way and vice
versa. The only way to get out of this deadlock is to replace all
broken releases but one by doing the following on forgejo-integration:

* set SKIP_END_TO_END to true in the actions vars tab
* pushing a commit to the corresponding branch, fixing the problem
2024-10-17 07:31:22 +02:00