Skip to content

Commit 220a504

Browse files
committed
Merge branch 'feature/PB-33112_52-Publish-production-API' into 'master'
PB-33112 Publish production API (v4.7.0) See merge request passbolt/passbolt-ce-api!279
2 parents 7a80b3f + 148d97e commit 220a504

File tree

304 files changed

+19475
-4662
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

304 files changed

+19475
-4662
lines changed

.gitlab-ci/jobs/help_site_notes.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ help_site_notes:
1212
exit 0
1313
fi
1414
apt update && apt install -y git curl gpg
15-
curl -L https://gitlab.com/gitlab-org/cli/-/releases/v1.30.0/downloads/glab_1.30.0_Linux_x86_64.deb --output glab.deb
15+
curl -L https://gitlab.com/gitlab-org/cli/-/releases/v1.38.0/downloads/glab_1.38.0_Linux_x86_64.deb --output glab.deb
1616
dpkg -i glab.deb
1717
cat "$HELP_SITE_GPG_KEY" > "$GPG_KEY_PATH"
1818
bash .gitlab-ci/scripts/bin/help_site.sh

.gitlab-ci/scripts/bin/help_site.sh

+4-4
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ GIT_CI_TOKEN_NAME=${GIT_CI_TOKEN_NAME:-gitlab-ci-token}
1414
ACCESS_TOKEN_NAME="help-site-bot"
1515
HELP_SITE_REPO="gitlab.com/passbolt/passbolt-help.git"
1616
RELEASE_NOTES_PATH="../RELEASE_NOTES.md"
17-
17+
TARGET_MR_BRANCH="develop"
1818

