Skip to content

Commit

Permalink
Merge pull request #1120 from nextcloud-releases/master
Browse files Browse the repository at this point in the history
  • Loading branch information
Altahrim committed Sep 14, 2024
2 parents 83423fd + 6c9083e commit a336369
Show file tree
Hide file tree
Showing 5 changed files with 107 additions and 47 deletions.
7 changes: 4 additions & 3 deletions build/config_builder
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,16 @@ foreach ($releases as $releaseName => $info) {
if (isset($latestReleases[$stability][$previousMajor])) {
$upgradeFrom = $latestReleases[$stability][$previousMajor];
$generatedConfig[$stability][$upgradeFrom][$deployPercent] = $generatedConfig[$stability][$major]['100'];
} elseif (isset($latestReleases['stable'][$major -1])) {
} elseif (isset($latestReleases['stable'][$previousMajor])) {
$upgradeFrom = $latestReleases['stable'][$previousMajor];
$generatedConfig[$stability][$upgradeFrom][$deployPercent] = $generatedConfig[$stability][$major]['100'];
}

// For stable versions, check if we can upgrade from a beta version
// Beta version are always deployed at 100%
if ($stability === 'stable') {
if (isset($latestReleases['beta'][$previousMajor])) {
$upgradeFrom = $latestReleases['beta'][$previousMajor];
if (isset($latestReleases['beta'][$previousMajor]) || $deployPercent !== 100) {
$upgradeFrom = $latestReleases['beta'][$previousMajor] ?? $latestReleases['stable'][$previousMajor];
$generatedConfig['beta'][$upgradeFrom][100] = $generatedConfig[$stability][$major]['100'];
}
}
Expand Down
66 changes: 41 additions & 25 deletions config/config.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,38 @@
<?php
return [
'stable' => [
'30' => [
'100' => [
'latest' => '30.0.0',
'internalVersion' => '30.0.0.14',
'downloadUrl' => 'https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip',
'web' => 'https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html',
'eol' => false,
'minPHPVersion' => '8.1',
'signature' => 'QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==',
],
],
'29.0.7.1' => [
'30' => [
'latest' => '30.0.0',
'internalVersion' => '30.0.0.14',
'downloadUrl' => 'https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip',
'web' => 'https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html',
'eol' => false,
'minPHPVersion' => '8.1',
'signature' => 'QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==',
],
],
'29' => [
'100' => [
'latest' => '29.0.7',
Expand Down Expand Up @@ -644,36 +676,20 @@
],
],
'beta' => [
'30' => [
'100' => [
'latest' => '30.0.0 RC5',
'internalVersion' => '30.0.0.13',
'downloadUrl' => 'https://download.nextcloud.com/server/prereleases/nextcloud-30.0.0rc5.zip',
'web' => 'https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html',
'eol' => false,
'minPHPVersion' => '8.1',
'signature' => 'sCkQx6CgJezLvF87Nkdtx83qLvW6Lnj+U6Lz0lKZocn1E957y/pnkUmWXs4FU33n
4tW9b6PGQJTCkP0jWqN7tEc80VII2ZrCESOzI3F8uQDYqoVWeOLxP7gYorXEh+oY
Fp5NU9eIsfipcH0AMGtBtuFy1+1mYeSfSMoFl5E/7CPaOQksD9MS4NRtQ6TYfK7L
W0yoo+NGcf9WGQ75z4g1p7l7+5tvpQ2a794Bg0eIIZePNUrJ/puqJ53x7nQ2d41U
qjIENY7lso6I1X+ggz2tFegXab7cRP0uUIelgOJMV9rPZIGfqMwmj5gWlcr1a847
/V2ry0elGhEPZAqn9zzBuw==',
],
],
'29.0.7.1' => [
'100' => [
'latest' => '30.0.0 RC5',
'internalVersion' => '30.0.0.13',
'downloadUrl' => 'https://download.nextcloud.com/server/prereleases/nextcloud-30.0.0rc5.zip',
'latest' => '30.0.0',
'internalVersion' => '30.0.0.14',
'downloadUrl' => 'https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip',
'web' => 'https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html',
'eol' => false,
'minPHPVersion' => '8.1',
'signature' => 'sCkQx6CgJezLvF87Nkdtx83qLvW6Lnj+U6Lz0lKZocn1E957y/pnkUmWXs4FU33n
4tW9b6PGQJTCkP0jWqN7tEc80VII2ZrCESOzI3F8uQDYqoVWeOLxP7gYorXEh+oY
Fp5NU9eIsfipcH0AMGtBtuFy1+1mYeSfSMoFl5E/7CPaOQksD9MS4NRtQ6TYfK7L
W0yoo+NGcf9WGQ75z4g1p7l7+5tvpQ2a794Bg0eIIZePNUrJ/puqJ53x7nQ2d41U
qjIENY7lso6I1X+ggz2tFegXab7cRP0uUIelgOJMV9rPZIGfqMwmj5gWlcr1a847
/V2ry0elGhEPZAqn9zzBuw==',
'signature' => 'QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==',
],
],
],
Expand Down
7 changes: 4 additions & 3 deletions config/releases.json
Original file line number Diff line number Diff line change
Expand Up @@ -93,8 +93,9 @@
"internalVersion": "29.0.7.1",
"signature": "rOd3OFdhAAULU7gI/fucuzwSe2FcSju8PiS0QgBInoNQZLJBl05QYOt+jC3clW2R+k7C6hyRHQ3/XU0K1gU9T9PSI2C87fIFjhzk0+J/s0QHxpvByv3i4pJ5yqdnA8m06Y6J7EJAHz+DQq0aAafci2Qlyzto8m5CXE59muv4lSMn9G24bOsp2zd/zkzZ1La7b8Uo3rLrIyJPRI9yocnMnddlYHX6YG5bXGc+eWeq6hPFg9gqm1KOu2fI6i9bH8KH4g/zRSuGF2eC+fmIPDCg/vL53kDNC9eWHzRCJ7EjY/VQ4NACdC3wZtvKAmnw2YqKEgIWmVloS4eF/VjQ11MOJw=="
},
"30.0.0 RC5": {
"internalVersion": "30.0.0.13",
"signature": "sCkQx6CgJezLvF87Nkdtx83qLvW6Lnj+U6Lz0lKZocn1E957y/pnkUmWXs4FU33n4tW9b6PGQJTCkP0jWqN7tEc80VII2ZrCESOzI3F8uQDYqoVWeOLxP7gYorXEh+oYFp5NU9eIsfipcH0AMGtBtuFy1+1mYeSfSMoFl5E/7CPaOQksD9MS4NRtQ6TYfK7LW0yoo+NGcf9WGQ75z4g1p7l7+5tvpQ2a794Bg0eIIZePNUrJ/puqJ53x7nQ2d41UqjIENY7lso6I1X+ggz2tFegXab7cRP0uUIelgOJMV9rPZIGfqMwmj5gWlcr1a847/V2ry0elGhEPZAqn9zzBuw=="
"30.0.0": {
"internalVersion": "30.0.0.14",
"signature": "QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yihTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1HMLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7htOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5DNUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9XjOoUiZRQ+fUfAGTnEZ+Lg==",
"deploy": 30
}
}
32 changes: 16 additions & 16 deletions tests/integration/features/beta.feature
Original file line number Diff line number Diff line change
Expand Up @@ -555,18 +555,18 @@ Feature: Testing the update scenario of beta releases
And the installation mtime is "11"
When The request is sent
Then The response is non-empty
And Update to version "30.0.0.13" is available
And URL to download is "https://download.nextcloud.com/server/prereleases/nextcloud-30.0.0rc5.zip"
And Update to version "30.0.0.14" is available
And URL to download is "https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip"
And URL to documentation is "https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html"
And EOL is set to "0"
And The signature is
"""
sCkQx6CgJezLvF87Nkdtx83qLvW6Lnj+U6Lz0lKZocn1E957y/pnkUmWXs4FU33n
4tW9b6PGQJTCkP0jWqN7tEc80VII2ZrCESOzI3F8uQDYqoVWeOLxP7gYorXEh+oY
Fp5NU9eIsfipcH0AMGtBtuFy1+1mYeSfSMoFl5E/7CPaOQksD9MS4NRtQ6TYfK7L
W0yoo+NGcf9WGQ75z4g1p7l7+5tvpQ2a794Bg0eIIZePNUrJ/puqJ53x7nQ2d41U
qjIENY7lso6I1X+ggz2tFegXab7cRP0uUIelgOJMV9rPZIGfqMwmj5gWlcr1a847
/V2ry0elGhEPZAqn9zzBuw==
QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==
"""

Scenario: Updating Nextcloud 30 on the beta channel
Expand All @@ -576,16 +576,16 @@ Feature: Testing the update scenario of beta releases
And the installation mtime is "11"
When The request is sent
Then The response is non-empty
And Update to version "30.0.0.13" is available
And URL to download is "https://download.nextcloud.com/server/prereleases/nextcloud-30.0.0rc5.zip"
And Update to version "30.0.0.14" is available
And URL to download is "https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip"
And URL to documentation is "https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html"
And EOL is set to "0"
And The signature is
"""
sCkQx6CgJezLvF87Nkdtx83qLvW6Lnj+U6Lz0lKZocn1E957y/pnkUmWXs4FU33n
4tW9b6PGQJTCkP0jWqN7tEc80VII2ZrCESOzI3F8uQDYqoVWeOLxP7gYorXEh+oY
Fp5NU9eIsfipcH0AMGtBtuFy1+1mYeSfSMoFl5E/7CPaOQksD9MS4NRtQ6TYfK7L
W0yoo+NGcf9WGQ75z4g1p7l7+5tvpQ2a794Bg0eIIZePNUrJ/puqJ53x7nQ2d41U
qjIENY7lso6I1X+ggz2tFegXab7cRP0uUIelgOJMV9rPZIGfqMwmj5gWlcr1a847
/V2ry0elGhEPZAqn9zzBuw==
QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==
"""
42 changes: 42 additions & 0 deletions tests/integration/features/stable.feature
Original file line number Diff line number Diff line change
Expand Up @@ -609,3 +609,45 @@ Feature: Testing the update scenario of stable releases
4g/zRSuGF2eC+fmIPDCg/vL53kDNC9eWHzRCJ7EjY/VQ4NACdC3wZtvKAmnw2YqK
EgIWmVloS4eF/VjQ11MOJw==
"""

Scenario: Updating Nextcloud 29 to 30 on the stable channel
Given There is a release with channel "stable"
And The received version is "29.0.7.1"
And The received PHP version is "8.1.0"
And the installation mtime is "11"
When The request is sent
Then The response is non-empty
And Update to version "30.0.0.14" is available
And URL to download is "https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip"
And URL to documentation is "https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html"
And EOL is set to "0"
And The signature is
"""
QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==
"""

Scenario: Updating Nextcloud 30 on the stable channel
Given There is a release with channel "stable"
And The received version is "30.0.0.1"
And The received PHP version is "8.1.0"
And the installation mtime is "11"
When The request is sent
Then The response is non-empty
And Update to version "30.0.0.14" is available
And URL to download is "https://download.nextcloud.com/server/releases/nextcloud-30.0.0.zip"
And URL to documentation is "https://docs.nextcloud.com/server/30/admin_manual/maintenance/upgrade.html"
And EOL is set to "0"
And The signature is
"""
QjU8BAz/b+ZSv1CFaom3VHE5IbT8giQgJ6/N00jPnWlRD8daXIsmIoLRe9UMl1yi
hTRRW3r7MQCa6RklmtZIAxsoRYlk7eEdbogKTODLRe9gsXdXF2KFisADl6bcEw1H
MLyVf7ncFnFlp9GYwpUEcGvJAzIcckkGTmBHAMTfmpSNQoijzdCP9ytKP2tJSe7h
tOXDKB0sOYzsO5A725ERye0RKfgMY7TRG0vq9tIxB7ydSykxVAGglKHDwl/6mn5D
NUfRJKep0nzpJXIOz+BiE6tTRxYMeRkUsI2WLPnPC3Ltu2Xl0u3iOoWaDfdD0Ox9
XjOoUiZRQ+fUfAGTnEZ+Lg==
"""

0 comments on commit a336369

Please sign in to comment.