Take the contents of an entire addon directory and output a packaged zip file that is clean of development, debug, and OS-specific artifacts that is ready to be distributed or uploaded to ESOUI.
Reads the directory name and package manifest file for information about the addon, including any options to ignore addon-specific files and folders, where to place the output package, and more.
For more configuration information, issues, or feature requests, visit:
https://github.com/inimicus/makePackage/
makePackage.sh [options]
makePackage.sh bump [(--to | -t) <version>] [--major | --minor | --patch] [options]
makePackage.sh bump-api [(--to | -t) <version>] [--squash | -s] [options]
makePackage.sh (--help | -h)
makePackage.sh (--version | -v)
-
--verboseInclude additional detail about each action performed in program output.
Short option:
-p -
--dry-runPrint out commands to execute without executing them.
Short option:
-d -
--no-commitDisables automatic commit.
Short option:
-n -
--message <message>Specify a message for the commit. When a message is not specified, the default message will be used.
Short option:
-m <message>
Bump the addon version by one patch and commit the change.
Options:
-
--majorBumps the major version.
-
--minorBumps the minor version.
-
--patchBumps the patch version (default).
-
--to <version>Explicitly set the addon version to bump to. When set, options passed to bump the major, minor, or patch number are ignored.
Short option:
-t <version>
Bump the API version by one. If multiple API versions are found in the manifest file, each will be incremented by one.
Options:
-
--squashIf multiple API versions are encountered, bump the most recent version and remove the rest.
Short option:
-s -
--to <version>Explicitly set the API version to bump to.
Short option:
-t <version>
You can customize how packages are generated by adding configuration options to
the package manifest file. In contrast to ESOUI addon data, options are prefixed
with a semi-colon (;) to avoid conflict or unforseen incompatibilities.
-
PackageExcludesA space-separated list of file and directories to exclude in addition to the built-in excludes (.git, README.md, .DS_Store, etc).
Wildcards (*) are supported and passed to the
zipcommand to exclude the wildcard range. -
PackageReleaseDirDirectory, relative to addon root, to place packaged files. If this directory does not exist, it will be created. Spaces in the directory name are not allowed/supported.
Default:
release -
PackageBumpFilesA space-separated list of files to parse when bumping the addon version number.
Version replacement in these files will only act on versions that are directly in quotes, single or double, to avoid falsely matching versions in comments or other areas.
myAddonVersion = '1.2.3' -- Matches myAddonVersion = "1.2.3" -- Also matches myAddonVersion = 1.2.3 -- Doesn't match, Lua wouldn't like it either -- Fixed in version 1.2.3 -- Doesn't match local function myFunction() return end
The following configuration will:
- Ignore all files in the
art/andassets/directories - Ignore an image in the addon root directory
- Place packaged files in
packagesdirectory in the addon root - Parse
src/Main.luaandsrc/Other.luawhen bumping version numbers
; PackageExcludes: art/* assets/* meme.gif
; PackageReleaseDir: packages
; PackageBumpFiles: src/Main.lua src/Other.lua
-
makePackage.shCreate a package and commit with the default message.
-
makePackage.sh --no-commitCreate a package, skip auto commit.
-
makePackage.sh -m "Add my sweet packaged addon that isn't broken at all."Create a package and commit with a specific message.
-
makePackage.sh bumpBump addon to the next patch version and commit with the default message.
-
makePackage.sh bump --minorBump addon to the next minor version and commit with the default message.
-
makePackage.sh bump -t "2.3.4" -m "Let's hope this version is less broken."Bump addon version to 2.3.4 and commit with a specific message.
-
makePackage.sh bump-api -sBump the API version and remove any previous API versions.
-
makePackage.sh bump-api --to "100123 100234"Explicitly set the API version and commit with the default message.