Commit graph

55 commits

Author SHA1 Message Date
Earl Warren
a7b8d96fd6 tests: run JavaScript tests when web_src/js is modified
otherwise they are not useful

(cherry picked from commit a6a64f1fdc)
2024-07-08 18:58:25 +00:00
Earl Warren
c8017a2853 fix(release): add missing ARG RELEASE_VERSION
The ARG RELEASE_VERSION set in the build-env image does not propagate
to the images that follow. As a result the value of the version label
is always empty.

This should have been caught by the test in the CI but although it
notified the problem in the output, it did not fail. Upgrade to the
forgejo-build-publish version that fixes this false positive.

(cherry picked from commit 97189d41f3)
2024-04-17 16:06:43 +00:00
Earl Warren
989d35d748 feat(release): add OCI labels to container images
(cherry picked from commit 028d19c0fe)
2024-04-17 05:48:38 +00:00
Renovate Bot
ce2b1643f9 Update forgejo/forgejo-build-publish action to v5
(cherry picked from commit d7ae60ae91)
2024-04-12 12:23:15 +00:00
Earl Warren
5374cb6608 Revert "[CI] pin go v1.22.2 version"
The golang action now knows about the latest Go version.

This reverts commit 3509242ee6.

(cherry picked from commit 262533570f)
2024-04-05 04:40:24 +00:00
Earl Warren
11d50ab72e [CI] pin go v1.22.2 version
Because setup-go fails to pick it up. It usually happens within 24h
and this commit can be reverted then.

(cherry picked from commit 3509242ee6)
2024-04-04 06:09:34 +00:00
Earl Warren
92acbb0a8e [CI] backport: show event information for debug purposes
It will help figure out why two runs of testing happen when a backport
PR is open.

Refs: https://codeberg.org/forgejo/forgejo/pulls/2922
Refs: https://codeberg.org/forgejo/forgejo/issues/2009
2024-03-31 07:01:34 +00:00
Earl Warren
19f7eb657b [CI] allow backports to be launched on merged pull requests
The intention was good initially but the expression was wrong for two
reasons:

* When a pull_request event is received for a labeled action, the
  match should be github.event.action == 'label_updated' and not
  'labeled'
* The event does not have a github.event.label field and
  contains(github.event.label.name, 'backport/v') will always be
  false.

Since the expression is only evaluated in the context of a merged pull
request, either because it was just closed or because it was labeled
after the fact, the only verification that is needed is to assert that
there is at least one `backport/v*` label.
2024-03-30 13:19:01 +00:00
Earl Warren
ffdba30a62
[CI] backport strategy must fail when it conflicts
strategy: ort

The strategy is changed from "recursive" to "ort", which is the
default for git >= 2.43.2 and claims to reduce the likelyhood of
conflicts according to man git-merge:

> This has been reported to result in fewer merge conflicts without
> causing mismerges...

strategy-option: find-renames

The default option are the same for both strategies and "theirs" will:

> This option forces conflicting hunks to be auto-resolved
> cleanly by favoring their version.

"their" being whatever is not in the commits being cherry-picked.

In the context of Forgejo backports, this is not what is desired:
whenever a conflict happens it needs to be manually resolved and
prefering whatever is in the stable branch will not lead to a sane
backport.

It is changed back to "find-renames" which is documented to be the
default:

> Turn on rename detection, optionally setting the similarity
> threshold. This is the default.

