package_release_wizard()
The Package Release Wizard performs all of the steps required to create, upload, and publish a release.
$1 - Release type (major, minor, micro)
This function performs the following individual steps:
- Creates the distribution files for a new release.
- Publishes all of the pieces for the release to their appropriate locations and updates the release branch links.
- Finalizes the release files, uploads, and versions.
package_release_create()
Automates the entire package release process for the given type of release ($1).
This function performs the following individual steps:
- Pulls changes from the remote repository.
- Removes the existing development installation. For this reason, we strongly recommend using a virgin clone of the repository that has been dedicated to the release process.
- Bootstraps the package to produce the local install/ tree.
- Removes all build artifacts except the install/ tree.
- Modifies the system.i7 file to enable release mode.
- Builds the release files and tags the repo.
package_release_finish()
Finishes the release process.
$1 - Release branch
This function performs the following individual steps:
- Finalizes the published files
- Locks the release files
- Tags the release revision in the repository
- Bumps the package version to start the next release cycle
package_release_ready()
Returns success if the package is ready for a release.
package_release_chmod()
Changes the mode of distribution files
$1 - File mode
$2 - Directory mode
$3 - Release version (optional)
package_release_lock()
Prevents release files from being updated or deleted.
$1 - Release version (optional)
package_release_unlock()
Allows release files to be updated or deleted.
$1 - Release version (optional)
package_release_undo()
Removes all artifacts of a failed release.
This function performs the following individual steps:
- Reverts the bump to the package version
- Deletes the release tag
- Unlocks the release distribution files
- Unlocks the published files