// Package release workflow
// For the wiki page
// http://wiki.opencsw.org/releases-and-staging
//
// Also relevant:
// http://wiki.opencsw.org/automated-release-process

digraph package_workflow {
	build_description[label="Build description",shape="note"];
	build_description -> code_review [label="email"];
	code_review [label="Code review\non the devel mailing list"];
	srv4_on_disk[label="SRV4 file (.pkg.gz) on disk"];
	build_description -> checkpkg_preliminary [label="mgar"];
	checkpkg_preliminary [label="checkpkg (preliminary)",shape="diamond"];
	checkpkg_preliminary -> srv4_on_disk [label="checks passed"];
	checkpkg_preliminary -> reported_errors [label="checks failed"];
	reported_errors [label="Reported errors"];
	srv4_on_disk -> experimental [label="cp foo.pkg /home/experimental/<project>"];
	srv4_on_disk -> checkpkg [label="csw-upload-pkg foo.pkg"];
	checkpkg [shape="diamond",label="checkpkg\nagainst specific\ncatalogs"];
	checkpkg -> unstable [label="checks passed"];
	checkpkg -> rejected [label="checks failed"];
	unstable -> testing [label="2 weeks with no filed bugs"];
	testing -> stable [label="Release"];
	subgraph cluster0 {
		label="Staging";
		unstable[label="unstable",shape="folder"];
		testing[label="testing",shape="folder"];
		stable[label="stable",shape="folder"];
	}
}
