inetprocess / sugarcli
SugarCli is a command line tool to install and manage SugarCRM installations.
Installs: 155
Dependents: 0
Suggesters: 0
Security: 0
Stars: 36
Watchers: 14
Forks: 12
Open Issues: 4
Requires
- php: >=5.3.9
- ext-curl: *
- ext-reflection: *
- csanquer/colibri-csv: ^1.1
- edyan/neuralyzer: ~0.6
- guzzle/guzzle: ~3.9
- ifsnop/mysqldump-php: dev-master
- inetprocess/libinventoryclient: ^1.0
- inetprocess/libsugarcrm: ^1.2
- jms/serializer: ~0.16
- padraic/humbug_get_contents: 1.0.4
- padraic/phar-updater: ^1.0
- symfony/config: ^2.8
- symfony/console: ^2.8
- symfony/dependency-injection: ^2.8
- symfony/filesystem: ^2.8
- symfony/finder: ^2.8
- symfony/process: ^2.8
- symfony/property-access: ^2.8
- symfony/stopwatch: ^2.8
- symfony/yaml: ^2.8
- webmozart/path-util: ^2.3
Requires (Dev)
- fabpot/php-cs-fixer: ^1.10
- phpunit/dbunit: ~1.3
- phpunit/phpunit: ~4
- dev-master
- v1.24.1
- v1.24.0
- v1.23.0
- v1.22.0
- v1.21.0
- v1.20.0
- v1.19.0
- v1.18.2
- v1.18.1
- v1.18.0
- v1.17.3
- v1.17.2
- v1.17.1
- v1.17.0
- v1.16.8
- v1.16.7
- v1.16.6
- v1.16.5
- v1.16.4
- v1.16.3
- v1.16.2
- v1.16.1
- v1.16.0
- v1.15.3
- v1.15.2
- v1.15.1
- v1.15.0
- v1.14.6
- v1.14.5
- v1.14.4
- v1.14.3
- v1.14.2
- v1.14.1
- v1.14.0
- v1.13.6
- v1.13.5
- v1.13.4
- v1.13.3
- v1.13.2
- v1.13.1
- v1.13.0
- v1.12.1
- v1.12
- v1.11.1
- v1.11.0
- v1.10.2
- v1.10.1
- v1.10.0
- v1.9.1
- v1.9.0
- v1.8.2-beta
- v1.8.1
- v1.8.0
- v1.7.2
- v1.7.1
- v1.7.0
- v1.6.0
- v1.6.0-beta
- v1.5.3
- v1.5.2
- v1.5.1
- v1.5.0
- v1.4.2
- v1.4.1
- v1.4.0
- v1.3.4
- v1.3.3
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.0
- v1.0.0
- v0.1.0
- dev-mon_14054_3
- dev-mon_14054_2
- dev-mon_14054_1
- dev-mon_14054
- dev-sugarcli_release_process
- dev-mon_13700_2
- dev-mon_13700_1
- dev-mon_13700
- dev-mon_13432_A6
- dev-mon_13432_A5
- dev-mon_13432_A4
- dev-mon_13432_A3
- dev-mon_13432_A2
- dev-mon_13432_A1
- dev-mon_13432_D
- dev-mon_13432_C
- dev-mon_13432_B
- dev-mon_13432_A
- dev-mon_13432
- dev-mon_13184
This package is not auto-updated.
Last update: 2024-12-21 19:37:17 UTC
README
SugarCli is a command line tool to install and manage SugarCRM installations.
Install
Get the latest phar archive at https://github.com/inetprocess/sugarcli/blob/master/build/sugarcli.phar
. Allow the execution and run it.
cd /usr/local/bin/
wget 'https://github.com/inetprocess/sugarcli/releases/download/v1.24.1/sugarcli.phar'
chmod +x ./sugarcli.phar
mv sugarcli.phar sugarcli
sugarcli help
Or clone this git repository and use ./bin/sugarcli
.
Build
Clone the git repository and run
composer install --no-dev --quiet -o
mkdir build
ulimit -Sn 4096
php -dphar.readonly=0 bin/box build
It will build the sugarcli.phar
Phar archive in the build
folder.
Creating a new phar file and release it as a new version
Draft a new release with a new tag and publish this release
On local do, git checkout master
git pull
Verify the latest tag using the command: git describe --tag --always HEAD
The output should contain the latest tag
In the repo codebase, make the necessary changes
Create a new sugarcli.phar file using the build process mentioned above
Create a pull request, update the readme version with the latest release version.
Add the latest phar file to this pull request as well.
Merge the pull request
Navigate to the latest release from browser
Edit the release and upload the latest phar file to this release. Publish it.
Install the latest phar file from this release link.
Check sugarcli version. It should be set to the latest release version.
Configuration
You can save some configurations options in different location. The latter one will override the previous one:
/etc/sugarclirc
$HOME/.sugarclirc
./.sugarclirc
Command line parameters will override these configurations.
Example
--- sugarcrm: path: PATH #Path to Sugarcrm relative to the configuration file user_id: USER_ID #SugarCRM user id to impersonate when running the command metadata: file: FILE #Path to the metadata file relative to the configuration file account: name: ACCOUNT_NAME #Name of the account backup: prefix: PREFIX #Prefix to prepend to name of archive file when creating backups maintenance: page: FILE or CONTENT #File name or content of maintenance page allowed_ips: #List of ips allowed to by-pass the maintenance page - IP1 - IP2 - ...
Usage
./sugarcli.phar list
: List all commands available./sugarcli.phar namespace:command --help
: Display help for a specific command
See the USAGE.md file for a complete list of commands and the associated help
Development
Run tests
Copy the file phpunit.xml.dist
to phpunit.xml
and edit the environment variables.
Run the full test suite with bin/phpunit
or exclude groups to avoid required external resources bin/phpunit --exclude-group inventory,sugarcrm-db
Available groups:
- inventory
- sugarcrm-db
- sugarcrm-path
- sugarcrm-url
Generate USAGE.md command documentation
bin/sugarcli list --format json | php bin/format_help.php >| USAGE.md