Compare commits

..

47 Commits

Author SHA1 Message Date
oauth
c5466100b3 🎉 Release 4.2.0 2025-12-31 16:24:57 +00:00
oauth
60a2c2c6cc Merge branch 'origin/main' into 'next-release/main' 2025-12-31 16:24:56 +00:00
oauth
8f1aedac99 🎉 Release 4.2.0 2025-12-31 10:06:55 +00:00
oauth
42112e2a86 Merge branch 'origin/main' into 'next-release/main' 2025-12-31 10:06:54 +00:00
oauth
85d1dcdb93 🎉 Release 4.2.0 2025-12-31 09:18:58 +00:00
oauth
127e0e49d7 Merge branch 'origin/main' into 'next-release/main' 2025-12-31 09:18:57 +00:00
oauth
c475660c34 🎉 Release 4.2.0 2025-12-30 09:16:08 +00:00
oauth
4d3c336d8e Merge branch 'origin/main' into 'next-release/main' 2025-12-30 09:16:08 +00:00
oauth
ce094b03ff 🎉 Release 4.2.0 2025-12-30 04:47:21 +00:00
oauth
e6f4402877 Merge branch 'origin/main' into 'next-release/main' 2025-12-30 04:47:20 +00:00
oauth
95913c2a58 🎉 Release 4.2.0 2025-12-25 00:09:56 +00:00
oauth
60a72648a6 Merge branch 'origin/main' into 'next-release/main' 2025-12-25 00:09:56 +00:00
oauth
0bbd4019dc 🎉 Release 4.2.0 2025-12-24 08:37:50 +00:00
oauth
03e9fe0900 Merge branch 'origin/main' into 'next-release/main' 2025-12-24 08:37:49 +00:00
oauth
e3de4af197 🎉 Release 4.2.0 2025-12-23 11:25:36 +00:00
oauth
b440c1c40d Merge branch 'origin/main' into 'next-release/main' 2025-12-23 11:25:35 +00:00
oauth
2ae967fb9f 🎉 Release 4.2.0 2025-12-23 00:09:16 +00:00
oauth
8a0e0b789b Merge branch 'origin/main' into 'next-release/main' 2025-12-23 00:09:15 +00:00
oauth
e430e14abc 🎉 Release 4.2.0 2025-12-20 00:12:28 +00:00
oauth
7a183b96f5 Merge branch 'origin/main' into 'next-release/main' 2025-12-20 00:12:27 +00:00
oauth
ecd8354eda 🎉 Release 4.2.0 2025-12-19 20:51:06 +00:00
oauth
4d086a285f Merge branch 'origin/main' into 'next-release/main' 2025-12-19 20:51:05 +00:00
oauth
feb7699603 🎉 Release 4.2.0 2025-12-19 09:41:22 +00:00
oauth
9d4072e282 Merge branch 'origin/main' into 'next-release/main' 2025-12-19 09:41:21 +00:00
oauth
8e446d3995 🎉 Release 4.2.0 2025-12-19 00:09:53 +00:00
oauth
5331306cd3 Merge branch 'origin/main' into 'next-release/main' 2025-12-19 00:09:52 +00:00
oauth
1a08d11861 🎉 Release 4.2.0 2025-12-18 16:28:41 +00:00
oauth
466c81cb2b Merge branch 'origin/main' into 'next-release/main' 2025-12-18 16:28:40 +00:00
oauth
ccf22a6cfc 🎉 Release 4.2.0 2025-12-18 13:08:24 +00:00
oauth
ac3654b26e Merge branch 'origin/main' into 'next-release/main' 2025-12-18 13:08:24 +00:00
oauth
03624ed469 🎉 Release 4.2.0 2025-12-18 12:35:32 +00:00
oauth
191a2d9d1e Merge branch 'origin/main' into 'next-release/main' 2025-12-18 12:35:31 +00:00
oauth
d2676bead7 🎉 Release 4.2.0 2025-12-18 10:57:47 +00:00
oauth
f61ddd6e32 Merge branch 'origin/main' into 'next-release/main' 2025-12-18 10:57:46 +00:00
oauth
7e8cdd922c 🎉 Release 4.2.0 2025-12-18 00:09:11 +00:00
oauth
4df7b81b9d Merge branch 'origin/main' into 'next-release/main' 2025-12-18 00:09:10 +00:00
oauth
f1e4f2c53a 🎉 Release 4.2.0 2025-12-17 00:07:30 +00:00
oauth
67e532b89c Merge branch 'origin/main' into 'next-release/main' 2025-12-17 00:07:29 +00:00
oauth
7751e7c6fd 🎉 Release 4.2.0 2025-12-16 16:18:40 +00:00
oauth
8765a8ef57 Merge branch 'origin/main' into 'next-release/main' 2025-12-16 16:18:39 +00:00
oauth
a5eca7fd6e 🎉 Release 4.2.0 2025-12-16 12:25:51 +00:00
oauth
ac9fe1e61e Merge branch 'origin/main' into 'next-release/main' 2025-12-16 12:25:51 +00:00
oauth
b11b9724a4 🎉 Release 4.2.0 2025-12-16 12:05:40 +00:00
oauth
43650ff56c Merge branch 'origin/main' into 'next-release/main' 2025-12-16 12:05:39 +00:00
oauth
e59c5741ea 🎉 Release 4.2.0 2025-12-16 10:33:28 +00:00
oauth
6b2eb6f3e1 Merge branch 'origin/main' into 'next-release/main' 2025-12-16 10:33:27 +00:00
oauth
b6b8ddf387 🎉 Release 4.2.0 2025-12-16 08:45:34 +00:00
4 changed files with 65 additions and 141 deletions

