Skip to content

Commit 15794af

Browse files
committed
deb:rpm: migrate existing config as default config
Signed-off-by: Daijiro Fukuda <fukuda@clear-code.com>
1 parent 43e0ba0 commit 15794af

File tree

4 files changed

+34
-16
lines changed

4 files changed

+34
-16
lines changed

fluent-package/apt/systemd-test/update-from-v4.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ systemctl status --no-pager td-agent
3636
systemctl status --no-pager fluentd
3737

3838
# Test: config migration
39-
test -L /etc/td-agent
39+
test -h /etc/td-agent
40+
test -h /etc/fluent/fluentd.conf
41+
test $(readlink "/etc/fluent/fluentd.conf") = "/etc/fluent/td-agent.conf"
4042
test -e /etc/td-agent/td-agent.conf
4143

4244
# Test: log file migration

fluent-package/templates/package-scripts/fluent-package/deb/postinst

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,15 +66,23 @@ migration_from_v4_main_process() {
6666
echo "Migrating from /etc/<%= compat_service_name %>/plugin/ to /etc/<%= package_dir %>/plugin/..."
6767
mv -f /etc/<%= compat_service_name %>/plugin/* /etc/<%= package_dir %>/plugin/
6868
fi
69+
create_link_for_config=n
70+
if [ -f /etc/<%= compat_package_dir %>/<%= compat_service_name %>.conf -a ! -e /etc/<%= compat_package_dir %>/<%= service_name %>.conf ]; then
71+
create_link_for_config=y
72+
fi
6973
if [ -f /etc/<%= compat_package_dir %>/<%= compat_service_name %>.conf ]; then
7074
echo "Migrating from /etc/<%= compat_package_dir %>/<%= compat_service_name %>.conf to /etc/<%= package_dir %>/<%= compat_service_name %>.conf"
7175
cp -f /etc/<%= compat_package_dir %>/<%= compat_service_name %>.conf /etc/<%= package_dir %>/<%= compat_service_name %>.conf
72-
for d in $(ls /etc/<%= compat_package_dir %>); do
73-
if [ ! "$d" = "plugin" -a ! "$d" = "<%= compat_service_name %>.conf" ]; then
74-
# except managed under deb files must be migrated
75-
mv -f /etc/<%= compat_package_dir %>/$d /etc/<%= package_dir %>/
76-
fi
77-
done
76+
fi
77+
for d in $(ls /etc/<%= compat_package_dir %>); do
78+
if [ ! "$d" = "plugin" -a ! "$d" = "<%= compat_service_name %>.conf" ]; then
79+
# except managed under deb files must be migrated
80+
mv -f /etc/<%= compat_package_dir %>/$d /etc/<%= package_dir %>/
81+
fi
82+
done
83+
if [ $create_link_for_config = "y" ]; then
84+
rm -f /etc/<%= package_dir %>/<%= service_name %>.conf
85+
ln -sf /etc/<%= package_dir %>/<%= compat_service_name %>.conf /etc/<%= package_dir %>/<%= service_name %>.conf
7886
fi
7987
fi
8088
if [ -h /etc/systemd/system/td-agent.service ]; then

fluent-package/yum/fluent-package.spec.in

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -192,13 +192,19 @@ if [ $1 -eq 1 ]; then
192192
echo "Migrating from /etc/@COMPAT_PACKAGE_DIR@/plugin/ to /etc/@PACKAGE_DIR@/plugin/..."
193193
mv -f /etc/@COMPAT_PACKAGE_DIR@/plugin/* /etc/@PACKAGE_DIR@/plugin/
194194
fi
195-
if [ -f /etc/@COMPAT_PACKAGE_DIR@/@COMPAT_SERVICE_NAME@.conf ]; then
196-
for d in /etc/@COMPAT_PACKAGE_DIR@/*; do
197-
if [ ! "$d" == "/etc/@COMPAT_PACKAGE_DIR@/plugin" ]; then
198-
echo "Migrating from $d to /etc/@PACKAGE_DIR@/..."
199-
mv -f $d /etc/@PACKAGE_DIR@/
200-
fi
201-
done
195+
create_link_for_config=n
196+
if [ -f /etc/@COMPAT_PACKAGE_DIR@/@COMPAT_SERVICE_NAME@.conf -a ! -e /etc/@COMPAT_PACKAGE_DIR@/@SERVICE_NAME@.conf ]; then
197+
create_link_for_config=y
198+
fi
199+
for d in /etc/@COMPAT_PACKAGE_DIR@/*; do
200+
if [ ! "$d" == "/etc/@COMPAT_PACKAGE_DIR@/plugin" ]; then
201+
echo "Migrating from $d to /etc/@PACKAGE_DIR@/..."
202+
mv -f $d /etc/@PACKAGE_DIR@/
203+
fi
204+
done
205+
if [ $create_link_for_config = "y" ]; then
206+
rm -f /etc/@PACKAGE_DIR@/@SERVICE_NAME@.conf
207+
ln -sf /etc/@PACKAGE_DIR@/@COMPAT_SERVICE_NAME@.conf /etc/@PACKAGE_DIR@/@SERVICE_NAME@.conf
202208
fi
203209
fi
204210
if systemctl is-active @COMPAT_SERVICE_NAME@; then

fluent-package/yum/systemd-test/update-from-v4.sh

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,13 @@ sudo systemctl enable --now fluentd
4444
systemctl status --no-pager td-agent
4545

4646
# Test: config migration
47-
test -L /etc/td-agent
47+
test -h /etc/td-agent
48+
test -h /etc/fluent/fluentd.conf
49+
test $(readlink "/etc/fluent/fluentd.conf") = "/etc/fluent/td-agent.conf"
4850
test -e /etc/td-agent/td-agent.conf
4951

5052
# Test: log file migration
51-
test -L /var/log/td-agent
53+
test -h /var/log/td-agent
5254
test -e /var/log/td-agent/td-agent.log
5355

5456
# Test: bin file migration

0 commit comments

Comments
 (0)