pkdevbox / adt Goto Github PK
View Code? Open in Web Editor NEWThis project forked from exoplatform/adt
Automated Deployment Tools for eXo products
This project forked from exoplatform/adt
Automated Deployment Tools for eXo products
This project is a set of tools used to automate the deployment of eXo products for testing purpose. How to use ? ============ Prerequisites ------------------------ Mandatory : * A Java 6 JVM available in the PATH Optional : * A mysql server with a local configuration (~/.my.cnf) that allows the current system user to create databases and grant rights. You can activate the usage of MySQL with the environment variable : DEPLOYMENT_DATABASE_TYPE=MYSQL * An apache server (with PHP and its APC module) to display the list of instances and to create a reverse proxy for all instances. * An UFW firewall to protect your (ubuntu server). The script will automatically open or close required ports (HTTP, JMX, ...). * An awstats instance to keep statistics of usage. Prepare your environment ------------------------ Fork this project : git clone git://github.com/exoplatform/adt.git Define the environment variable ADT_DATA, which will be the path to a working directory used by ADT. export ADT_DATA=$HOME/adt_data You can also define your settings in $HOME/.adtrc or in /etc/default/adt You're ready to go ------------------ Deploy a server : download and configure it # adt.sh deploy plfcom 4.0.0-SNAPSHOT Start a server : start a deployed instance # adt.sh start plfcom 4.0.0-SNAPSHOT Stop a server : stop a deployed instance # adt.sh stop plfcom 4.0.0-SNAPSHOT Restart a server : restart a deployed instance # adt.sh restart plfcom 4.0.0-SNAPSHOT Undeploy a server : stop a deployed instance if already running and delete it. # adt.sh undeploy plfcom 4.0.0-SNAPSHOT List all deployed instances # adt.sh list Usage ----- usage: ./adt.sh <action> This script manages automated deployment of eXo products for testing purpose. Action ------ deploy Deploys (Download+Configure) the server download-dataset Downloads the dataset required by the server start Starts the server stop Stops the server restart Restarts the server undeploy Undeploys (deletes) the server start-all Starts all deployed servers stop-all Stops all deployed servers restart-all Restarts all deployed servers undeploy-all Undeploys (deletes) all deployed servers list Lists all deployed servers init Initializes the environment update-repos Update Git repositories used by the web front-end web-server Starts a local PHP web server to test the front-end (requires PHP >= 5.4). It automatically activates the development mode. Environment Variables --------------------- They may be configured in the current shell environment or /etc/default/adt or $HOME/.adtrc Global Settings =============== ADT_DATA : The path where data have to be stored (default: under the script path - /Users/arnaud/Code/eXo/adt) ACCEPTANCE_SCHEME : The scheme to use to deploy the acceptance server (default: 'http' if ADT_DEV_MODE=true, 'https' otherwise; values : http | https) ACCEPTANCE_HOST : The hostname (vhost) where is deployed the acceptance server (default: 'localhost' if ADT_DEV_MODE=true, 'acceptance.exoplatform.org' otherwise) ACCEPTANCE_PORT : The server port on which the acceptance front-end is listening (default: '8080' if ADT_DEV_MODE=true, '80' otherwise) ACCEPTANCE_SERVERS : A comma separated list of all acceptance front-end URLs to aggregate (default: 'http://localhost:8080' if ADT_DEV_MODE=true, 'https://acceptance.exoplatform.org' otherwise) CROWD_ACCEPTANCE_APP_NAME : The crowd application used to authenticate the front-end (default: none) CROWD_ACCEPTANCE_APP_PASSWORD : The crowd application''s password used to authenticate the front-end (default: none) LDAP_ACCEPTANCE_BIND_DN : The LDAP Bind DN used to authenticate the front-end (default: none) LDAP_ACCEPTANCE_BIND_PASSWORD : The LDAP Bind DN''s password used to authenticate the front-end (default: none) APACHE_SSL_CERTIFICATE_FILE : Apache SSLCertificateFile for HTTPS setup APACHE_SSL_CERTIFICATE_KEY_FILE : Apache SSLCertificateKeyFile for HTTPS setup APACHE_SSL_CERTIFICATE_CHAIN_FILE : Apache SSLCertificateChainFile for HTTPS setup REPOSITORY_SERVER_BASE_URL : The Maven repository URL used to download artifacts (default: https://repository.exoplatform.org) REPOSITORY_USERNAME : The username to logon on $REPOSITORY_SERVER_BASE_URL if necessary (default: none) REPOSITORY_PASSWORD : The password to logon on $REPOSITORY_SERVER_BASE_URL if necessary (default: none) ADT_DEBUG : Display debug details (default: false; values : true | false) ADT_DEV_MODE : Development mode. Apache server, awstats and ufw are deactivated. (default: false; values : true | false) ADT_OFFLINE : Use only local resources, don't do any remote operations. (default: false; values : true | false) DEPLOYMENT_EXTENSIONS : Comma separated list of PLF extensions to install. "all" to install all extensions available. Empty string for none. (default: all) DEPLOYMENT_ADDONS : Comma separated list of PLF add-ons to install using the add-ons manager. Empty string for none. (default: none) Instance Settings ================= PRODUCT_NAME : The product you want to manage. Possible values are : gatein GateIn Community edition - Apache Tomcat bundle exogtn GateIn eXo edition - Apache Tomcat bundle plf eXo Platform Standard Edition - Apache Tomcat bundle plfcom eXo Platform Community Edition - Apache Tomcat bundle plfent eXo Platform Express/Enterprise Edition - Apache Tomcat bundle plfenteap eXo Platform Express/Enterprise Edition - JBoss EAP bundle plftrial eXo Platform Trial Edition - Apache Tomcat bundle plfdemo eXo Platform Demo Edition - Apache Tomcat bundle addonchat eXo Platform + eXo Addon Chat - Apache Tomcat bundle compint eXo Company Intranet - Apache Tomcat bundle community eXo Community Website - Apache Tomcat bundle docs eXo Platform Documentations Website - Apache Tomcat bundle PRODUCT_VERSION : The version of the product. Can be either a release, a snapshot (the latest one) or a timestamped snapshot DEPLOYMENT_SKIP_ACCOUNT_SETUP : Do you want to skip the account creation form and use default accounts (default: false; values : true | false) DEPLOYMENT_APACHE_SECURITY : Do you want to have a public or a private deployment (default: private; values : private | public) DEPLOYMENT_APACHE_VHOST_ALIAS : Do you want to add an Apache ServerAlias directive to access the deployed instance through a more userfriendly url (ex: try.exoplatform.com for a public demo) DEPLOYMENT_APACHE_HTTPS_ENABLED : Do you want to add an HTTPs VirtualHost (default: false; values : true | false) DEPLOYMENT_PORT_PREFIX : Default prefix for all ports (2 digits will be added after it for each required port) DEPLOYMENT_JVM_SIZE_MAX : Maximum heap memory size (default: 2g) DEPLOYMENT_JVM_SIZE_MIN : Minimum heap memory size (default: 512m) DEPLOYMENT_JVM_PERMSIZE_MAX : Maximum permgem memory size (default: 256m) DEPLOYMENT_OPTS : Additional JVM parameters to pass to the startup. Take care to escape charters like \" (default: none) DEPLOYMENT_DATABASE_TYPE : Which database do you want to use for your deployment ? (default: HSQLDB; values : HSQLDB | MYSQL) DEPLOYMENT_MODE : How data are processed during a restart or deployment (default: KEEP_DATA for restart, NO_DATA for deploy; values : NO_DATA - All existing data are removed | KEEP_DATA - Existing data are kept | RESTORE_DATASET - The latest dataset - if exists - is restored) DEPLOYMENT_LDAP_URL : LDAP URL to use if the server is using one (default: none) DEPLOYMENT_LDAP_ADMIN_DN : LDAP DN to use to logon into the LDAP server DEPLOYMENT_LDAP_ADMIN_PWD : LDAP password to use to logon into the LDAP server DEPLOYMENT_OAUTH_FACEBOOK_CLIENT_ID : Identifier for Facebook OAuth integration (used by community) DEPLOYMENT_OAUTH_FACEBOOK_CLIENT_SECRET : Secret for Facebook OAuth integration (used by community) DEPLOYMENT_OAUTH_GOOGLE_CLIENT_ID : Identifier for Google OAuth integration (used by community) DEPLOYMENT_OAUTH_GOOGLE_CLIENT_SECRET : Secret for Facebook OAuth integration (used by community) DEPLOYMENT_OAUTH_LINKEDIN_CLIENT_ID : Identifier for LinkedIn OAuth integration (used by community) DEPLOYMENT_OAUTH_LINKEDIN_CLIENT_SECRET : Secret for Facebook OAuth integration (used by community)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.