52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
# File 'lib/docker-sync/upgrade_check.rb', line 52
def check_and_warn
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.1.0')
Thor::Shell::Basic.new.say_status 'warning', 'Please be aware that with the strategy "unison" is now called unison-onesided and you might need to migrate. See https://github.com/EugenMayer/docker-sync/wiki/Migration-Guide for more informations', :red
unless Thor::Shell::Basic.new.yes?('Shall we continue? (y/N)')
exit 1
end
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.2.0')
Thor::Shell::Basic.new.say_status 'warning', "A lot changed with 0.2.x! Unison is the default sync, unison-onesided has been REMOVED. If you have been using rsync, have been using unison excludes or you are not sure, please read the upgrade guide or your setup will go lala! : \n\n_Please_ read :): https://github.com/EugenMayer/docker-sync/wiki/1.2-Upgrade-Guide\n\n", :red
unless Thor::Shell::Basic.new.yes?('Shall we continue - DID you read it? (y/N)')
exit 1
end
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.3.0')
Thor::Shell::Basic.new.say_status 'warning', "The installation progress of docker-sync 0.3.0 has changed, brew is now mandatory - you need to uninstall unox ! : \n\n_Please_ read :): https://github.com/EugenMayer/docker-sync/wiki/1.2-Upgrade-Guide\n\n", :red
cmd1 = 'sudo rm -f /usr/local/bin/unison-fsmonitor && brew tap eugenmayer/dockersync && brew install eugenmayer/dockersync/unox'
Thor::Shell::Basic.new.say_status 'ok', cmd1, :rwhite
if Thor::Shell::Basic.new.yes?('I will reinstall unox for you using the above command (y/N)')
system cmd1
else
raise('Please reinstall docker-sync yourself')
exit 1
end
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.4.0')
Thor::Shell::Basic.new.say_status 'warning', "docker-sync has a new superior default sync strategy native_osx - consider switching to it no matter if you used unison or rsync. \nIt does no longer need Unison/Unox on OSX - no brew needed either. And its a lot thriftier ! \n\n_Please_ read :): https://github.com/EugenMayer/docker-sync/wiki/1.2-Upgrade-Guide\n\n", :red
unless Thor::Shell::Basic.new.yes?('Shall we continue - DID you read it - really :) ? (y/N)')
exit 1
end
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.4.1')
Thor::Shell::Basic.new.say_status 'warning', "Please add :nocopy to every named-volume mount you defined in your docker-compose-dev.yml! \n\nWhy? : https://github.com/EugenMayer/docker-sync/wiki/2.-Configuration#why-nocopy-is-important\n\n", :red
unless Thor::Shell::Basic.new.yes?('Did you fix your docker-compose-dev.yml? (y/N)')
exit 1
end
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.4.2')
checker = UpdateChecker.new
checker.check_unison_hostsync_image
Thor::Shell::Basic.new.say_status 'warning', "The native_osx is NOW ONLY for docker-for-mac, this is due to https://github.com/EugenMayer/docker-sync/issues/346\n\nThat means that unison is picked as a default automatically if you use docker-machine", :red
unless Thor::Shell::Basic.new.yes?('Just wanted you to know that! (y/N)')
exit 1
end
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.4.3')
checker = UpdateChecker.new
checker.check_unison_hostsync_image
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.4.4')
checker = UpdateChecker.new
checker.check_unison_hostsync_image
end
if Gem::Version.new(last_upgraded_version) < Gem::Version.new('0.4.5')
checker = UpdateChecker.new
checker.check_unison_hostsync_image
end
@config.update! 'upgrade_status' => "#{UpgradeChecker.get_current_version}"
end
|