├── .gitignore ├── .travis.yml ├── Gemfile ├── Gemfile.install ├── LICENSE.txt ├── README.md ├── Rakefile ├── bin └── snapsync ├── install.sh ├── lib ├── snapsync.rb └── snapsync │ ├── auto_sync.rb │ ├── btrfs.rb │ ├── btrfs_subvolume.rb │ ├── cleanup.rb │ ├── cli.rb │ ├── default_sync_policy.rb │ ├── exceptions.rb │ ├── partitions_monitor.rb │ ├── remote_pathname.rb │ ├── snapper_config.rb │ ├── snapshot.rb │ ├── snapshot_transfer.rb │ ├── ssh_popen.rb │ ├── sync.rb │ ├── sync_all.rb │ ├── sync_last_policy.rb │ ├── sync_target.rb │ ├── test.rb │ ├── timeline_sync_policy.rb │ ├── util.rb │ └── version.rb ├── snapsync.gemspec ├── snapsync.service ├── snapsync.timer └── test ├── configs └── home ├── snapshots ├── info_xml_no_date_element │ ├── info.xml │ └── snapshot │ │ └── .keep ├── info_xml_no_num_element │ ├── info.xml │ └── snapshot │ │ └── .keep ├── info_xml_no_snapshot_root │ ├── info.xml │ └── snapshot │ │ └── .keep ├── no_subvolume_directory │ └── info.xml ├── snapshots_dir │ ├── valid │ │ └── 1 │ │ │ ├── info.xml │ │ │ └── snapshot │ │ │ └── .keep │ ├── with_invalid_snapshot │ │ ├── 1 │ │ │ ├── info.xml │ │ │ └── snapshot │ │ │ │ └── .keep │ │ └── 2 │ │ │ ├── info.xml │ │ │ └── snapshot │ │ │ └── .keep │ └── with_mismatching_num │ │ ├── 1 │ │ ├── info.xml │ │ └── snapshot │ │ │ └── .keep │ │ └── 2 │ │ ├── info.xml │ │ └── snapshot │ │ └── .keep └── valid │ ├── info.xml │ └── snapshot │ └── .keep ├── test_btrfs.rb ├── test_cli.rb ├── test_partition_availability.rb ├── test_snapper_config.rb ├── test_snapshot.rb └── test_sync_target.rb /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/.travis.yml -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/Gemfile -------------------------------------------------------------------------------- /Gemfile.install: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | gem 'snapsync' 3 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/README.md -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/Rakefile -------------------------------------------------------------------------------- /bin/snapsync: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/bin/snapsync -------------------------------------------------------------------------------- /install.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/install.sh -------------------------------------------------------------------------------- /lib/snapsync.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync.rb -------------------------------------------------------------------------------- /lib/snapsync/auto_sync.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/auto_sync.rb -------------------------------------------------------------------------------- /lib/snapsync/btrfs.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/btrfs.rb -------------------------------------------------------------------------------- /lib/snapsync/btrfs_subvolume.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/btrfs_subvolume.rb -------------------------------------------------------------------------------- /lib/snapsync/cleanup.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/cleanup.rb -------------------------------------------------------------------------------- /lib/snapsync/cli.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/cli.rb -------------------------------------------------------------------------------- /lib/snapsync/default_sync_policy.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/default_sync_policy.rb -------------------------------------------------------------------------------- /lib/snapsync/exceptions.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/exceptions.rb -------------------------------------------------------------------------------- /lib/snapsync/partitions_monitor.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/partitions_monitor.rb -------------------------------------------------------------------------------- /lib/snapsync/remote_pathname.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/remote_pathname.rb -------------------------------------------------------------------------------- /lib/snapsync/snapper_config.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/snapper_config.rb -------------------------------------------------------------------------------- /lib/snapsync/snapshot.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/snapshot.rb -------------------------------------------------------------------------------- /lib/snapsync/snapshot_transfer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/snapshot_transfer.rb -------------------------------------------------------------------------------- /lib/snapsync/ssh_popen.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/ssh_popen.rb -------------------------------------------------------------------------------- /lib/snapsync/sync.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/sync.rb -------------------------------------------------------------------------------- /lib/snapsync/sync_all.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/sync_all.rb -------------------------------------------------------------------------------- /lib/snapsync/sync_last_policy.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/sync_last_policy.rb -------------------------------------------------------------------------------- /lib/snapsync/sync_target.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/sync_target.rb -------------------------------------------------------------------------------- /lib/snapsync/test.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/test.rb -------------------------------------------------------------------------------- /lib/snapsync/timeline_sync_policy.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/timeline_sync_policy.rb -------------------------------------------------------------------------------- /lib/snapsync/util.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/lib/snapsync/util.rb -------------------------------------------------------------------------------- /lib/snapsync/version.rb: -------------------------------------------------------------------------------- 1 | module Snapsync 2 | VERSION = "0.4.1" 3 | end 4 | -------------------------------------------------------------------------------- /snapsync.gemspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/snapsync.gemspec -------------------------------------------------------------------------------- /snapsync.service: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/snapsync.service -------------------------------------------------------------------------------- /snapsync.timer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/snapsync.timer -------------------------------------------------------------------------------- /test/configs/home: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/configs/home -------------------------------------------------------------------------------- /test/snapshots/info_xml_no_date_element/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/info_xml_no_date_element/info.xml -------------------------------------------------------------------------------- /test/snapshots/info_xml_no_date_element/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/info_xml_no_num_element/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/info_xml_no_num_element/info.xml -------------------------------------------------------------------------------- /test/snapshots/info_xml_no_num_element/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/info_xml_no_snapshot_root/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/info_xml_no_snapshot_root/info.xml -------------------------------------------------------------------------------- /test/snapshots/info_xml_no_snapshot_root/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/no_subvolume_directory/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/no_subvolume_directory/info.xml -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/valid/1/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/snapshots_dir/valid/1/info.xml -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/valid/1/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_invalid_snapshot/1/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/snapshots_dir/with_invalid_snapshot/1/info.xml -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_invalid_snapshot/1/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_invalid_snapshot/2/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/snapshots_dir/with_invalid_snapshot/2/info.xml -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_invalid_snapshot/2/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_mismatching_num/1/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/snapshots_dir/with_mismatching_num/1/info.xml -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_mismatching_num/1/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_mismatching_num/2/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/snapshots_dir/with_mismatching_num/2/info.xml -------------------------------------------------------------------------------- /test/snapshots/snapshots_dir/with_mismatching_num/2/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/snapshots/valid/info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/snapshots/valid/info.xml -------------------------------------------------------------------------------- /test/snapshots/valid/snapshot/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/test_btrfs.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/test_btrfs.rb -------------------------------------------------------------------------------- /test/test_cli.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/test_cli.rb -------------------------------------------------------------------------------- /test/test_partition_availability.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/test_partition_availability.rb -------------------------------------------------------------------------------- /test/test_snapper_config.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/test_snapper_config.rb -------------------------------------------------------------------------------- /test/test_snapshot.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/test_snapshot.rb -------------------------------------------------------------------------------- /test/test_sync_target.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/doudou/snapsync/HEAD/test/test_sync_target.rb --------------------------------------------------------------------------------