/stdhome

To get this branch, use:
bzr branch http://bzr.ed.am/stdhome

« back to all changes in this revision

Viewing changes to lib/stdhome/deployment.py

  • Committer: Tim Marston
  • Date: 2014-02-26 19:10:31 UTC
  • Revision ID: tim@ed.am-20140226191031-elcqy5j09h2syn2j
moved copy-in, copy-out and deployment conflict checking to a set of "walkers";
bzr vcs back-end now parses affected files during update; deployment state now
includes affected files

Show diffs side-by-side

added added

removed removed

Lines of Context:
45
45
        # of the state of the filesystem.
46
46
                self.deploy_files = None
47
47
 
48
 
                # list of files that were affected by a recent vcs update (so only these
 
48
                # list of files that were changed by a recent vcs update (so only these
49
49
                # need to be checked for deployment conflicts or copied-out)
50
 
                self.affected_files = None
 
50
                self.updated_files = None
51
51
 
52
52
                # do we have a repo?
53
53
                if not os.path.exists( the.repo.full_dir ): return
64
64
 
65
65
                # unpack deployment state
66
66
                self.deploy_files = state['deploy_files'];
67
 
                self.affected_files = state['affected_files'];
 
67
                self.updated_files = state['updated_files'];
68
68
 
69
69
 
70
70
        def save_deployment_state( self ):
77
77
                # pack deployment state
78
78
                state = {
79
79
                        'deploy_files': self.deploy_files,
80
 
                        'affected_files': self.affected_files,
 
80
                        'updated_files': self.updated_files,
81
81
                }
82
82
 
83
83
                # create file
131
131
                self.save_deployment_state()
132
132
 
133
133
 
134
 
        def get_conflicts( self, affected_files = None ):
 
134
        def get_conflicts( self, updated_files = None ):
135
135
 
136
136
                # check we have a file list
137
137
                self.check_ongoing( True )
138
138
 
139
139
                # set updated files
140
 
                if affected_files is not None:
141
 
                        self.affected_files = affected_files
 
140
                if updated_files is not None:
 
141
                        self.updated_files = updated_files
142
142
                        self.save_deployment_state()
143
143
 
144
144
                # check for deployment conflicts
145
 
                walker = ConflictWalker( self.deploy_files, self.affected_files )
 
145
                walker = ConflictWalker( self.deploy_files, self.updated_files )
146
146
                walker.walk()
147
147
 
148
148
                self.conflicts_checked = True
160
160
 
161
161
                # copy out
162
162
                if the.verbose: print "exporting files..."
163
 
                walker = CopyOutWalker( self.affected_files )
 
163
                walker = CopyOutWalker( self.updated_files )
164
164
                walker.walk()
165
165
 
166
166
                # clear state