Craft Build Tools - Project Management Suite 0.0.1-ALPHA

Suite of tools for Developers to easily manage,maintain, and deploy their Projects!

  1. MumbosHut
    Craft Build Tools - Project Management Suite!
    I've created countless Bukkit plugins, and the most difficult part of every project is keeping track of what you've got!

    This suite of tools is to make managing your projects a load easier, creating a configuration file for each project containing just enough information to manage the project, and make your life easier!

    Features
    • Building multiple Maven projects with ease, and custom build Commands.
    • Copying output jar files to a singular location
    • Cleaning old files from storage before builds
    • Generating (Commons) projects from CookieCutter templates!
    • Uploading your recently built projects to a remote FTP Server!
    • (Coming Soon) Generating file containing all Todo's present in code!
    • (Coming Soon) Executing commands on the remote server; Example 'mark2 stop {servername}, mark2 start {servername}'
    Usage
    [​IMG]

    Each option can be chained, making your execution command look like the following:
    [​IMG]

    Above is the output from executing the tools on multiple Projects I've been working on, one of which being Commons! All of these were then copied to a remote host and they're visible on the server!

    Config.yml
    There's no need to create this file manually, as when you run the tools.py script and a config.yml file doesn't exist with the desired information, you'll be prompted with it! Though, for good measure, here's what it contains!
    Code (Text):
    ftp-host: server.host.com
    ftp-password: ftp.password
    ftp-username: ftp.username
    remote-upload-directory: /remote/directory/for/plugins/
     
    Project.yml
    Below is the basic configuration required to manage a project! Instead of creating each of these .yml files individually, there's a prompt available when you use either the --createproject or --addproject option! It's quite awesome!

    Code (Text):
    name: Commons
    build_command: mvn clean install --offline
    directory: /home/brandon/Projects/Commons/
    target_directory: /home/brandon/Projects/Commons/target/
     

    Installation

    Navigate to the directory of where 'craft_tools' package exists.
    To install all the required packages, run the following command:
    Code (Text):
    sudo pip install -r requirements.txt
    Note: Requires Python >=3.4.3

    Running setup.py currently does nothing, and won't until I finish the PyPi packaging. In the mean time, use it as you can!

    Final Information
    I'll be constantly working this project, so if you have any feature suggestions, pull requests, or find bugs along the way please let me know!

    I hope you all can find just as much use out of CraftBuildTools as I can, and I hope it brings ease to your dev process!