Metadata-Version: 2.1
Name: build4s
Version: 1.0.4
Summary: A build tools for CodeBuild
Home-page: https://github.com/meanstrong/build4s
Author: pengmingqiang
Author-email: rockypengchina@outlook.com
Maintainer: pengmingqiang
Maintainer-email: rockypengchina@outlook.com
License: Apache 2.0
Description: # Build4s - A build tool for simple, standard, stable and speed
        
        ![image](https://img.shields.io/badge/made_in-china-ff2121.svg)
        [![image](https://img.shields.io/pypi/v/build4s.svg)](https://pypi.org/project/build4s/)
        [![image](https://img.shields.io/pypi/l/build4s.svg)](https://pypi.org/project/build4s/)
        
        ## About
        受启发于AWS CodeBuild的自动化编译打包服务，抽取其中标准化编译打包功能实现的一个本地组件。[AWS CodeBuild User Guide](https://docs.aws.amazon.com/zh_cn/codebuild/latest/userguide/welcome.html)
        - Build提供了标准化的编译打包流程，可编译源代码，运行单元测试，并生成可供部署的项目。   
        - Build提供了适用于最热门编程语言的预配置构建环境，只需配置简单的构建脚本就可以。   
        
        ## Requirements
        - Python3
        - PyYAML
        
        ## Install
        安装最新的Release包，通过pip命令安装：
        ```shell
        pip install build4s
        ```
        或者通过下载源码包或clone代码至本地，然后通过如下命令安装：
        ```shell
        python setup.py install
        ```
        
        ## Usage
        ```shell
        buildcli --spec-file=buildspec.yml --target-file=target.zip
        ```
        使用--help查看更多使用帮助。  
        --spec-file参数指定编译时使用的标准化流程文件，若为空则默认为buildspec.yml。
        --target-file参数指定打包生成的压缩包文件，若为空则默认为target.zip。
        
        ## Release
        - [build4s-0.0.1.zip](https://github.com/meanstrong/build4s/releases/download/v0.0.1/build4s-0.0.1.zip)
        
        ## Example
        一个示例的buildspec.yml文件如下所示：
        ```yaml
        version: 0.2
        env:
          variables:
            JAVA_HOME: "/usr/lib/jvm/java-8-openjdk-amd64"
        
        phases:
          install:
            commands:
              - echo Entered the install phase...
          pre_build:
            commands:
              - echo Entered the pre_build phase...
          build:
            commands:
              - echo Entered the build phase...
              - mvn clean package -e -Dmaven.test.skip=true
          post_build:
            commands:
              - echo Entered the post_build phase...
        artifacts:
          files:
            - example.jar
            - classes/config/*
          discard-paths: no
          base-directory: target
        ```
        将该文件置于源代码目录，在该目录下执行如下命令，即会在当前目录下生成target.zip文件。   
        与自动化部署服务[Deploy4s](https://github.com/meanstrong/deploy)配合使用，效果更佳，味道更美。
        ```shell
        buildcli --target-file=target.zip
        ```
        
        ## Author
        - <a href="mailto:pmq2008@gmail.com">Rocky Peng</a>
        
Platform: any
Description-Content-Type: text/markdown
