Skip to content

Commit 1c3baff

Browse files
committed
Adding logic to take case the /export/home mount before delting /export/home
Adding the mount point logic back to delphix-platform.sh script Changing as per Seb-s comment to alter the softlink logic. Changing the code to previous version to validate the comments. Changing the delphix-legacy-link.service to perform the same steps next reboot like deferred upgrade. Creating a different service for taking care of soft /export/home -> /home DLPX-89763 DLPX-86523 delphix-platform changes Moved the code to create symlink to different script Removing the autofs handling as per the concerns raised by Seb and our validation Removing the softlink loginc from main.yml PR URL: https://www.github.com/delphix/delphix-platform/pull/477
1 parent 289dd79 commit 1c3baff

File tree

4 files changed

+71
-4
lines changed

4 files changed

+71
-4
lines changed

debian/preinst

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#!/bin/bash -eux
2+
#
3+
# Copyright 2025 Delphix
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
#
17+
18+
case $1 in
19+
upgrade)
20+
# Home directories were previously mounted under /export/home,
21+
# and this was changed to /home. This is the upgrade logic that
22+
# updates the /etc/fstab file to reflect that change.
23+
# Home directories will be mounted in both /export/home and /home
24+
# until the system is rebooted to ensure that running processes
25+
# referencing the old /export/home paths continue to function
26+
# while also enabling new logins under /home to work.
27+
fs_tab=/etc/fstab
28+
29+
if grep -q "\/export\/home" "$fs_tab"; then
30+
sed -i 's|/export/home|/home|g' "$fs_tab"
31+
mount /home
32+
fi
33+
34+
passwd_file=/etc/passwd
35+
if grep -q "\/export\/home" "$passwd_file"; then
36+
sed -i 's/\/export\/home/\/home/g' /etc/passwd
37+
fi
38+
39+
;;
40+
esac
41+
42+
exit 0

files/common/lib/systemd/system/delphix-platform.service

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ Before=rsync.service docker.service
2424
Type=oneshot
2525
ExecStart=/var/lib/delphix-platform/ansible/apply
2626
ExecStart=/var/lib/delphix-platform/dynamic-debug
27+
ExecStart=/var/lib/setup-export-home/export_home
2728
RemainAfterExit=yes
2829

2930
#

files/common/var/lib/delphix-platform/ansible/10-delphix-platform/roles/delphix-platform/tasks/main.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright 2018, 2023 Delphix
2+
# Copyright 2018, 2025 Delphix
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -22,7 +22,7 @@
2222
# it below; otherwise that task will fail.
2323
#
2424
- file:
25-
path: /export/home
25+
path: /home
2626
state: directory
2727
mode: 0755
2828

@@ -35,7 +35,7 @@
3535
shell: /bin/bash
3636
create_home: yes
3737
comment: Delphix User
38-
home: /export/home/delphix
38+
home: /home/delphix
3939

4040
#
4141
# In order for this locale to be used (e.g. by virtualization) we need
@@ -635,7 +635,7 @@
635635
636636
- name: Source bash completion
637637
blockinfile:
638-
dest: "/export/home/delphix/.bashrc"
638+
dest: "/home/delphix/.bashrc"
639639
block: |
640640
. /etc/bash_completion.d/systemctl
641641
. /etc/bash_completion.d/zfs
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#!/bin/bash
2+
#
3+
# Copyright (c) 2025 by Delphix. All rights reserved.
4+
#
5+
6+
#
7+
# This script ensures that the /export/home is a symlink
8+
# to /home.
9+
#
10+
11+
if ! mountpoint -q /export/home; then
12+
if [ ! -L /export/home ]; then
13+
echo 'Ensuring /export/home is a symlink to /home...'
14+
if [ -e /export/home ]; then
15+
echo 'Removing existing /export/home directory...'
16+
rm -rf /export/home
17+
fi
18+
if [ ! -d /export ]; then
19+
mkdir /export
20+
fi
21+
echo 'Creating symlink: /export/home -> /home'
22+
ln -s /home /export/home
23+
fi
24+
fi

0 commit comments

Comments
 (0)