Commit graph

192 commits

Author SHA1 Message Date
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
Earl Warren 1a7a9055e4
forgejo-cli is now a symlink and cannot be used for sanity checks
It could be used but then `cp --dereference` would need to be used instead in
the forgejo-build-publish action.

+ docker cp forgejo-amd64:/app/gitea/forgejo-cli forgejo-9.0-test-linux-amd64
+ chmod +x forgejo-9.0-test-linux-amd64
chmod: cannot operate on dangling symlink 'forgejo-9.0-test-linux-amd64'
2024-10-17 06:59:05 +02:00
Renovate Bot 7e805fa665 Update renovate to v38.121.0 2024-10-14 20:04:12 +00:00
Renovate Bot 80d41ee2e1 Update actions/cache action to v4.1.1 (forgejo) (#5498)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5498
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-10-09 04:54:02 +00:00
Renovate Bot b23217fb3e Update actions/git-backporting action to v4.8.2 2024-10-08 00:02:57 +00:00
Earl Warren c82e5d1a1a Merge pull request 'chore(ci): update changed-files actions URL for consistency' (#5485) from fnetx/changed-files-action-url into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5485
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-10-07 05:34:33 +00:00
Otto Richter 36c384246c chore(ci): update changed-files actions URL for consistency
mirrored actions are typically created under the name of the original author; additionally this moves the action to Forgejo's control
2024-10-07 03:21:45 +02:00
Renovate Bot e9040fafec Update renovate to v38.110.2 2024-10-07 00:03:30 +00:00
Renovate Bot e4866d9c9a Update actions/cache action to v4.1.0 2024-10-06 00:04:15 +00:00
Otto Richter 72749bcf70 ci: (always|only) run e2e tests based on changes
- detect changed files for the run
- let e2e files specify which related files they "watch"
- only run e2e tests based on pattern matching or when generic files
  change
- fallback to full runs if env not specified
2024-10-04 15:14:45 +02:00
Otto Richter f2a23c962a ci: merge e2e workflow into testing.yml
ci: cache frontend build across jobs

ci: ensure caches are saved with zstd

work around https://github.com/actions/cache/issues/1169

ci: require unit tests for remote cacher

- prevents unnecessary runs in case the unit tests already fail
- starts the integration tests about 2 minutes earlier
- should give some overall speedup to the CI run, because the long integration tests are run and finish earlier, and the cacher tests should still usually finish in time
- does not save any computing resources, just provides quicker results when runners are not under high load
2024-10-04 15:14:28 +02:00
Otto Richter e6b84f9191 ci: move composite workflow location
otherwise, they unfortunately display in the Forgejo UI with an error message
2024-10-01 16:51:02 +02:00
Renovate Bot be373e948e Update actions/setup-go action to v5 2024-10-01 10:02:16 +00:00
Earl Warren 9a7fc2e55e Merge pull request 'Update actions/cache action to v4 (forgejo)' (#5426) from renovate/forgejo-actions-cache-4.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5426
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-10-01 07:50:24 +00:00
Renovate Bot e3eaa284bb Update actions/checkout action to v4 (forgejo) (#5427)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5427
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-09-30 13:08:26 +00:00
Renovate Bot 92305933b1 Update actions/setup-node action to v4 (forgejo) (#5428)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5428
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-09-30 12:56:08 +00:00
Renovate Bot 502a6a4461 Update actions/cache action to v4 2024-09-30 12:06:49 +00:00
Renovate Bot 1b06287fe3 Update renovate to v38.101.1 2024-09-30 00:08:52 +00:00
Otto Richter a56c000f60 Replace setup-go with a custom action
To maximize the caching efficiency, all build jobs are executed as
forgejo user.
Hash is explicitly specified to avoid breaking changes.
2024-09-30 01:16:54 +02:00
Otto Richter 1fa09d1621 Split Git package installation 2024-09-28 12:08:30 +02:00
Otto Richter c0b17a06ef Split backend building boilerplate 2024-09-27 20:47:35 +02:00
Otto Richter 5b84756137 Split env preparation boilerplate 2024-09-27 20:47:35 +02:00
Renovate Bot 15ec27e658 Update renovate to v38.93.2 2024-09-23 02:02:04 +00:00
Renovate Bot 4cff39c4d9 Update renovate to v38.80.0 2024-09-16 00:02:10 +00:00
Renovate Bot 6e02a6b422 Update renovate to v38.77.2 2024-09-12 16:02:09 +00:00
Otto Richter d14b17e08d tests(e2e): use playwright image for dependency caching 2024-09-12 03:16:51 +02:00
Earl Warren 2f49437608
Revert "fix: CI: temporarily disable redict tests"
This reverts commit 9d306bbec3.
2024-09-11 15:45:07 +02:00
Earl Warren 9d306bbec3
fix: CI: temporarily disable redict tests
Refs: https://codeberg.org/redict/redict-containers/issues/32
2024-09-11 07:33:57 +02:00
Otto Richter 0f3ba99ff0 Add detailed instructions for e2e testing
- rewrite parts of and improve README
- simplify repo declaration
- list coverage in workflow path filter
2024-09-09 14:06:10 +02:00
Renovate Bot d9893ed2b6 Update renovate to v38.59.2 2024-09-02 00:02:39 +00:00
Earl Warren 293203cb64 Merge pull request 'chore(ci): Cache generated binary across jobs' (#5130) from fnetx/runner-caching into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5130
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-08-30 05:47:01 +00:00
Otto Richter 72408c7d68 Cache generated binary across jobs
- retrieved by the commit hash
- removes bindata tags from integration tests, because it does not seem
  to be required
- due to the missing automatically generated data, the zstd tests fail
  (they use repo data including node_modules (!) as input to the test,
  there is no apparent reason for the size constants)
2024-08-26 23:43:09 +02:00
Otto c856f77622 Merge pull request 'Update links affected by the renaming of 'developer' documentation sub-path into 'contributor'' (#5129) from floss4good/forgejo__forgejo:contrib-doc into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5129
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Reviewed-by: Otto <otto@codeberg.org>
2024-08-26 18:50:40 +00:00
Otto Richter d97e36f6d7 Playwright testing for commit diffs
includes:

- easier repo declaration for playwright tests by @Gusted
- full backend build for pushing Git repos by @Gusted
- playwright testing (which fails with the current diff algorithm, but
  passes with the new)
- disable eslint rule for conditional expect, because it defeats the
  purpose (working around it would result in much more complex test code
  in our cases)
2024-08-26 13:57:42 +02:00
floss4good 018aefe29f
Replace Developer Guide links with the new Contributor Guide one for PR template and release workflows comments. 2024-08-26 14:29:10 +03:00
Renovate Bot fbe464309b Update renovate to v38.52.3 2024-08-26 04:05:34 +00:00
Earl Warren 74f08b5da0 Merge pull request 'feat: add forgejo-cli to the container images' (#5012) from earl-warren/forgejo:wip-cli into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5012
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-08-19 08:47:57 +00:00
limiting-factor b6efebc237
feat: add forgejo-cli to the container images
When the Forgejo CLI binary is `forgejo-cli`, the `--verbose` or `--quiet`
arguments are available globally for all sub-commands. The same
sub-commands can be used with `forgejo forgejo-cli`, those flags are
not available.
2024-08-19 09:44:04 +02:00
Renovate Bot 1b9222f6e2 Update renovate to v38.39.6 2024-08-19 02:03:33 +00:00
Renovate Bot 2960f78adb Update docker.io/bitnami/minio Docker tag to v2024.8.17 2024-08-18 00:02:17 +00:00
Earl Warren 9b66710bf5 Merge pull request 'Update docker.io/bitnami/mysql Docker tag to v8.4 (forgejo)' (#4961) from renovate/forgejo-docker.io-bitnami-mysql-8.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4961
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-08-17 07:46:57 +00:00
Renovate Bot 7614efcaf6 Update docker.io/bitnami/mysql Docker tag to v8.4 2024-08-15 00:03:35 +00:00
Renovate Bot da44a7c01b Update docker.io/bitnami/minio Docker tag to v2024.8.3 2024-08-15 00:03:08 +00:00