View File

@@ -103,13 +103,13 @@ config = {
"basic": {
"suites": [
"apiArchiver",
# "apiContract",
# "apiCors",
# "apiAsyncUpload",
# "apiDownloads",
# "apiDepthInfinity",
# "apiLocks",
# "apiActivities",
"apiContract",
"apiCors",
"apiAsyncUpload",
"apiDownloads",
"apiDepthInfinity",
"apiLocks",
"apiActivities",
],
"skip": False,
},
@@ -117,7 +117,7 @@ config = {
"suites": [
"apiSettings",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
"emailNeeded": True,
"extraTestEnvironment": {
@@ -135,7 +135,7 @@ config = {
},
"graph": {
"suites": [
# "apiGraph",
"apiGraph",
"apiServiceAvailability",
# skip tests for collaborativePosix. see https://github.com/opencloud-eu/opencloud/issues/2036
#"collaborativePosix",
@@ -147,38 +147,38 @@ config = {
"suites": [
"apiGraphUserGroup",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
},
"spaces": {
"suites": [
"apiSpaces",
],
"skip": True,
"skip": False,
},
"spacesShares": {
"suites": [
"apiSpacesShares",
],
"skip": True,
"skip": False,
},
"spacesDavOperation": {
"suites": [
"apiSpacesDavOperation",
],
"skip": True,
"skip": False,
},
"search1": {
"suites": [
"apiSearch1",
],
"skip": True,
"skip": False,
},
"search2": {
"suites": [
"apiSearch2",
],
"skip": True,
"skip": False,
},
"sharingNg": {
"suites": [
@@ -186,23 +186,23 @@ config = {
"apiSharingNg1",
"apiSharingNg2",
],
"skip": True,
"skip": False,
},
"sharingNgShareInvitation": {
"suites": [
"apiSharingNgShareInvitation",
],
"skip": True,
"skip": False,
},
"sharingNgLinkShare": {
"suites": [
"apiSharingNgLinkSharePermission",
"apiSharingNgLinkShareRoot",
],
"skip": True,
"skip": False,
},
"accountsHashDifficulty": {
"skip": True,
"skip": False,
"suites": [
"apiAccountsHashDifficulty",
],
@@ -212,7 +212,7 @@ config = {
"suites": [
"apiNotification",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
"emailNeeded": True,
"extraTestEnvironment": {
@@ -232,7 +232,7 @@ config = {
"suites": [
"apiAntivirus",
],
"skip": True,
"skip": False,
"antivirusNeeded": True,
"generateVirusFiles": True,
"extraServerEnvironment": {
@@ -248,14 +248,14 @@ config = {
"suites": [
"apiSearchContent",
],
"skip": True,
"skip": False,
"tikaNeeded": True,
},
"ocm": {
"suites": [
"apiOcm",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
"federationServer": True,
"emailNeeded": True,
@@ -281,7 +281,7 @@ config = {
"suites": [
"apiCollaboration",
],
"skip": True,
"skip": False,
"collaborationServiceNeeded": True,
"extraServerEnvironment": {
"GATEWAY_GRPC_ADDR": "0.0.0.0:9142",
@@ -291,14 +291,14 @@ config = {
"suites": [
"apiAuthApp",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
},
"cliCommands": {
"suites": [
"cliCommands",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
"antivirusNeeded": True,
"generateVirusFiles": True,
@@ -314,7 +314,7 @@ config = {
"suites": [
"apiTenancy",
],
"skip": True,
"skip": False,
"withRemotePhp": [True],
"ldapNeeded": True,
"extraTestEnvironment": {
@@ -348,12 +348,12 @@ config = {
"coreApiTests": {
"numberOfParts": 7,
"skip": False,
"skipExceptParts": [1],
"skipExceptParts": [],
"storages": ["posix"],
},
"e2eTests": {
"part": {
"skip": True,
"skip": False,
"totalParts": 4, # divide and run all suites in parts (divide pipelines)
# suites to skip
"xsuites": [
@@ -377,7 +377,7 @@ config = {
},
"e2eMultiService": {
"testSuites": {
"skip": True,
"skip": False,
"suites": [
"smoke",
"shares",
@@ -492,8 +492,6 @@ def main(ctx):
none
"""
return savePipelineNumber(ctx) + test()
if ctx.build.event == "cron" and ctx.build.sender == "translation-sync":
return translation_sync(ctx)
@@ -568,54 +566,6 @@ def main(ctx):
pipelineSanityChecks(pipelines)
return pipelines
def savePipelineNumber(ctx):
base_url = "https://raw.githubusercontent.com/%s" % repo_slug
script_link = "%s/%s/tests/config/woodpecker/upload_pipeline_info.sh" % (base_url, ctx.build.commit)
return [{
"name": "save-pipeline-info",
"skip_clone": True,
"steps": [{
"name": "upload-info",
"image": MINIO_MC,
"environment": MINIO_MC_ENV,
"commands": [
"curl -s -o upload_pipeline_info.sh %s" % script_link,
"bash -x upload_pipeline_info.sh",
],
}],
"when": [
{
"event": ["push", "manual"],
"branch": ["main", "stable-*"],
},
event["tag"],
event["cron"],
event["pull_request"],
],
}]
def test():
return [{
"name": "test-pipeline",
"steps": [{
"name": "get-previous-pipeline",
"image": OC_UBUNTU,
"commands": [
"bash -x tests/config/woodpecker/evaluate_pipeline.sh",
],
}],
"depends_on": ["save-pipeline-info"],
"when": [
{
"event": ["push", "manual"],
"branch": ["main", "stable-*"],
},
event["tag"],
event["cron"],
event["pull_request"],
],
}]
def cachePipeline(ctx, name, steps):
return {
"name": "build-%s-cache" % name,
@@ -2335,9 +2285,9 @@ def opencloudServer(storage = "decomposed", accounts_hash_difficulty = 4, depend
"%s/bin/ocwrapper serve --bin %s --url %s --admin-username admin --admin-password admin" % (dirs["ocWrapper"], dirs["opencloudBin"], environment["OC_URL"]),
]
else:
server_commands.append(
server_commands += [
"%s server" % dirs["opencloudBin"],
)
]
wait_for_opencloud = {
"name": "wait-for-%s" % container_name,

View File

@@ -1,5 +1,38 @@
# Changelog
## [4.2.0](https://github.com/opencloud-eu/opencloud/releases/tag/v4.2.0) - 2025-12-31
### ❤️ Thanks to all contributors! ❤️
@ScharfViktor, @butonic, @dragonchaser, @fschade, @micbar, @rhafer, @saw-jan
### 🐛 Bug Fixes
- fix(thumbnailer): missing font panic [[#2097](https://github.com/opencloud-eu/opencloud/pull/2097)]
- Remove sub-service binary entrypoints and fix antivirus only server cmd [[#2043](https://github.com/opencloud-eu/opencloud/pull/2043)]
- fix(thumbnailer): respect image boundaries and text wrappings [[#2062](https://github.com/opencloud-eu/opencloud/pull/2062)]
- fix: cobra viper flags and env [[#2047](https://github.com/opencloud-eu/opencloud/pull/2047)]
- fix service name in suture logs [[#2052](https://github.com/opencloud-eu/opencloud/pull/2052)]
### ✅ Tests
- [tests-only] test: wait post-processing to finish for MKCOL requests [[#2092](https://github.com/opencloud-eu/opencloud/pull/2092)]
- [tests-only] test: fix API tests [[#2087](https://github.com/opencloud-eu/opencloud/pull/2087)]
- [full-ci] use graph api in the enforcePasswordPublicLink.feature [[#2050](https://github.com/opencloud-eu/opencloud/pull/2050)]
- [full-ci][tests-only] test: check last email content with retries as emails can be delayed [[#2038](https://github.com/opencloud-eu/opencloud/pull/2038)]
- skip collaborativePosix tests in CI [[#2039](https://github.com/opencloud-eu/opencloud/pull/2039)]
### 📈 Enhancement
- allow http2 connections to proxy [[#2040](https://github.com/opencloud-eu/opencloud/pull/2040)]
- migrate from urfave/cli to spf13/cobra [[#1954](https://github.com/opencloud-eu/opencloud/pull/1954)]
### 📦️ Dependencies
- build(deps): bump github.com/testcontainers/testcontainers-go/modules/opensearch from 0.39.0 to 0.40.0 [[#1967](https://github.com/opencloud-eu/opencloud/pull/1967)]
- build(deps): bump golang.org/x/net from 0.47.0 to 0.48.0 [[#2061](https://github.com/opencloud-eu/opencloud/pull/2061)]
- build(deps): bump github.com/open-policy-agent/opa from 1.10.1 to 1.11.0 [[#1930](https://github.com/opencloud-eu/opencloud/pull/1930)]
## [4.1.0](https://github.com/opencloud-eu/opencloud/releases/tag/v4.1.0) - 2025-12-15
### ❤️ Thanks to all contributors! ❤️

View File

@@ -1,32 +0,0 @@
#!/bin/bash
set -e
# set -x
# INFO_URL="https://s3.ci.opencloud.eu/public/$CI_REPO_NAME/pipelines/$CI_COMMIT_SHA/pipeline_info.json"
INFO_URL="https://s3.ci.opencloud.eu/public/$CI_REPO_NAME/pipelines/fcbcb3d9cc73fcd1cab49774632a92b531718a76/pipeline_info.json"
file_status=$(curl -s -o pipeline_info.json "$INFO_URL" -w "%{http_code}")
if [ "$file_status" == "404" ];
then
echo "[INFO] No matching previous pipeline found. Continue pipeline..."
exit 0
elif [ "$file_status" != "200" ];
then
echo -e "[ERROR] Failed to fetch previous pipeline info.\n URL: $INFO_URL\n Status: $file_status"
exit 1
fi
cat pipeline_info.json
overall_status=$(jq -r '.status' pipeline_info.json)
# re-run all pipelines
if [ "$overall_status" == "success" ];
then
exit 0
fi
# workflows=$(echo "$pipeline" | jq -r '.workflows[] | select(.name == "'"$CI_WORKFLOW_NAME"'")')
# echo "$CI_WORKFLOW_NAME"

View File

@@ -1,27 +0,0 @@
#!/bin/bash
set -e
CI_COMMIT_SHA=fcbcb3d9cc73fcd1cab49774632a92b531718a76
mc alias set s3 $MC_HOST $AWS_ACCESS_KEY_ID $AWS_SECRET_ACCESS_KEY
# check previous pipeline
URL="https://s3.ci.opencloud.eu/$PUBLIC_BUCKET/$CI_REPO_NAME/pipelines/$CI_COMMIT_SHA/prev_pipeline"
status=$(curl -s -o prev_pipeline "$URL" -w '%{http_code}')
if [ "$status" == "200" ];
then
source prev_pipeline
REPO_ID=$(printf '%s' "$CI_PIPELINE_URL" | sed 's|.*/repos/\([0-9]*\)/.*|\1|')
p_status=$(curl -s -o pipeline_info.json "$CI_SYSTEM_URL/api/repos/$REPO_ID/pipelines/$PREV_PIPELINE_NUMBER" -w "%{http_code}")
if [ "$p_status" != "200" ];
then
echo -e "[ERROR] Failed to fetch previous pipeline info.\n URL: $CI_SYSTEM_URL/api/repos/$REPO_ID/pipelines/$PREV_PIPELINE_NUMBER\n Status: $p_status"
exit 1
fi
# update previous pipeline info
mc cp -a pipeline_info.json "s3/$PUBLIC_BUCKET/$CI_REPO_NAME/pipelines/$CI_COMMIT_SHA/"
fi
# upload current as previous for next pipeline
echo "PREV_PIPELINE_NUMBER=$CI_PIPELINE_NUMBER" > prev_pipeline
mc cp -a prev_pipeline "s3/$PUBLIC_BUCKET/$CI_REPO_NAME/pipelines/$CI_COMMIT_SHA/"