mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
27 lines
1020 B
Desktop File
27 lines
1020 B
Desktop File
[Unit]
|
|
Description=Restore single-node etcd2 node from rclone endpoint
|
|
Conflicts=etcd2.service etcd2-backup.service
|
|
Before=etcd2.service etcd2-backup.service
|
|
|
|
[Service]
|
|
Type=oneshot
|
|
ExecStartPre=/usr/bin/rm -rf ${ETCD_DATA_DIR}/member
|
|
ExecStartPre=/usr/bin/mkdir -p ${ETCD_RESTORE_DIR}
|
|
ExecStartPre=/usr/bin/rm -rf ${ETCD_RESTORE_DIR}/member
|
|
|
|
# Copy the last backup from rclone endpoint
|
|
ExecStartPre=/usr/bin/docker run --rm \
|
|
-v ${RCLONE_CONFIG_PATH}:/etc/rclone.conf \
|
|
-v ${ETCD_RESTORE_DIR}:/etcd2backup \
|
|
quay.io/coreos/rclone:latest \
|
|
--config /etc/rclone.conf --checksum=${RCLONE_CHECKSUM} \
|
|
copy ${RCLONE_ENDPOINT}/%m /etcd2backup
|
|
|
|
ExecStartPre=/usr/bin/ls -R ${ETCD_RESTORE_DIR}
|
|
ExecStartPre=/opt/bin/etcd2-restore -etcd-name ${ETCD_NAME} -etcd-peer-urls ${ETCD_INITIAL_ADVERTISE_PEER_URLS}
|
|
ExecStartPre=/usr/bin/cp -r ${ETCD_RESTORE_DIR}/member ${ETCD_DATA_DIR}/member
|
|
ExecStart=/usr/bin/chown -R etcd:etcd ${ETCD_DATA_DIR}/member
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|