@@ -1,32 +1,128 @@ | |||
sudo apt update | |||
# Install prerequisites for dev environment | |||
# PB : TODO -- Prompt if not passed in. | |||
REPOSERVER=http://git.bbh | |||
DEFAULTREPOOWNER=chess | |||
REPOOWNER=$DEFAULTREPOOWNER | |||
INSTANCENAME=elixir | |||
INSTANCETYPE=dev | |||
GITUSER=pb | |||
GITEMAIL=pradeep@bbh.org.in | |||
sudo apt install python2 | |||
sudo apt install build-essential | |||
sudo apt install -y make | |||
sudo apt install nodejs | |||
sudo apt install npm | |||
sudo apt install git | |||
-- | |||
git clone http://git.bbh.org.in/chess/elxr.git | |||
cd elxr | |||
elxr use elixir | |||
cd .. | |||
elxr i | |||
# Install mysql | |||
sudo apt install mysql-server -y | |||
systemctl is-active mysql | |||
sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mysql#minA1';" | |||
sudo mysql_secure_installation | |||
sudo mysql -e "FLUSH PRIVILEGES;" -u root -pmysql#minA1 | |||
systemctl status mysql.service | |||
#OPTIONS | |||
SKIPPREREQS=true | |||
SKIPDEVPREREQS=true | |||
# Init DB schema and Load Data | |||
mysql -u root -pmysql#minA1 < cihsr-data/cihsr-dev-schema.sql | |||
if [ "$SKIPPREREQS" = "true" ]; then | |||
echo "skipping prereqs for firstrun" | |||
else | |||
sudo groupadd chessprod | |||
echo "$USER" | |||
sudo usermod -a -G chessprod $USER | |||
sudo apt update | |||
# Install prerequisites for dev environment | |||
sudo apt install git | |||
git config --global user.name "$GITUSER" | |||
git config --global credential.helper store | |||
#git config --global credential.helper 'store --file ~/.git-credentials' | |||
#echo "Enter git username: " | |||
#read gitUser | |||
#git config --global user.name '${gitUser}' | |||
#echo "username=$gitUser" >> ~/.git-credentials | |||
#echo "Enter git password: " | |||
#read gitPassword | |||
#git config --global user.password '${gitPassword}' | |||
#echo "password=$gitPassword" >> ~/.git-credentials | |||
#chmod 0600 ~/.git-credentials | |||
sudo apt install python2 | |||
sudo apt install build-essential | |||
sudo apt install -y make | |||
#INSTALLING NODE JS | |||
cd ~ | |||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | |||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash | |||
sleep 2 | |||
touch ~/.bashrc | |||
source ~/.bashrc | |||
export NVM_DIR="$HOME/.nvm" | |||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion | |||
sleep 2 | |||
nvm list-remote | |||
sleep 2 | |||
nvm install v16.19.1 | |||
sleep 2 | |||
node --version | |||
npm --version | |||
# OLD version... | |||
#sudo apt install nodejs | |||
#sudo apt install npm | |||
# For production we create a npm global per user. | |||
# npm prefix is not compatible with nvm!!! | |||
# mkdir -p ~/.user_global_node_modules/ | |||
# npm config set prefix '~/.user_global_node_modules' | |||
# sudo mkdir /usr/local/lib/node_modules/ | |||
# sudo chown -R root:chessprod /usr/local/lib/node_modules/ | |||
# sudo chmod g+w /usr/local/lib/node_modules/ | |||
# grep -qxF 'export PATH=~/.user_global_node_modules/bin:$PATH' ~/.profile || echo 'export PATH=~/.user_global_node_modules/bin:$PATH' >> ~/.profile | |||
if [ "$SKIPPREREQS" = "true" ]; then | |||
echo "skipping dev prereqs for firstrun" | |||
else | |||
#install code | |||
sudo apt-get install wget gpg | |||
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg | |||
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg | |||
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list' | |||
rm -f packages.microsoft.gpg | |||
sudo apt install apt-transport-https | |||
sudo apt update | |||
sudo apt install code | |||
install code | |||
sudo apt-get install wget gpg | |||
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg | |||
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg | |||
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list' | |||
rm -f packages.microsoft.gpg | |||
sudo apt install apt-transport-https | |||
sudo apt update | |||
sudo apt install code | |||
fi | |||
sudo mkdir -p /var/chess | |||
sudo chown $USER:$USER /var/chess | |||
ROOT=/var/chess/$INSTANCENAME/$INSTANCETYPE | |||
echo $ROOT | |||
sudo mkdir -p $ROOT | |||
cd $ROOT | |||
git clone $REPOSERVER/$REPOOWNER/elxr.git | |||
cd elxr | |||
npm i | |||
npm link | |||
cd .. | |||
# Install mysql | |||
#sudo apt install mysql-server -y | |||
systemctl is-active mysql | |||
#sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mysql#minA1';" | |||
#sudo mysql_secure_installation | |||
#sudo mysql -e "FLUSH PRIVILEGES;" -u root -pmysql#minA1 | |||
#systemctl status mysql.service | |||
# Init DB schema and Load Data | |||
#mysql -u root -pmysql#minA1 < cihsr-data/cihsr-dev-schema.sql | |||
fi | |||
echo module.exports = { instanceName : "'$INSTANCENAME'", reposerver: "'$REPOSERVER'", gitUser: "'$GITUSER'", gitEmail:"'$GITEMAIL'" } > installchoices.js | |||
elxr use elixir | |||
elxr i | |||
@@ -567,7 +567,7 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
// PB : TODO -- pick up remote definitions per repository... | |||
var reposmanfiest = utils.assign_core( { keycase : true, arraymergetype : utils.assign_core.DISTINCT_UNION } | |||
, {}, selectedinstance, loadmanifest( selectedinstance.root + '/' + repo | |||
, { utils, username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, { username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, node_env : selectedinstance.node_env, reposerver : selectedinstance.reposerver } | |||
)) | |||
@@ -862,7 +862,7 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
try { | |||
// PB : TODO -- pick up remote definitions per repository... | |||
return utils.assign_core( { keycase : true, arraymergetype : utils.assign_core.DISTINCT_UNION } | |||
, {}, require(path.normalize( mpath + '/repo-manifest'))( null, moverrides )) | |||
, {}, require(path.normalize( mpath + '/repo-manifest'))( {utils}, null, moverrides )) | |||
} | |||
catch(e){ | |||
@@ -1232,7 +1232,7 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
// Also attepmt to load preconfig specially for new chessinstances from ../chess-config/... | |||
var __repo_manifest_elxr = loadmanifest( instance.root + '/elxr' | |||
, { utils, username : instance.username /** ??? TODO */ , instanceName : instance.instanceName /** ??? TODO */ | |||
, { username : instance.username /** ??? TODO */ , instanceName : instance.instanceName /** ??? TODO */ | |||
, node_env : clioverrides.node_env, reposerver : instance.reposerver /** ??? TODO */ } // options | |||
) | |||
@@ -1245,10 +1245,10 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
if(instance_specific_config_manifest.error) console.log(instance_specific_config_manifest.e.message) | |||
delete __repo_manifest_elxr.error | |||
delete __repo_manifest_elxr.e | |||
delete __repo_manifest_elxr.utils | |||
// delete __repo_manifest_elxr.utils | |||
delete instance_specific_config_manifest.error | |||
delete instance_specific_config_manifest.e | |||
delete instance_specific_config_manifest.utils | |||
// delete instance_specific_config_manifest.utils | |||
// selectedinstance is not complete until we load in the following order of priority... | |||
// 1) inline defaults | |||
@@ -1835,7 +1835,7 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
// PB : TODO -- pick up remote definitions per repository... | |||
var reposmanfiest = utils.assign_core( { keycase : true, arraymergetype : utils.assign_core.DISTINCT_UNION } | |||
, {}, selectedinstance, loadmanifest( selectedinstance.root + '/' + repo | |||
, { utils, username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, { username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, node_env : selectedinstance.node_env, reposerver : selectedinstance.reposerver } | |||
)) | |||
@@ -4337,7 +4337,7 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
statuslog.statuslog(e, e) | |||
var manifestpath = path.normalize(selected.root + '/' + selected.instanceName + '-config-' + selected.node_env + '/repo-manifest'); | |||
utils.assign_core( { keycase : true, arraymergetype : utils.assign_core.DISTINCT_UNION } | |||
, selectedinstance, require(manifestpath)( null, { utils, username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, selectedinstance, require(manifestpath)( {utils}, null, { username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, node_env : selectedinstance.node_env, reposerver : 'https://git.bbh.org.in' } )) | |||
console.dir(selectedinstance.repos) | |||
// Config from server always override merges into selection except for the current selection. | |||
@@ -4571,7 +4571,7 @@ shell_verse.acquireElevationState().then((isElevated) => { | |||
var manifestpath = path.normalize(selected.root + '/' + selected.instanceName + '-config-' + selected.node_env + '/repo-manifest'); | |||
utils.assign_core( { keycase : true, arraymergetype : utils.assign_core.DISTINCT_UNION } | |||
, selectedinstance, require(manifestpath)( null, { utils, username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, selectedinstance, require(manifestpath)( {utils}, null, { username : selectedinstance.username, instanceName : selectedinstance.instanceName | |||
, node_env : selectedinstance.node_env, reposerver : selectedinstance.reposerver })) | |||
console.dir(selectedinstance.repos) | |||
// Config from server always override merges into selection except for the current selection. |
@@ -94,6 +94,9 @@ var shell_verse = { | |||
, runElevatedBatch( batchToRun ){ | |||
// In windows we don't need to run each task. We hand over to another shell which in elevated state rebuilds the whole batch and runs. | |||
// Irrespective of the batch we just call runElevated once. | |||
batchToRun.forEach(element => { | |||
element.processedArgs = batchToRun[0].processedArgs | |||
}); | |||
return any(batchToRun.map(shell_verse.runElevated)) | |||
} | |||
@@ -0,0 +1,267 @@ | |||
# wget https://git.bbh.org.in/chess/elxr/raw/branch/master/linux_setup.sh | |||
#STORE GIT CREDENTIALS IN CACHE | |||
sudo yum install git | |||
# git config --global --unset credential.helper | |||
git config --global credential.helper store | |||
# git config --global credential.helper 'store --file ~/.git-credentials' | |||
# echo "Enter git username: " | |||
# read gitUser | |||
# echo "username=$gitUser" >> ~/.git-credentials | |||
# echo "Enter git password: " | |||
# read gitPassword | |||
# echo "password=$gitPassword" >> ~/.git-credentials | |||
# chmod 0600 ~/.git-credentials | |||
# Install prerequisites | |||
#NODE JS 16.17.1 | |||
wget https://nodejs.org/dist/v16.17.1/node-v16.17.1-linux-x64.tar.xz | |||
tar -xf node-v16.17.1-linux-x64.tar.xz | |||
# Move the extracted folder to /usr/local/lib | |||
sudo mv node-v16.17.1-linux-x64 /usr/local/lib/ | |||
# Create a symbolic link to the node executable | |||
sudo ln -s /usr/local/lib/node-v16.17.1-linux-x64/bin/node /usr/local/bin/node | |||
node -v | |||
#NPM | |||
sudo yum install npm | |||
#INSTALLING NODE JS | |||
npm install -g pm2 | |||
npm install -g ember-cli | |||
npm install -g loopback-cli | |||
#development A SETUP | |||
cd ~ | |||
cd Desktop | |||
mkdir chess | |||
cd chess | |||
mkdir development_A | |||
cd development_A | |||
git clone http://git.bbh.org.in/chess/cihsr-config-development | |||
cd cihsr-config-development | |||
git checkout master | |||
npm i --force | |||
#TO CREATE SYMLINK | |||
cd .. | |||
ln -s cihsr-config-development/ config | |||
git clone http://git.bbh.org.in/chess/cihsr-data | |||
cd cihsr-data | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
ln -s cihsr-data/ data | |||
git clone http://git.bbh.org.in/chess/ember-masonry-grid | |||
cd ember-masonry-grid | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/bbhverse | |||
cd bbhverse | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/clientverse | |||
cd clientverse | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/serververse | |||
cd serververse | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/elxr | |||
cd elxr | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-searchable-select | |||
cd ember-searchable-select | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-component-jsonapi | |||
cd loopback-component-jsonapi | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-jsonapi-model-serializer | |||
cd loopback-jsonapi-model-serializer | |||
git checkout master | |||
npm i --force | |||
npm run build | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-connector-mysql | |||
cd loopback-connector-mysql | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-connector-ds | |||
cd loopback-connector-ds | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/setup | |||
cd setup | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-service-worker | |||
cd ember-service-worker | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-service-worker-asset-cache | |||
cd ember-service-worker-asset-cache | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-service-worker-cache-fallback | |||
cd ember-service-worker-cache-fallback | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-service-worker-index | |||
cd ember-service-worker-index | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-sw-client-route | |||
cd ember-sw-client-route | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/global-this | |||
cd global-this | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/ember-cp-validations | |||
cd ember-cp-validations | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-connector | |||
cd loopback-connector | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback | |||
cd loopback | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-datasource-juggler | |||
cd loopback-datasource-juggler | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-connector-mssql | |||
cd loopback-connector-mssql | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-filters | |||
cd loopback-filters | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/loopback-connector-sqlite3 | |||
cd loopback-connector-sqlite3 | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/chess-server-lib | |||
cd chess-server-lib | |||
git checkout master | |||
npm i --force | |||
cd server | |||
npm i --force | |||
cd .. | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/cihsr-server | |||
cd cihsr-server | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/bbh_patient_portal | |||
cd bbh_patient_portal | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/project-genesis-frontend | |||
cd project-genesis-frontend | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/project-genesis-backend | |||
cd project-genesis-backend | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/processmanager | |||
cd processmanager | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/client | |||
cd client | |||
git checkout master | |||
npm i --force | |||
bower install | |||
node_modules/.bin/bower install | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/chess-client-lib | |||
cd chess-client-lib | |||
git checkout master | |||
npm i --force | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/elixir-client | |||
cd elixir-client | |||
git checkout master | |||
npm i --force | |||
cd chess-client-lib | |||
npm i --force | |||
cd .. |
@@ -1,7 +1,9 @@ | |||
module.exports = ((name, options)=>{ | |||
module.exports = ((meta, options)=>{ | |||
var name = meta.name | |||
const utils = meta.utils | |||
options = options || { username : `guest`, reposerver : `https://git.bbh.org.in`, password : `noneforguest` } | |||
utils = options.utils | |||
// Default set of users in main repos. | |||
var users = [ |
@@ -0,0 +1,255 @@ | |||
#STORE GIT CREDENTIALS IN CACHE | |||
sudo apt install git | |||
git config --global credential.helper store | |||
git config --global credential.helper 'store --file ~/.git-credentials' | |||
echo "Enter git username: " | |||
read gitUser | |||
echo "username=$gitUser" >> ~/.git-credentials | |||
echo "Enter git password: " | |||
read gitPassword | |||
echo "password=$gitPassword" >> ~/.git-credentials | |||
chmod 0600 ~/.git-credentials | |||
sudo apt update | |||
# Install prerequisites for dev environment | |||
sudo apt install python2 | |||
# sudo apt install build-essential | |||
# sudo apt install -y make | |||
sudo apt install nodejs | |||
sudo apt install npm | |||
#INSTALLING NODE JS | |||
npm install -g pm2 | |||
npm install -g ember-cli | |||
#PRODUCTION A SETUP | |||
cd ~ | |||
cd Desktop | |||
mkdir chess | |||
cd chess | |||
mkdir production_A | |||
cd production_A | |||
git clone https://git.bbh.org.in/chess/ember-masonry-grid | |||
cd ember-masonry-grid | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/bbhverse | |||
cd bbhverse | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/clientverse | |||
cd clientverse | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/serververse | |||
cd serververse | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/client | |||
cd client | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/elxr | |||
cd elxr | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-searchable-select | |||
cd ember-searchable-select | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-component-jsonapi | |||
cd loopback-component-jsonapi | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-jsonapi-model-serializer | |||
cd loopback-jsonapi-model-serializer | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-connector-mysql | |||
cd loopback-connector-mysql | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/cihsr-config-development | |||
cd cihsr-config-development | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/cihsr-config-production | |||
cd cihsr-config-production | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/cihsr-data | |||
cd cihsr-data | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-connector-ds | |||
cd loopback-connector-ds | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/chess-server-lib | |||
cd chess-server-lib | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/setup | |||
cd setup | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/elixir-client-todos | |||
cd elixir-client-todos | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-service-worker | |||
cd ember-service-worker | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-service-worker-asset-cache | |||
cd ember-service-worker-asset-cache | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-service-worker-cache-fallback | |||
cd ember-service-worker-cache-fallback | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-service-worker-index | |||
cd ember-service-worker-index | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-sw-client-route | |||
cd ember-sw-client-route | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/global-this | |||
cd global-this | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/ember-cp-validations | |||
cd ember-cp-validations | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/chess-client-lib | |||
cd chess-client-lib | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-connector | |||
cd loopback-connector | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback | |||
cd loopback | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-datasource-juggler | |||
cd loopback-datasource-juggler | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-connector-mssql | |||
cd loopback-connector-mssql | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-filters | |||
cd loopback-filters | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/loopback-connector-sqlite3 | |||
cd loopback-connector-sqlite3 | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/Trias-Elixir_Hybrid | |||
cd Trias-Elixir_Hybrid | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/bbh_patient_portal | |||
cd bbh_patient_portal | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/project-genesis-frontend | |||
cd project-genesis-frontend | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone https://git.bbh.org.in/chess/project-genesis-backend | |||
cd project-genesis-backend | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/processmanager | |||
cd processmanager | |||
git checkout production | |||
npm i | |||
#TO CREATE SYMLINK | |||
cd .. | |||
ln -s cihsr-config-production/ config | |||
@@ -0,0 +1,16 @@ | |||
#!/bin/bash | |||
# Set the database credentials | |||
DB_USER="root" | |||
DB_PASS="root@123" | |||
DB_NAME="triq_demo" | |||
# Set the backup directory | |||
BACKUP_DIR="/mysql_backup" | |||
# Set the backup filename format | |||
DATE=$(date +"%Y-%m-%d_%H-%M-%S") | |||
FILENAME="${DB_NAME}_${DATE}" | |||
# Create the backup | |||
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/$FILENAME |
@@ -0,0 +1,29 @@ | |||
# Set the database credentials | |||
sudo apt-get update | |||
sudo apt-get -y install cifs-utils | |||
cd / | |||
mkdir mysql_backup | |||
sleep 2 | |||
sudo chmod 777 mysql_backup | |||
sleep 2 | |||
sudo mount //10.10.5.26/trias /mysql_backup/ -o username='baptist',password='2021Bbh',domain='bbh' | |||
sleep 2 | |||
cd /mysql_backup/ | |||
ls | |||
DB_USER="root" | |||
DB_PASS="root@123" | |||
DB_NAME="triq_demo" | |||
# Set the backup directory | |||
echo "Enter the name of backup file: " | |||
read fileName | |||
BACKUP_FILE="/mysql_backup/$fileName" | |||
mysql -u $DB_USER -p$DB_PASS -e "CREATE database triq_demo;" | |||
# Restore backup file | |||
mysql -u $DB_USER -p$DB_PASS $DB_NAME < $BACKUP_FILE |
@@ -0,0 +1,19 @@ | |||
#SCRIPT TO PULL LATEST UPDATES AUTOMATICALLY | |||
git config --global credential.helper store | |||
cd ../project-genesis-backend | |||
git pull | |||
cd ../project-genesis-frontend | |||
git pull | |||
cd ../bbh_patient_portal | |||
git pull | |||
cd ../trias-config-production | |||
git pull | |||
cd ../processmanager | |||
git pull | |||
pm2 reload all |
@@ -0,0 +1,113 @@ | |||
#INSTALLING NODE JS | |||
cd ~ | |||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | |||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash | |||
sleep 2 | |||
source ~/.bashrc | |||
export NVM_DIR="$HOME/.nvm" | |||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | |||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion | |||
sleep 2 | |||
nvm list-remote | |||
sleep 2 | |||
nvm install v16.19.1 | |||
sleep 2 | |||
node --version | |||
npm --version | |||
npm install -g @angular/cli | |||
npm install -g pm2 | |||
# echo "Enter the version of node you want to install: (Example. 'v16.19.1')" | |||
# read nodeversion | |||
# nvm install $nodeversion | |||
#STORE GIT CREDENTIALS IN CACHE | |||
git config --global credential.helper store | |||
# git config --global credential.helper 'store --file ~/.git-credentials' | |||
# echo "Enter git username: " | |||
# read gitUser | |||
# git config --global user.name '${gitUser}' | |||
# echo "username=$gitUser" >> ~/.git-credentials | |||
# echo "Enter git password: " | |||
# read gitPassword | |||
# git config --global user.password '${gitPassword}' | |||
# echo "password=$gitPassword" >> ~/.git-credentials | |||
# chmod 0600 ~/.git-credentials | |||
#PRODUCTION A SETUP | |||
cd ~ | |||
cd Desktop | |||
mkdir chess | |||
cd chess | |||
mkdir production_A | |||
cd production_A | |||
git clone http://git.bbh.org.in/chess/project-genesis-backend | |||
cd project-genesis-backend | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/project-genesis-frontend | |||
cd project-genesis-frontend | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/bbh_patient_portal | |||
cd bbh_patient_portal | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/Trias_Org/trias-config-production | |||
cd trias-config-production | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/processmanager | |||
cd processmanager | |||
git checkout production | |||
npm i | |||
#TO CREATE SYMLINK | |||
cd .. | |||
ln -s trias-config-production/ config | |||
#PRODUCTION B SETUP | |||
cd ~ | |||
cd Desktop | |||
cd chess | |||
mkdir production_B | |||
cd production_B | |||
git clone http://git.bbh.org.in/chess/project-genesis-backend | |||
cd project-genesis-backend | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/project-genesis-frontend | |||
cd project-genesis-frontend | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/bbh_patient_portal | |||
cd bbh_patient_portal | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/Trias_Org/trias-config-production | |||
cd trias-config-production | |||
git checkout production | |||
npm i | |||
cd .. | |||
git clone http://git.bbh.org.in/chess/processmanager | |||
cd processmanager | |||
git checkout production | |||
npm i | |||
#TO CREATE SYMLINK | |||
cd .. | |||
ln -s trias-config-production/ config |
@@ -0,0 +1,38 @@ | |||
#MYSQL SERVER INSTALLATION | |||
sudo apt update | |||
sudo apt install mysql-server | |||
sudo systemctl start mysql.service | |||
sleep 2 | |||
cd / | |||
sudo mkdir mysql_backup | |||
#STEPS FOR MYSQL_SECURE_INSTALLATION | |||
#STEP-1 sudo mysql | |||
#STEP-2 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'SET_PASSWORD'; | |||
#STEP-3 exit; | |||
#STEP-4 sudo sed -i "s/.*bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/mysql.conf.d/mysqld.cnf | |||
#STEP-5 sudo systemctl restart mysql | |||
#STEP-6 mysql -u root -p | |||
#STEP-7 ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket; AND FOLLOW THE STEPS | |||
#STEP-8 exit; | |||
#STEP-9 sudo mysql_secure_installation; | |||
#STEP-10 sudo mysql; | |||
#STEP-11 mysql -u root -p | |||
#STEP-12 "ENTER MYSQL PASSWORD THAT WAS SET IN STEP 2" | |||
#STEP-13 CREATE USER '_username_'@'_desiredIP_' IDENTIFIED WITH mysql_native_password BY 'password'; | |||
#STEP-14 GRANT ALL PRIVILEGES ON *.* TO '_username_'@'_desiredIP_' WITH GRANT OPTION; | |||
#STEP-15 FLUSH PRIVILEGES; | |||
echo "Please enter password for mysql: " | |||
read password | |||
sudo mysql -u root -p${password} -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '${password}';" | |||
sudo sed -i "s/.*bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/mysql.conf.d/mysqld.cnf | |||
sudo systemctl restart mysql | |||
echo "Please enter the IP address of app server: " | |||
read IP | |||
sudo mysql -u root -p${password} -e "CREATE USER 'root'@'${IP}' IDENTIFIED WITH mysql_native_password BY '${password}';"; | |||
sudo mysql -u root -p${password} -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'${IP}' WITH GRANT OPTION;" | |||
sudo mysql -u root -p${password} -e "FLUSH PRIVILEGES;" | |||