Steven Knight  committed efb7f3d

Start documenting administrative procedures.

  • Participants
  • Parent commits b5ff52f
  • Branches default

Comments (0)

Files changed (3)

+Welcome to the SCons development tree.  Here's a brief guide (not
+guaranteed to be up-to-date) to what you'll find herein:
+	Documentation of SCons administrative procedures.  Maybe
+	other administrative stuff in the future.
+        This doesn't exist if you're looking at a vanilla source tree.
+        This is generated as part of our build process, and it's where,
+        believe it or not, we *build* everything.
+        The "Makefile" for the SCons distribution.  Yes, we're using
+        Cons to build its improved stepchild.  (Of course, this will
+        change to an SConstruct file as soon as we have SCons to the
+        point where it can handle the functionality we need...)
+        The Aegis configuration, governing much of how we use Aegis to
+        build, test, control source, etc.
+        A subdirectory for miscellaneous things that we need.  Right
+        now, it has copies of Python modules that we use for testing,
+        and which we don't want to force people to have to install on
+        their own just to help out with SCons development.
+        Scripts for running our tests.  The Python version is used
+        by Aegis for running tests against a copy of the source as
+        extracted from an archive.  The shell version runs tests against
+        the local src/ tree, so you don't have to do a build before
+        testing your changes.  (Hmm, that should probably just be an
+        option to
+	Where the actual source code is kept, of course.
+        Template files, used by Aegis to give you a head start when you
+        aenf or aent a new file.  I haven't been keeping these up to
+	date...
+        End-to-end tests of the SCons utility itself.  These are
+        separate from the individual module unit tests, which live
+        side-by-side with the modules under src/.

File admin/README

+Here you'll find plain text documentation of how SCons administrative
+procedures are handled.  Files contained herein:
+        How changes are integrated, including generating and
+        distributing aedist change sets, and updating the CVS repository
+        on SourceForge.

File admin/change.txt

+Handling a change set:
+    --	Start the change:
+    		aedb {cnum}	[if it's initiated locally]
+		aedist -r	[if it's a remote submission]
+    --	Normal development cycle:
+    		aeb
+		aet
+		aet -bl
+		aet -reg	[optional]
+		aed
+		aede
+    --	As the reviewer:
+		aerpass {cnum}
+    --	As the integrator:
+		aeib {cnum}
+		aeb
+		aet
+		aet -bl
+		aet -reg
+		aed
+		aeipass
+    --	Distribute the change to scons-aedist:
+		aedist -s -p scons.0.1 {cnum} > scons.0.1.C{cnum}.ae
+		pine -attach scons.0.1C{cnum}.ae
+			Subject: scons.0.1 - {SUMMARY}
+			Body:  aegis -l -p scons.0.1 -c {cnum} cd
+		rm scons.0.1.C{cnum}.ae
+	[This will eventually be automated.]
+    --	Update the aedist baseline on the web site:
+		aedist -s -bl -p scons.0.1 >
+		scp
+		rm
+	[This will eventually be automated.]
+    --	Distribute the change to CVS:
+		export CVS_RSH=ssh
+    		ae2cvs -n -aegis -p scons.0.1 -c {cnum} -u ~/SCons/scons
+    		ae2cvs -x -aegis -p scons.0.1 -c {cnum} -u ~/SCons/scons
+	[This may eventually be automated.]