Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/miraculixx/trackbuild
a build tracker
https://github.com/miraculixx/trackbuild
Last synced: 3 months ago
JSON representation
a build tracker
- Host: GitHub
- URL: https://github.com/miraculixx/trackbuild
- Owner: miraculixx
- License: mit
- Created: 2013-09-27T10:51:41.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2023-01-06T00:02:28.000Z (about 2 years ago)
- Last Synced: 2024-04-16T11:03:39.985Z (9 months ago)
- Language: Python
- Size: 24.4 KB
- Stars: 0
- Watchers: 2
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
trackbuild
========a simple build tracker
Ever had the problem to increase build numbers?
or version numbers?
or file names made of something like release-major.minor.patch.build.tgz?trackbuild solves this problem once and for all.
###Setup
1. copy trackbuild.py into your project directory and create an alias to trackbuild
cp trackbuild.py /my/project
alias trackbuild='./trackbuild.py'2. initialize the log file (.trackbuild)
trackbuild -N
3. add your first release
trackbuild -r alpha
This will create the alpha release, with major.minor.patch set to 0.1.0. The command will not print any output at this point.
4. Add a build
#trackbuild -r alpha -b
001You have now added the first build to release alpha. trackbuild increments the build number and prints it as a 3-character string.
###Listing builds
You can show details like so:
#trackbuild -r alpha -l
Release 0.1.0 has 6 builds
tag = n/a
no = 1
time = 2013-09-27 13:16:45.147788
---###Automatically keep track of builds
In your builds, increase the build number with a simple call to trackbuild:
#trackbuild -r alpha -b
002Use the output string as the build number in your downstream build scripts. trackbuild outputs a full version string if that's what you need:
#trackbuild -r alpha -b --full
test 0.1.0 build 002#trackbuild -r alpha -b --full --filename
test-0.1.0.002See the discussion below for details on printing version numbers.
### Print version stringsPrint major.minor.patch string
#trackbuild -r alpha --nice
0.1.0Print release major.minor.patch build nnn
#trackbuild -r alpha --full
alpha 0.1.0 build 001Print release major.minor.patch (no build number)
#trackbuild -r alpha --display
alpha 0.1.0###Print file names
Often times we need the version suitable as a filename. To do so, pass --filename (or -i) along with any of the above --nice, --full, --display arguments:
#trackbuild -r alpha --nice --filename
0.1.0#trackbuild -r alpha --full --filename
alpha-0.1.0.000#trackbuild -r alpha --display --filename
alpha-0.1.0###Set major, minor and patch versions
Setting any of the version components is simple:
#trackbuild -r alpha -M 1 -m 2 -p 5 --full
alpha 1.2.5 build 001###Help
```
#trackbuild -h
usage: trackbuild.py [-h] [--init] [--release RELEASE] [--build] [--tag TAG]
[--major MAJOR] [--minor MINOR] [--patch PATCH] [--list]
[--nice] [--full] [--display] [--filename]optional arguments:
-h, --help show this help message and exit
--init, -N initialize build log (discards old file!)
--release RELEASE, -r RELEASE
add a release
--build, -b add a build log and print build no
--tag TAG, -t TAG the build tag (eg git commit id)
--major MAJOR, -M MAJOR
set major version (default: 0)
--minor MINOR, -m MINOR
set minor version (default: 1)
--patch PATCH, -p PATCH
set patch number (default: 0)
--list, -l list release(s)
--nice, -n print major.minor.patch
--full, -f print build
--display, -d print release major.minor.patch.build
--filename, -i print version as release-major.minor.patch.build (use
with --full, --display, --nice)
```###Licence
trackbuild is covered by the MIT license.
(c) 2013 Patrick Senti