Fixes: https://codeberg.org/forgejo/forgejo/issues/2886
2024-03-30 10:34:23 +01:00
Renovate Bot
e3570ec3e3 Update ghcr.io/visualon/renovate Docker tag to v37.272.0 2024-03-27 07:32:23 +00:00
Michael Kriese
b561c02b56
Update renovate config 2024-03-25 14:52:42 +01:00
Michael Kriese
0023f78a17
Disable duplicate builds 2024-03-25 13:24:53 +01:00
Michael Kriese
102531cba1
Update renovate configs 2024-03-25 13:03:20 +01:00
Earl Warren
7288fb5dff Merge pull request 'Add renovate' (#2775) from viceice/forgejo:chore/renovate into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/2775
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-03-25 11:22:03 +00:00
Michael Kriese
8ce7de5677
Add renovate 2024-03-25 10:34:01 +01:00
Earl Warren
84f28f36b0
go: upgrade to go v1.22 2024-03-25 06:52:23 +01:00
Earl Warren
f326f14da7
[CI] backport: do no nothing if there are no backport labels 2024-03-24 07:52:00 +01:00
Earl Warren
549720bbef
[CI] backport PRs with the label backport/v* 2024-03-23 11:43:55 +01:00
Earl Warren
03aebc4b0f
[CI] simplify running end-to-end tests while building a release 2024-03-20 20:20:42 +01:00
Earl Warren
a1889ac348
[CI] simplify end-to-end test cascading PR
Closes: https://codeberg.org/forgejo/forgejo/issues/2670
2024-03-20 18:16:56 +01:00
oliverpool
98f1fe7944 Makefile: check git diff exit-code (#2651)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/2651
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-03-14 10:38:58 +00:00
jilen
f4fd81b5d1 Add minio bucket lookup type option 2024-03-06 09:38:02 +00:00
Earl Warren
dc354ae0f7
Revert "[CI] pin go v1.21.8 version"
This reverts commit ac0f58035f.
2024-03-06 12:14:44 +08:00
Earl Warren
ac0f58035f
[CI] pin go v1.21.8 version
Because setup-go fails to pick it up.

Refs: https://github.com/actions/setup-go/issues/462
2024-03-06 11:38:47 +08:00
Earl Warren
96f9673640
[CI] do not hardcode the Forgejo release in end-to-end testing (part 2)
The absence of origin-ref must be the empty string '', not 'false'
2024-03-06 09:09:19 +08:00
Earl Warren
d257fa179b
[CI] do not hardcode the Forgejo release in end-to-end testing
Now that Forgejo has its own release number, use the Makefile as a
reference.

Also document and improve support for debugging this
pull_request_target workflow by using a branch in the repository.
2024-03-06 03:15:07 +08:00
Earl Warren
9e662fe2cd
[RELEASE] publish container images tagged with the major version
Now that semantic versions are used, the major version must be used
instead of major.minor to distinguish releases with breaking changes.

Before:

Forgejo v1.21.1-0, tags 1.21.1-0 and 1.21
Forgejo v1.21.2-0, tags 1.21.2-0 and 1.21
Forgejo v1.22.1-0, tags 1.22.1-0 and 1.22

After

Forgejo v7.0.0 tags 7.0.0 and 7
Forgejo v7.0.1 tags 7.0.1 and 7
Forgejo v7.1.2 tags 7.1.2 and 7
Forgejo v8.0.1 tags 8.0.1 and 8
2024-03-02 19:48:28 +08:00
Earl Warren
5d2c4706d0
[CI] run frontend checks 2024-02-25 23:08:09 +01:00
Earl Warren
2762dd9597
[CI] name the test release after the latest v*-dev tag
Also ignore the *-test tags when figuring out the Forgejo version,
they exist in the integration repository and experimental repository
for daily releases.
2024-02-23 15:37:46 +01:00
Earl Warren
00d175701e
[RELEASE] use 0.0-test instead of forgejo-test
so that it is a valid semver version instead of not
2024-02-19 14:18:26 +01:00
Earl Warren
004b772b5c
[RELEASE] cache node_modules 2024-02-19 14:18:26 +01:00
Earl Warren
aef5f44169
[RELEASE] do not limit clone depth when building a release
otherwise git describe may not produce a tag based version number
2024-02-19 14:18:25 +01:00
Earl Warren
102b3738a2
[RELEASE] copy the release to forgejo-experimental if tests pass 2024-02-19 14:18:25 +01:00
Earl Warren
014e533206
[RELEASE] decouple the release name from the version number
The release name, as provided by FORGEJO_RELEASE, is used to build OCI
images and binary files. Although it can be the same as the Forgejo
version, it is not a requirement.

When the FORGEJO_RELEASE environment variable is set, use it as a
default for naming the binary file instead of FORGEJO_VERSION. For
instance, when building from the forgejo branch here is what is desired:

FORGEJO_VERSION=7.0.0-g2343
GITEA_VERSION=1.22.0
VERSION=vforgejo-test

The name of the release is also displayed with forgejo --version
for sanity check purposes.

Before:

FORGEJO_VERSION is the computed version
GITEA_VERSION is set manually
VERSION defaults to FORGEJO_VERSION
forgejo --help does not display VERSION

After:

FORGEJO_VERSION is the computed version
GITEA_VERSION is set manually
RELEASE_VERSION defaults to FORGEJO_VERSION
VERSION defaults to RELEASE_VERSION
forgejo --help displays VERSION
2024-02-17 15:27:35 +01:00
Earl Warren
3b9d39f483
[CI] mirror to forgejo-integration daily instead of each commit 2024-02-17 11:55:52 +01:00
Earl Warren
03efa900ea
[RELEASE] build test releases
* forgejo & v*/forgejo branches are mirrored to the forgejo-integration repository on every commit
* re-build a test release every time that happens
  * forogejo => vforgejo-test
  * v1.21/forgejo => v1.21-test
  * v1.22/forgejo => v1.22-test
  * etc.
2024-02-17 11:52:50 +01:00
Earl Warren
a4ca473d33
[CI] cascade end-to-end must not try to merge feature branches
they no longer exist as of the hard fork
2024-02-10 10:53:04 +01:00
oliverpool
ffc94d9463 remove debug print 2024-02-09 11:27:58 +01:00
oliverpool
cab17d7a72 DEBUG: -j 2024-02-09 11:20:15 +01:00
oliverpool
01539730c0 CI: merge checks-backend and lint-backend 2024-02-09 11:08:19 +01:00
Earl Warren
a89cb638a0
[CI] pin go 1.21 2024-02-07 12:19:56 +01:00
Earl Warren
3f9b7cb892
[CI] Forgejo Actions based CI for PR & branches (squash) install git >= 2.42
(cherry picked from commit 2e43bd580d)
(cherry picked from commit f4a21a873c)
2024-02-05 13:33:59 +01:00
Earl Warren
6b1a57d0ef
[CI] push forgejo branches to the specified destination (squash) verbose
(cherry picked from commit 848685d68d)
(cherry picked from commit e8021f281f)
(cherry picked from commit 2a4b3a2a43)
2024-02-05 13:33:59 +01:00
Earl Warren
9b222ac391
[CI] Forgejo Actions e2e tests (squash) generate
(cherry picked from commit 9cd0b93ad2)
(cherry picked from commit ef1ddf0568)
(cherry picked from commit cd26466622)
(cherry picked from commit 22d8ed2544)
2024-02-05 13:33:59 +01:00
Earl Warren
20de330e17
[CI] push forgejo branches to the specified destination
(cherry picked from commit 22abd100cb)
(cherry picked from commit 4e2c30cb5b)
(cherry picked from commit 1ddc08747c)
(cherry picked from commit ba3df01314)
(cherry picked from commit 644f7cb733)
2024-02-05 13:33:59 +01:00
Earl Warren
86c586941a
[CI] Forgejo Actions e2e tests (squash) do not try in simulation
(cherry picked from commit f67a3f952c)
(cherry picked from commit 23502a9b9f)
(cherry picked from commit f8f345ae18)
(cherry picked from commit e00eb6d9b3)
(cherry picked from commit f5f5eb53fa)
2024-02-05 13:33:59 +01:00
Earl Warren
e880f2fb6d
[CI] cascade release with end-to-end
(cherry picked from commit ab37e03bf3)
(cherry picked from commit 2b527169f1)
(cherry picked from commit 5fed32742e)
(cherry picked from commit 861c05c2f3)
(cherry picked from commit fd0ebd1a65)
2024-02-05 13:33:59 +01:00
Earl Warren
38c3d6c423
[CI] Forgejo Actions e2e tests
(cherry picked from commit 430f7d6519)
(cherry picked from commit b33f3e2fe8)
(cherry picked from commit 5d4f9e4716)
(cherry picked from commit 33b4f02d90)
(cherry picked from commit fe783424e1)
2024-02-05 13:33:59 +01:00
Earl Warren
82395a1f72
[CI] Forgejo Actions based release process (squash) refactor (#2053)
Refs: https://codeberg.org/forgejo/forgejo/issues/2051
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/2053
Reviewed-by: Loïc Dachary <dachary@noreply.codeberg.org>
Co-authored-by: Earl Warren <contact@earl-warren.org>
Co-committed-by: Earl Warren <contact@earl-warren.org>
(cherry picked from commit 01abf4d505)

[CI] Forgejo Actions based release process (squash) no ownca

The private Forgejo instance trusted with the release signing keys no
longer requires the installation of the ownca certificate authority.

Refs: https://codeberg.org/forgejo/docs/pulls/338
(cherry picked from commit 72f9ae796d)
(cherry picked from commit b0ca4236d7)
(cherry picked from commit 81619cf8b5)
(cherry picked from commit 2cb32c1a2b)
(cherry picked from commit f817d97f85)
(cherry picked from commit 7499661326)
2024-02-05 13:33:59 +01:00
Earl Warren
55935657cf
[CI] upload the forgejo under test as an artifact for end-to-end
(cherry picked from commit ded1f27ebb)
(cherry picked from commit e452b18455)

[CI] upload the forgejo under test as an artifact for end-to-end (squash) use forgejo-pr

cascade a PR to https://code.forgejo.org/forgejo/end-to-end on the
forgejo-pr branch which will only run end-to-end tests relevant to a
Forgejo PR and not the entire end-to-end suite.

(cherry picked from commit 011de92174)
(cherry picked from commit 50290011b2)

[CI] upload the forgejo under test as an artifact for end-to-end (squash) after build

(cherry picked from commit ba35f42e3d)
(cherry picked from commit ddf43faecb)

[CI] upload the forgejo under test as an artifact for end-to-end (squash) do not display env

(cherry picked from commit d186ec3db4)
(cherry picked from commit 20e9d4bffb)

[CI] upload the forgejo under test as an artifact for end-to-end (squash) merge feature branches

(cherry picked from commit 83cd7a3ad9)
(cherry picked from commit 75fd819ee5)
(cherry picked from commit c6d0216929)
(cherry picked from commit 4a0ee31376)
(cherry picked from commit 5f440052fb)
(cherry picked from commit e603cd3dcf)
(cherry picked from commit f1c5e86d83)
2024-02-05 13:33:59 +01:00