Skip to content

Commit 77bd481

Browse files
committed
Merge branch 'feature/PB-47168_Test-non-root-docker-for-log-dir-perm-issue-with-uni-ljubljana' into 'master'
PB-47168 add log permissions to entrypoint scripts See merge request passbolt/passbolt_docker!244
2 parents ca2e35d + b997737 commit 77bd481

3 files changed

Lines changed: 32 additions & 2 deletions

File tree

debian/Dockerfile.openshift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,8 @@ RUN chmod 0644 /etc/supervisor/conf.d/* \
118118
&& chmod 0755 /usr/bin/wait-for.sh
119119

120120
# Changes ownership of some files for Openshift compatibility
121-
RUN chgrp -R 0 /var/lib/passbolt /etc/passbolt /etc/supervisor /etc/environment /var/log/supervisor /var/log/nginx && \
122-
chmod -R g=u /var/lib/passbolt /etc/passbolt /etc/supervisor /etc/environment /var/log/supervisor /var/log/nginx && \
121+
RUN chgrp -R 0 /var/lib/passbolt /etc/passbolt /etc/supervisor /etc/environment /var/log/supervisor /var/log/nginx /var/log/passbolt && \
122+
chmod -R g=u /var/lib/passbolt /etc/passbolt /etc/supervisor /etc/environment /var/log/supervisor /var/log/nginx /var/log/passbolt && \
123123
chgrp 0 /var/run && \
124124
chmod g=u /var/run && \
125125
mkdir /var/run/php && \

debian/Dockerfile.rootless

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ RUN sed -i 's,listen 80;,listen 8080;,' /etc/nginx/sites-enabled/nginx-passbolt.
100100
&& ln -sf /dev/stdout /var/log/nginx/passbolt-access.log \
101101
&& ln -sf /dev/stderr /var/log/nginx/passbolt-error.log \
102102
&& chown -R www-data:0 /var/log/supervisor \
103+
&& chown -R www-data:0 /var/log/passbolt \
104+
&& chmod -R g+w /var/log/passbolt \
103105
&& touch /var/www/.profile \
104106
&& chown www-data:www-data /var/www/.profile \
105107
&& sed -i 's,www-data\s,,' /etc/cron.d/$PASSBOLT_PKG \

spec/docker_image/image_spec.rb

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,34 @@
194194
end
195195
end
196196

197+
describe '/var/log/passbolt' do
198+
it 'exists and is a directory' do
199+
expect(file('/var/log/passbolt')).to exist
200+
expect(file('/var/log/passbolt')).to be_a_directory
201+
end
202+
203+
it 'has the correct ownership' do
204+
expect(file('/var/log/passbolt')).to be_owned_by(passbolt_owner)
205+
if ENV['ROOTLESS'] == 'true'
206+
expect(file('/var/log/passbolt')).to be_grouped_into('0')
207+
else
208+
expect(file('/var/log/passbolt')).to be_grouped_into($config_group)
209+
end
210+
end
211+
212+
it 'is writable by the owner' do
213+
expect(file('/var/log/passbolt')).to be_writable.by('owner')
214+
end
215+
216+
it 'is writable by the group' do
217+
if ENV['ROOTLESS'] == 'true'
218+
expect(file('/var/log/passbolt')).to be_writable.by('group')
219+
else
220+
skip 'Group writability only required for rootless/openshift images'
221+
end
222+
end
223+
end
224+
197225
describe '/etc/environment' do
198226
it 'exists and has the correct permissions' do
199227
expect(file('/etc/environment')).to exist

0 commit comments

Comments
 (0)