buildsync-submit
v1.0.0
Published
`buildSync` is a CLI tool designed to facilitate the upload of `.apk` and `.ipa` files to a server for build synchronization. This tool leverages Node.js and several libraries to ensure a smooth and efficient upload process, complete with progress trackin
Downloads
3
Readme
buildSync
buildSync
is a CLI tool designed to facilitate the upload of .apk
and .ipa
files to a server for build synchronization. This tool leverages Node.js and several libraries to ensure a smooth and efficient upload process, complete with progress tracking and error handling.
Features
- Upload Support: Only supports
.apk
and.ipa
file uploads. - Progress Tracking: Provides a visual progress bar during the upload.
- Error Handling: Detailed error messages to guide the user.
- Environment Configuration: Uses environment variables for configuration.
Installation
To get started, clone this repository and install the necessary dependencies:
git clone https://github.com/Skipperlla/buildSync-cli.git
cd buildSync
npm install or yarn install
Usage
Ensure you have the necessary environment variables set in your .env
file:
BUILD_SYNC_API_TOKEN=your_BUILD_SYNC_API_TOKEN
BUILD_SYNC_API_URL=http://yourServerAddress:yourPort/upload
Commands
The buildSync
CLI tool provides a primary command submit
to upload files.
submit
This command uploads a specified .apk
or .ipa
file to the server.
Options
-p, --path <filePath>
: Path to the file to upload. The file must be either a.apk
or.ipa
file.-o, --orgId <orgId>
: Organization ID. This is the unique identifier for your organization.-a, --appId <appId>
: Application ID. This is the unique identifier for the application you are uploading the file for.
Example
buildSync submit -p /path/to/your/file.apk -o yourOrgId -a yourAppId
Help Command
For a detailed list of available commands and options, you can use the --help
flag:
buildSync --help
Development
File Structure
index.js
: Entry point for the CLI tool.upload.js
: Contains theuploadFile
function that handles the file upload logic.
Dependencies
axios
: Promise-based HTTP client for the browser and Node.js.cli-progress
: Flexible command line progress bar.form-data
: A module to create readable"multipart/form-data"
streams.dotenv
: Loads environment variables from a.env
file intoprocess.env
.chalk
: Terminal string styling done right.commander
: The complete solution for node.js command-line interfaces.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License.
This README provides a comprehensive overview of your project, detailing its purpose, installation steps, usage instructions, and file structure. It should help users understand how to use your CLI tool effectively.