<pre style='margin:0'>
Umesh Singla (umeshksingla) pushed a commit to branch gsoc17-migrate
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/fd38030f5e4107e59edd628005d512afe0659e3b">https://github.com/macports/macports-base/commit/fd38030f5e4107e59edd628005d512afe0659e3b</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit fd38030f5e4107e59edd628005d512afe0659e3b
</span>Author: Umesh Singla <umeshksingla@gmail.com>
AuthorDate: Mon Mar 12 23:23:53 2018 +0100
<span style='display:block; white-space:pre;color:#404040;'> Inform users about not restoring inactive ports
</span><span style='display:block; white-space:pre;color:#404040;'> while migration and hence, not a part of snapshot
</span>---
src/macports1.0/migrate.tcl | 3 +++
src/macports1.0/snapshot.tcl | 24 +++++++++++++++++++++++-
src/port/port.tcl | 4 ++++
3 files changed, 30 insertions(+), 1 deletion(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/macports1.0/migrate.tcl b/src/macports1.0/migrate.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index cb53ac9..c4cba52 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/migrate.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/migrate.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -91,6 +91,9 @@ namespace eval migrate {
</span> # create a snapshot
ui_msg "Taking a snapshot of the current state..."
set snapshot [snapshot::main $opts]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$snapshot == 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return -1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> set id [$snapshot id]
set note [$snapshot note]
set datetime [$snapshot created_at]
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/macports1.0/snapshot.tcl b/src/macports1.0/snapshot.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 2dad420..04d4707 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/macports1.0/snapshot.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/macports1.0/snapshot.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,8 +52,30 @@ namespace eval snapshot {
</span> } else {
set note "snapshot created for migration"
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # TODO: catch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set inactive_ports [list]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach port [registry::entry imaged] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[$port state] eq "imaged"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend inactive_ports "[$port name] @[$port version]_[$port revision] [$port variants][$port negated_variants]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[llength $inactive_ports] != 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set msg "Following inactive ports will not be a part of this snapshot and won't be installed while restoring:"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set inactive_ports [lsort -index 0 -nocase $inactive_ports]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[info exists macports::ui_options(questions_yesno)]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set retvalue [$macports::ui_options(questions_yesno) $msg "Continue?" $inactive_ports {y} 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$retvalue != 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_msg "Not creating a snapshot!"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts $msg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach port $inactive_ports {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts $port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> set snapshot [registry::snapshot create $note]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # TODO: catch
</span> }
return $snapshot
}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port/port.tcl b/src/port/port.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index d434065..c48bd67 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port/port.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port/port.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2847,6 +2847,10 @@ proc action_migrate { action portlist opts } {
</span> ui_debug "Would have executed $::argv0 $::argv --continue"
ui_error "Failed to re-execute MacPorts migration, please run 'sudo port migrate' manually."
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$result == -1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # snapshot error
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_error "Failed to create a snapshot and migration cannot proceed."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
proc action_upgrade { action portlist opts } {
</pre><pre style='margin:0'>
</pre>