[CI] test_env broken #316

Closed
opened 2023-02-04 15:43:24 +00:00 by dachary · 11 comments

https://gitea.com/gitea/test-env was upgraded two days ago and breaks the Forgejo builds. The container image could not be pinned because only the latest version is published, the previous ones are discarded.

https://gitea.com/gitea/test-env was upgraded two days ago and breaks the Forgejo builds. The container image could not be pinned because only the latest version is published, the previous ones are discarded. - [x] create `forgejo/test_env` as a fork of https://gitea.com/gitea/test-env - [x] add .woodpecker.yml to publish test_env container images in https://codeberg.org/forgejo-experimental - [x] modify the forgejo pipelines to use those container images instead of the one published by Gitea
dachary added the
bug
forgejo/ci
labels 2023-02-04 15:43:24 +00:00
dachary self-assigned this 2023-02-04 15:43:25 +00:00
Poster
Owner

To keep the CI working while this is being fixed, the Woodpecker host was reset with an older image docker tag sha256:33777b3348bed8dc6073215bef9120b88bb70e46aea50b7f395720294687c718 gitea/test_env:linux-amd64

It won't prune the images and the CI was made to not always pull. This is a hack and this fix must be completed sooner rather than later or it will break again.

To keep the CI working while this is being fixed, the Woodpecker host was reset with an older image `docker tag sha256:33777b3348bed8dc6073215bef9120b88bb70e46aea50b7f395720294687c718 gitea/test_env:linux-amd64` It won't prune the images and the CI was made to not always pull. This is a hack and this fix must be completed sooner rather than later or it will break again.
Poster
Owner

docker tag sha256:dd6560ae0a65 gitea/test_env:linux-amd64 is better (7 weeks ago).

`docker tag sha256:dd6560ae0a65 gitea/test_env:linux-amd64` is better (7 weeks ago).

fwiw I was able to get it working fine with the new test_env image without making any major changes, see 9ca75fac38

fwiw I was able to get it working fine with the new test_env image without making any major changes, see https://codeberg.org/crystal/forgejo/commit/9ca75fac38c4d651ae056d1a430f5a30a10bc522
Poster
Owner

@crystal rebased on top of Gitea is on progress and is going fine as well.

#51 (comment)

@crystal rebased on top of Gitea is on progress and is going fine as well. https://codeberg.org/forgejo/forgejo/issues/51#issuecomment-791580
dachary reopened this issue 2023-02-04 22:28:00 +00:00
Poster
Owner

At the moment test_env works on the main branch but fails with v1.18. If used with no change it will use lots of RAM and either abort or exceed the resources allocated to the CI. If the lint version is bumped to 1.51.0 it will fail because the branch does not comply.

At the moment test_env works on the main branch but fails with v1.18. If used with no change it will use lots of RAM and either abort or exceed the resources allocated to the CI. If the lint version is bumped to 1.51.0 it will fail because the branch does not comply.
Poster
Owner

https://codeberg.org/forgejo/test-env is where the work to version the container images happens.

https://codeberg.org/forgejo/test-env is where the work to version the container images happens.

the commit I linked earlier fixes the release branch :)

the commit I linked earlier fixes the release branch :)
Poster
Owner

fwiw I was able to get it working fine with the new test_env image without making any major changes, see 9ca75fac38

I was too focused and missed your commit, sorry about that: it would have worked fine.

> fwiw I was able to get it working fine with the new test_env image without making any major changes, see https://codeberg.org/crystal/forgejo/commit/9ca75fac38c4d651ae056d1a430f5a30a10bc522 I was too focused and missed your commit, sorry about that: it would have worked fine.
Poster
Owner

The solution I went for instead consists of pinning a test-env container image for v1.18 https://codeberg.org/forgejo/-/packages/container/test_env/1.18 and another for the main branch https://codeberg.org/forgejo/-/packages/container/test_env/main instead of assuming a single test environment will work for both, which breaks almost every time it is upgraded.

The solution I went for instead consists of pinning a test-env container image for v1.18 https://codeberg.org/forgejo/-/packages/container/test_env/1.18 and another for the main branch https://codeberg.org/forgejo/-/packages/container/test_env/main instead of assuming a single test environment will work for both, which breaks almost every time it is upgraded.

That seems like a good idea. I was somewhat frustrated when I realized that the there was no versioned tag for the one from Gitea.

That seems like a good idea. I was somewhat frustrated when I realized that the there was no versioned tag for the one from Gitea.
Poster
Owner

https://github.com/go-gitea/gitea/pull/22764/files someone noticed the Gitea v1.18 branch is broken. And still is broken with this change https://drone.gitea.io/go-gitea/gitea/66827/1/6

It won't be too long before a commit similar to yours is added to v1.18.

Having a tagged test env helps not break the builds at all.

All v1.18 & forgejo branches run the CI successfully using the tagged test environment, this issue can finally be closed.

https://github.com/go-gitea/gitea/pull/22764/files someone noticed the Gitea v1.18 branch is broken. And still is broken with this change https://drone.gitea.io/go-gitea/gitea/66827/1/6 It won't be too long before a commit [similar to yours](https://codeberg.org/crystal/forgejo/commit/9ca75fac38c4d651ae056d1a430f5a30a10bc522) is added to v1.18. Having a tagged test env helps not break the builds at all. All v1.18 & forgejo branches run the CI successfully using the tagged test environment, this issue can finally be closed.
Sign in to join this conversation.
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: forgejo/forgejo#316
There is no content yet.