build-sync-cli
v1.2.8
Published
A CLI tool for syncing build files to a remote server
Downloads
22
Readme
build-sync-cli
build-sync-cli
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, you can either clone the repository or install it via npm.
Clone Repository
git clone https://github.com/Skipperlla/buildSync-cli.git
cd buildSync
npm install or yarn install
Install via npm
You can install the build-sync-cli
package globally using npm:
npm install -g build-sync-cli
Usage
Ensure you have the necessary environment variables set in your .env
file:
BUILD_SYNC_API_TOKEN=your_BUILD_SYNC_API_TOKEN
BUILD_SYNC_BASE_URL=http://yourServerAddress:yourPort/upload
Commands
The build-sync-cli
CLI tool provides a primary command deploy
to upload files.
deploy
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
build-sync-cli deploy -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:
build-sync-cli --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.
This updated README includes instructions for installing the `build-sync` npm package, ensuring users can easily install and use your CLI tool.