1919
function create_release_notes() {
2020
title="$(grep name ../config/version.php | awk -F "'" '{print $4}')"
@@ -25,7 +25,7 @@ function create_release_notes() {
2525
permalink="/releases/$PASSBOLT_FLAVOUR/$(grep name ../config/version.php | awk -F "'" '{print $4}' | tr ' ' '_' | tr '[:upper:]' '[:lower:]')"
2626
date="$(date +'%Y-%m-%d')"
2727

28-
cat << EOF >> _releases/"$PASSBOLT_FLAVOUR"/"$CI_COMMIT_TAG".md
28+
cat <<EOF >>_releases/"$PASSBOLT_FLAVOUR"/"$CI_COMMIT_TAG".md
2929
---
3030
title: $title
3131
slug: $slug
@@ -40,7 +40,7 @@ date: $date
4040
---
4141
EOF
4242

43-
cat $RELEASE_NOTES_PATH >> _releases/"$PASSBOLT_FLAVOUR"/"$CI_COMMIT_TAG".md
43+
cat $RELEASE_NOTES_PATH >>_releases/"$PASSBOLT_FLAVOUR"/"$CI_COMMIT_TAG".md
4444
}
4545

4646
setup_gpg_key "$GPG_KEY_PATH" "$GPG_PASSPHRASE" "$GPG_KEY_GRIP"
@@ -55,6 +55,6 @@ git checkout -b release_notes_"$CI_COMMIT_TAG"_"$PASSBOLT_FLAVOUR"
5555
git add _releases/"$PASSBOLT_FLAVOUR"/"$CI_COMMIT_TAG".md
5656
git commit -m ":robot: Automatically added release notes for version $CI_COMMIT_TAG $PASSBOLT_FLAVOUR"
5757
glab auth login --token "$HELPSITE_TOKEN"
58-
mr_url=$(glab mr create -s release_notes_"$CI_COMMIT_TAG"_"$PASSBOLT_FLAVOUR" -b master -d ":robot: Release notes for $CI_COMMIT_TAG $PASSBOLT_FLAVOUR" -t "Release notes for $PASSBOLT_FLAVOUR $CI_COMMIT_TAG" --push --repo "passbolt/passbolt-help" | grep 'https://gitlab.com/passbolt/passbolt-help/-/merge_requests/')
58+
mr_url=$(glab mr create -s release_notes_"$CI_COMMIT_TAG"_"$PASSBOLT_FLAVOUR" -b "$TARGET_MR_BRANCH" -d ":robot: Release notes for $CI_COMMIT_TAG $PASSBOLT_FLAVOUR" -t "Release notes for $PASSBOLT_FLAVOUR $CI_COMMIT_TAG" --push --repo "passbolt/passbolt-help" | grep 'https://gitlab.com/passbolt/passbolt-help/-/merge_requests/')
5959
cd -
6060
bash .gitlab-ci/scripts/bin/slack-status-messages.sh ":notebook: New helpsite release notes created for $CI_COMMIT_TAG $PASSBOLT_FLAVOUR" "$mr_url"

CHANGELOG.md

+73
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,79 @@
22
All notable changes to this project will be documented in this file.
33
This project adheres to [Semantic Versioning](http://semver.org/).
44

5+
## [4.7.0] - 2024-04-30
6+
### Added
7+
- PB-30330 Add HTTP HEAD method support to /healthcheck/status.json to support more uptime monitoring tools (GITHUB #507)
8+
- PB-26156 As an administrator I can configure SMTP to use TLS with a self-signed cert on my mail server (GITHUB #498)
9+
10+
### Security
11+
- PB-30255 As an authenticated user I cannot access to the healthcheck endpoint when debug is on
12+
13+
### Fixed
14+
- PB-30379 As an authenticating user I should not get a 500 if the gpg_auth is not an array
15+
- PB-32889 As an administrator I should not get an exception when running core healthcheck and the host cannot be resolved
16+
- PB-32928 As user I should see the accurate URL in the email footer when passbolt runs on multiple instances
17+
- PB-32566 As a user setting up my account I should not get an unexpected 500
18+
- PB-32903 Fix deprecation error on password expiry settings validation
19+
20+
### Maintenance
21+
- PB-29983 Refactor health check code domain for better maintenance
22+
- PB-30394 Moves code in ActionLogsModelListener into a dedicated service
23+
- PB-32881 Disable by default all plugins in integration tests
24+
- PB-32978 Use dependency proxy to reduce docker pull limit
25+
- PB-22605 Refactor ShareSearchControllerTest, SecretViewControllerTest and GroupsDeleteControllerTest with fixture factories
26+
- PB-32594 Add tests for SecretCreateService
27+
28+
## [4.7.0-rc.1] - 2024-04-26
29+
### Added
30+
- PB-30330 Add HTTP HEAD method support to /healthcheck/status.json to support more uptime monitoring tools (GITHUB #507)
31+
- PB-26156 As an administrator I can configure SMTP to use TLS with a self-signed cert on my mail server (GITHUB #498)
32+
33+
### Security
34+
- PB-30255 As an authenticated user I cannot access to the healthcheck endpoint when debug is on
35+
36+
### Fixed
37+
- PB-30379 As an authenticating user I should not get a 500 if the gpg_auth is not an array
38+
- PB-32889 As an administrator I should not get an exception when running core healthcheck and the host cannot be resolved
39+
- PB-32928 As user I should see the accurate URL in the email footer when passbolt runs on multiple instances
40+
- PB-32566 As a user setting up my account I should not get an unexpected 500
41+
- PB-32903 Fix deprecation error on password expiry settings validation
42+
43+
### Maintenance
44+
- PB-29983 Refactor health check code domain for better maintenance
45+
- PB-30394 Moves code in ActionLogsModelListener into a dedicated service
46+
- PB-32881 Disable by default all plugins in integration tests
47+
- PB-32978 Use dependency proxy to reduce docker pull limit
48+
- PB-22605 Refactor ShareSearchControllerTest, SecretViewControllerTest and GroupsDeleteControllerTest with fixture factories
49+
- PB-32594 Add tests for SecretCreateService
50+
51+
## [4.7.0-test.2] - 2024-04-26
52+
### Fixed
53+
- PB-33084 New release with fixed release pipes
54+
55+
## [4.7.0-test.1] - 2024-04-24
56+
### Added
57+
- PB-30330 Add HTTP HEAD method support to /healthcheck/status.json to support more uptime monitoring tools (GITHUB #507)
58+
- PB-26156 As an administrator I can configure SMTP to use TLS with a self-signed cert on my mail server (GITHUB #498)
59+
60+
### Security
61+
- PB-30255 As an authenticated user I cannot access to the healthcheck endpoint when debug is on
62+
63+
### Fixed
64+
- PB-30379 As an authenticating user I should not get a 500 if the gpg_auth is not an array
65+
- PB-32889 As an administrator I should not get an exception when running core healthcheck and the host cannot be resolved
66+
- PB-32928 As user I should see the accurate URL in the email footer when passbolt runs on multiple instances
67+
- PB-32566 As a user setting up my account I should not get an unexpected 500
68+
- PB-32903 Fix deprecation error on password expiry settings validation
69+
70+
### Maintenance
71+
- PB-29983 Refactor health check code domain for better maintenance
72+
- PB-30394 Moves code in ActionLogsModelListener into a dedicated service
73+
- PB-32881 Disable by default all plugins in integration tests
74+
- PB-32978 Use dependency proxy to reduce docker pull limit
75+
- PB-22605 Refactor ShareSearchControllerTest, SecretViewControllerTest and GroupsDeleteControllerTest with fixture factories
76+
- PB-32594 Add tests for SecretCreateService
77+
578
## [4.6.2] - 2024-04-11
679
### Security
780
- PB-32932 Fix error template title

RELEASE_NOTES.md

+24-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,28 @@
1-
Release song: https://youtu.be/3WOZwwRH6XU?si=jvTiezg7eEEpEh-S
1+
Release song: https://youtu.be/3L4YrGaR8E4
22

3-
Passbolt is pleased to announce the immediate availability of version v4.6.2. This version is a targeted security release of both the API and the browser extension focusing on fixing security issues reported by security researchers.
3+
Passbolt Community Edition v4.7 is a maintenance release that resolves multiple issues identified by the community. Furthermore, this release supports the commitment to improving customization options and integration features, making it easier for organizations to tailor the system to their specific needs.
44

5-
We would like to express our appreciation to the community for their assistance in making Passbolt more secure. Further details about the issues will be shared in a separate communication.
5+
A key enhancement in this release is the ability to use custom SSL certificates for SMTP server connections. This long-awaited feature is particularly beneficial for organizations operating in air-gapped environments or those using their own root CAs, enabling passbolt to more securely integrate with internal tools.
6+
7+
## [4.7.0] - 2024-04-30
8+
### Added
9+
- PB-30330 Add HTTP HEAD method support to /healthcheck/status.json to support more uptime monitoring tools (GITHUB #507)
10+
- PB-26156 As an administrator I can configure SMTP to use TLS with a self-signed cert on my mail server (GITHUB #498)
611

7-
## [4.6.2] - 2024-04-11
812
### Security
9-
- PB-32932 Fix error template title
13+
- PB-30255 As an authenticated user I cannot access to the healthcheck endpoint when debug is on
14+
15+
### Fixed
16+
- PB-30379 As an authenticating user I should not get a 500 if the gpg_auth is not an array
17+
- PB-32889 As an administrator I should not get an exception when running core healthcheck and the host cannot be resolved
18+
- PB-32928 As user I should see the accurate URL in the email footer when passbolt runs on multiple instances
19+
- PB-32566 As a user setting up my account I should not get an unexpected 500
20+
- PB-32903 Fix deprecation error on password expiry settings validation
21+
22+
### Maintenance
23+
- PB-29983 Refactor health check code domain for better maintenance
24+
- PB-30394 Moves code in ActionLogsModelListener into a dedicated service
25+
- PB-32881 Disable by default all plugins in integration tests
26+
- PB-32978 Use dependency proxy to reduce docker pull limit
27+
- PB-22605 Refactor ShareSearchControllerTest, SecretViewControllerTest and GroupsDeleteControllerTest with fixture factories
28+
- PB-32594 Add tests for SecretCreateService

config/default.php

+7-1
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,13 @@
289289
],
290290
'smtpSettings' => [
291291
// A typo is here covered for backward compatibility
292-
'enabled' => filter_var(env('PASSBOLT_PLUGINS_SMTP_SETTINGS_ENABLED', env('PASSBOLT_PLUGINS_SMTP_SETTINGS', true)), FILTER_VALIDATE_BOOLEAN)
292+
'enabled' => filter_var(env('PASSBOLT_PLUGINS_SMTP_SETTINGS_ENABLED', env('PASSBOLT_PLUGINS_SMTP_SETTINGS', true)), FILTER_VALIDATE_BOOLEAN),
293+
'security' => [
294+
'sslVerifyPeer' => filter_var(env('PASSBOLT_PLUGINS_SMTP_SETTINGS_SECURITY_SSL_VERIFY_PEER', true), FILTER_VALIDATE_BOOLEAN),
295+
'sslVerifyPeerName' => filter_var(env('PASSBOLT_PLUGINS_SMTP_SETTINGS_SECURITY_SSL_VERIFY_PEER_NAME', true), FILTER_VALIDATE_BOOLEAN),
296+
'sslAllowSelfSigned' => filter_var(env('PASSBOLT_PLUGINS_SMTP_SETTINGS_SECURITY_SSL_ALLOW_SELF_SIGNED', false), FILTER_VALIDATE_BOOLEAN),
297+
'sslCafile' => env('PASSBOLT_PLUGINS_SMTP_SETTINGS_SECURITY_SSL_CAFILE', null),
298+
],
293299
],
294300
'selfRegistration' => [
295301
'enabled' => filter_var(env('PASSBOLT_PLUGINS_SELF_REGISTRATION_ENABLED', true), FILTER_VALIDATE_BOOLEAN)

config/routes.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@
164164
$routes->setExtensions(['json']);
165165

166166
$routes->connect('/status', ['prefix' => 'Healthcheck', 'controller' => 'HealthcheckStatus', 'action' => 'status'])
167-
->setMethods(['GET']);
167+
->setMethods(['GET', 'HEAD']);
168168

169169
$routes->connect('/', ['prefix' => 'Healthcheck', 'controller' => 'HealthcheckIndex', 'action' => 'index'])
170170
->setMethods(['GET']);

config/version.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?php
22
return [
33
'passbolt' => [
4-
'version' => '4.6.2',
5-
'name' => 'One Nation Under A Groove',
4+
'version' => '4.7.0',
5+
'name' => 'Bulls On Parade',
66
],
77
'php' => [
88
'minVersion' => '7.4',

0 commit comments

Comments
 (0)