Installation of required additional softwareInstall GIT Git is required, to checkout the software and the default mysql-client is required (for running the update scripts). Warning |
---|
If you are installing STORE on a machine which will contain the role DATA too, then do not install the default mysql client, as this will collide with MySQL. Instead, install the MySQL software first (see role DATA). |
Translations Ignore |
---|
Code Block |
---|
| apt-get -y install git default-mysql-client
su jtel
cd
git config --global user.name "jtel Support"
git config --global user.email "support@jtel.de"
git config --global http.postBuffer 1048576000 |
|
If you need a proxy for GIT: Translations Ignore |
---|
Code Block |
---|
| git config --global http.proxy http://<proxy_server>:<port> |
|
Downloading the jtel software for the first timeNote: for redundant systems, do this on the ACTIVE storage node. Change to jtel UserThe following operations are no longer performed in the context of the root user but must be performed in the context of the jtel user. To do this, you can either log in as user jtel in a separate SSH session or, if you are already logged in as user root, you can switch to the context of the jtel user. This is done with the following command: Clone jtel SoftwareNext, the jtel Software is cloned. This will be done in 2 steps, as a user name and password is required for each one. Translations Ignore |
---|
Code Block |
---|
| cd /srv/jtel/shared
git clone https://bitbucket.org/jtelgmbh/jtel.git JTEL |
Code Block |
---|
| cd /srv/jtel/shared
git clone https://bitbucket.org/jtelgmbh/jtelcarrierportal.git JTELCarrierPortal |
Code Block |
---|
| cd /srv/jtel/shared
git clone https://bitbucket.org/jtelgmbh/jtel-system-java-services.git jtel-system-java-services |
|
Clone Customer SoftwareIf specific software has been programmed for the customer, the customer-specific software repository must also be downloaded. This is done by a command which is structured as follows, for the example customer acme: Translations Ignore |
---|
Code Block |
---|
language | bash |
---|
title | Download a custom repository |
---|
| cd /srv/jtel/shared
git clone https://bitbucket.org/jtelgmbh/cacme-software.git acme |
|
Change to required Software ReleaseIn the downloaded software repositories, the software release to be used must now be selected. In this case it is release 3.2029: Translations Ignore |
---|
Code Block |
---|
language | bash |
---|
title | Select the desired release |
---|
| cd /srv/jtel/shared/JTELCarrierPortal
git config pull.rebase false
git checkout release/stable-3.2832
cd /srv/jtel/shared/JTEL
git config pull.rebase false
git checkout release/stable-3.32
cd /srv/jtel/shared/jtel-system-java-services
git config pull.rebase false
git checkout release/stable-3.2832
# For customer specific software only
# cd /srv/jtel/shared/acme
# git checkout develop
cd /srv/jtel/shared |
|
Note, that the customer specific release is usually develop, as customer releases are not branched or tagged when the jtel Software is branched or tagged. Create Required DirectoriesThe last step is to create the directories for central logging, standard data import and the main data directory:. This uses a basic data directory download which fits the Init.sql script (used later in role DATA). Translations Ignore |
---|
Code Block |
---|
| cd /srv/jtel/shared
mkdir -p LogFiles LogFilesCall Import/{Clients,ServiceNumbers}/{Done,In,Problems}
wget https://cdn.jtel.de/downloads/Data/Data.zip
unzip Data.zip
rm -f Data.zip
cp -a JTELCarrierPortal/Data .
cp -a JTEL/Data/system/gui Data/system
cd /srv/jtel/shared/JTELCarrierPortal/Update
bash ./get_binaries.sh |
|
Cleaner processesA CRON job is used to clean up the directories of the portal. With redundancy, configure this on both STORE. Since the directory is only mounted on one, but we don't know which one is active, the command must be executed on both. Note: execute as ROOT. Translations Ignore |
---|
Code Block |
---|
language | bash |
---|
title | Cleaner processes in /etc/cron.daily |
---|
| # Make Directory
mkdir -p /home/jtel/jtel_dailyjobs
# Does the dailyjobs script exist? If not, create.
if [ ! -f /home/jtel/jtel_dailyjobs/jtel_dailyjobs.sh ]; then
# No - so create it
cat << EOFF > /home/jtel/jtel_dailyjobs/jtel_dailyjobs.sh
#!/bin/bash
EOFF
# Create cron script
cat << EOF > /home/jtel/jtel_dailyjobs/jtel_dailyjobs
#!/bin/bash
su - jtel -c '/home/jtel/jtel_dailyjobs/jtel_dailyjobs.sh'
EOF
# Link to cron.daily
ln -s /home/jtel/jtel_dailyjobs/jtel_dailyjobs /etc/cron.daily
# Make executable
chmod +x /home/jtel/jtel_dailyjobs/jtel_portal_cleanerdailyjobs
chmod +x /home/jtel/jtel_dailyjobs/jtel_dailyjobs.sh
fi
# Create the cleaner script
cat << 'EOFF' > /home/jtel/jtel_dailyjobs/jtel_portal_cleaner.sh
#!/bin/bash
find /srv/jtel/shared/Data/clients/*/reports -type f -mtime +2 -delete
EOFF
# Make executable
chmod +x /home/jtel/jtel_dailyjobs/jtel_portal_cleaner.sh
# Append job to jtel_dailyjobs.sh
cat /etc/cron.daily<< EOFF >> /home/jtel/jtel_dailyjobs/jtel_dailyjobs.sh
bash /home/jtel/jtel_dailyjobs/jtel_portal_cleaner.sh
EOFF
# Change ownership of everything to jtel
chown -R jtel:jtel /home/jtel/jtel_dailyjobs |
|
|