The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

ShipIt::State - holds state between steps

OVERVIEW

An instance of type ShipIt::State is passed to each ShipIt::Step's 'run' method.

INSTANCE METHODS

set_version

   $state->set_version("1.34");

Set the version of this release. (is done by ShipIt::Step::FindVersion, early in the process, but perhaps you want to write your own version-detecting/selecting step)

version

   $ver = $state->version

Returns version of release, or dies if not yet set.

pt

    $pt = $state->pt;

Detects/instantiates this project's type (Perl vs autoconf, etc) and returns a newly-created or previously-cached ShipIt::ProjectType instance.

vc

    $vc = $state->vc;

Detects/instantiates the version control system in use (svn, svk, etc) and returns a newly-created or previously-cached ShipIt::VC instance.

add_changelog_file

    $state->add_changelog_file("CHANGES");

Push a changelog file into the known list.

add_changelog_file

    @files = $state->changelog_files;

Returns list of known changelog files.

dry_run

   $dry = $state->dry_run;

Accessor for "dry run" flag. If set, you shouldn't actually commit/tag/upload stuff... just test if everything would've succeeded.

set_distfile

distfile

   $state->set_distfile("foo.tar.gz");
   $file = $state->distfile;

Setter/getter for where the final distfile is. Useful so steps that need to build the whole tree (say, in an early "make test" phase), can keep it around, and later steps (like "make dist") can access it, without recompiling everything again.