{"id":16426283,"url":"https://github.com/meanstrong/build4s","last_synced_at":"2026-05-18T14:37:13.258Z","repository":{"id":53535122,"uuid":"126984006","full_name":"meanstrong/build4s","owner":"meanstrong","description":"A build tool for simple, standard, stable and speed","archived":false,"fork":false,"pushed_at":"2022-09-14T12:07:53.000Z","size":26,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-07T16:43:20.572Z","etag":null,"topics":["aws-codebuild","python3","yml"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/meanstrong.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-03-27T12:37:53.000Z","updated_at":"2022-09-14T12:06:05.000Z","dependencies_parsed_at":"2022-09-26T17:11:26.481Z","dependency_job_id":null,"html_url":"https://github.com/meanstrong/build4s","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meanstrong%2Fbuild4s","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meanstrong%2Fbuild4s/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meanstrong%2Fbuild4s/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meanstrong%2Fbuild4s/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meanstrong","download_url":"https://codeload.github.com/meanstrong/build4s/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240594133,"owners_count":19826106,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-codebuild","python3","yml"],"created_at":"2024-10-11T08:08:15.251Z","updated_at":"2026-05-18T14:37:08.235Z","avatar_url":"https://github.com/meanstrong.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Build4s - A build tool for simple, standard, stable and speed\n\n![image](https://img.shields.io/badge/made_in-china-ff2121.svg)\n[![image](https://img.shields.io/pypi/v/build4s.svg)](https://pypi.org/project/build4s/)\n[![image](https://img.shields.io/pypi/l/build4s.svg)](https://pypi.org/project/build4s/)\n\n## About\n受启发于AWS CodeBuild的自动化编译打包服务，抽取其中标准化编译打包功能实现的一个本地组件。[AWS CodeBuild User Guide](https://docs.aws.amazon.com/zh_cn/codebuild/latest/userguide/welcome.html)\n- Build提供了标准化的编译打包流程，可编译源代码，运行单元测试，并生成可供部署的项目。   \n- Build提供了适用于最热门编程语言的预配置构建环境，只需配置简单的构建脚本就可以。   \n\n## Requirements\n- Python3\n- PyYAML\n\n## Install\n安装最新的Release包，通过pip命令安装：\n```shell\npip install build4s\n```\n或者通过下载源码包或clone代码至本地，然后通过如下命令安装：\n```shell\npython setup.py install\n```\n\n## Usage\n```shell\nbuildcli --spec-file=buildspec.yml --target-file=target.zip\n```\n使用--help查看更多使用帮助。  \n--spec-file参数指定编译时使用的标准化流程文件，若为空则默认为buildspec.yml。\n--target-file参数指定打包生成的压缩包文件，若为空则默认为target.zip。\n\n## Release\n- [build4s-0.0.1.zip](https://github.com/meanstrong/build4s/releases/download/v0.0.1/build4s-0.0.1.zip)\n\n## Example\n一个示例的buildspec.yml文件如下所示：\n```yaml\nversion: 0.2\nenv:\n  variables:\n    JAVA_HOME: \"/usr/lib/jvm/java-8-openjdk-amd64\"\n\nphases:\n  install:\n    commands:\n      - echo Entered the install phase...\n  pre_build:\n    commands:\n      - echo Entered the pre_build phase...\n  build:\n    commands:\n      - echo Entered the build phase...\n      - mvn clean package -e -Dmaven.test.skip=true\n  post_build:\n    commands:\n      - echo Entered the post_build phase...\nartifacts:\n  files:\n    - example.jar\n    - classes/config/*\n  discard-paths: no\n  base-directory: target\n```\n将该文件置于源代码目录，在该目录下执行如下命令，即会在当前目录下生成target.zip文件。   \n与自动化部署服务[Deploy4s](https://github.com/meanstrong/deploy)配合使用，效果更佳，味道更美。\n```shell\nbuildcli --target-file=target.zip\n```\n\n## Author\n- \u003ca href=\"mailto:pmq2008@gmail.com\"\u003eRocky Peng\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeanstrong%2Fbuild4s","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeanstrong%2Fbuild4s","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeanstrong%2Fbuild4s/lists"}