From 2b713e47ecabe762d18c72b42922ddec4034390c Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Fri, 28 Jan 2022 10:42:17 -0500 Subject: [PATCH] build for 0.7.2 --- packer/jambonz-mini/scripts/install_app.sh | 17 ----------------- .../scripts/install_freeswitch.sh | 2 +- packer/jambonz-mini/scripts/install_mysql.sh | 19 +++++++++++-------- packer/jambonz-mini/scripts/install_nodejs.sh | 4 ++-- packer/jambonz-mini/template.json | 17 ++++++++--------- 5 files changed, 22 insertions(+), 37 deletions(-) diff --git a/packer/jambonz-mini/scripts/install_app.sh b/packer/jambonz-mini/scripts/install_app.sh index 690b2af..0d643f3 100755 --- a/packer/jambonz-mini/scripts/install_app.sh +++ b/packer/jambonz-mini/scripts/install_app.sh @@ -5,22 +5,6 @@ DB_PASS=$3 cd /home/admin cp /tmp/ecosystem.config.js apps -cd apps - -cd /home/admin/apps/jambonz-feature-server && sudo npm install --unsafe-perm -cd /home/admin/apps/fsw-clear-old-calls && npm install && sudo npm install -g . -cd /home/admin/apps/jambonz-api-server && sudo npm install --unsafe-perm -cd /home/admin/apps/jambonz-webapp && sudo npm install --unsafe-perm && npm run build -cd /home/admin/apps/sbc-options-handler && sudo npm install --unsafe-perm -cd /home/admin/apps/sbc-inbound && sudo npm install --unsafe-perm -cd /home/admin/apps/sbc-outbound && sudo npm install --unsafe-perm -cd /home/admin/apps/sbc-registrar && sudo npm install --unsafe-perm -cd /home/admin/apps/sbc-call-router && sudo npm install --unsafe-perm -cd /home/admin/apps/jambonz-api-server && sudo npm install --unsafe-perm -cd /home/admin/apps/jambonz-smpp-esme && sudo npm install --unsafe-perm -cd /home/admin/apps/sbc-rtpengine-sidecar && sudo npm install --unsafe-perm - -JAMBONES_MYSQL_HOST=localhost JAMBONES_MYSQL_USER=${DB_USER} JAMBONES_MYSQL_PASSWORD=${DB_PASS} JAMBONES_MYSQL_DATABASE=jambones /home/admin/apps/jambonz-api-server/db/reset_admin_password.js echo "0 * * * * root fsw-clear-old-calls --password JambonzR0ck$ >> /var/log/fsw-clear-old-calls.log 2>&1" | sudo tee -a /etc/crontab echo "0 1 * * * root find /tmp -name \"*.mp3\" -mtime +2 -exec rm {} \; > /dev/null 2>&1" | sudo tee -a /etc/crontab @@ -30,7 +14,6 @@ sudo -u admin bash -c "pm2 set pm2-logrotate:max_size 1G" sudo -u admin bash -c "pm2 set pm2-logrotate:retain 5" sudo -u admin bash -c "pm2 set pm2-logrotate:compress true" -rm sudo chown -R admin:admin /home/admin/apps sudo rm /home/admin/apps/jambonz-webapp/.env diff --git a/packer/jambonz-mini/scripts/install_freeswitch.sh b/packer/jambonz-mini/scripts/install_freeswitch.sh index 8cd52a6..e7cb2c8 100644 --- a/packer/jambonz-mini/scripts/install_freeswitch.sh +++ b/packer/jambonz-mini/scripts/install_freeswitch.sh @@ -6,7 +6,7 @@ GRPC_VERSION=c66d2cc GOOGLE_API_VERSION=e9da6f8b469c52b83f900e820be30762e9e05c57 AWS_SDK_VERSION=1.8.129 LWS_VERSION=v3.2.3 -MODULES_VERSION=v0.5.1 +MODULES_VERSION=v0.5.5 echo "freeswitch version to install is ${FREESWITCH_VERSION}" echo "drachtio modules version to install is ${MODULES_VERSION}" diff --git a/packer/jambonz-mini/scripts/install_mysql.sh b/packer/jambonz-mini/scripts/install_mysql.sh index 34d3ace..938513f 100644 --- a/packer/jambonz-mini/scripts/install_mysql.sh +++ b/packer/jambonz-mini/scripts/install_mysql.sh @@ -6,20 +6,23 @@ sudo apt install -y dirmngr sudo apt-key add - < /tmp/mysql-server.key echo "deb http://repo.mysql.com/apt/debian $(lsb_release -sc) mysql-8.0" | sudo tee /etc/apt/sources.list.d/mysql80.list sudo apt update -sudo debconf-set-selections <<< "mysql-community-server mysql-community-server/root-pass password JambonzR0ck$" -sudo debconf-set-selections <<< "mysql-community-server mysql-community-server/re-root-pass password JambonzR0ck$" +sudo debconf-set-selections <<< "mysql-community-server mysql-community-server/root-pass password JambonzR0ck\$" +sudo debconf-set-selections <<< "mysql-community-server mysql-community-server/re-root-pass password JambonzR0ck\$" sudo debconf-set-selections <<< "mysql-community-server mysql-server/default-auth-override select Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)" -sudo DEBIAN_FRONTEND=noninteractive apt install -y mysql-server +sudo DEBIAN_FRONTEND=noninteractive apt install -y default-mysql-server sudo systemctl enable mysql sudo systemctl restart mysql # create the database and the user -mysql -h localhost -u root -pJambonzR0ck$ << END +mysql -h localhost -u root -pJambonzR0ck\$ << END create database jambones; -create user ${DB_USER}@'%' IDENTIFIED WITH mysql_native_password by '${DB_PASS}'; -grant all on jambones.* to ${DB_USER}@'%'; +SET old_passwords=0; +create user $DB_USER@'%' IDENTIFIED BY '$DB_PASS'; +grant all on jambones.* to $DB_USER@'%' with grant option; +grant create user on *.* to $DB_USER@'%' with grant option; +flush privileges; END # create the schema -mysql -h localhost -u ${DB_USER} -p${DB_PASS} -D jambones < /home/admin/apps/jambonz-api-server/db/jambones-sql.sql -mysql -h localhost -u ${DB_USER} -p${DB_PASS} -D jambones < /home/admin/apps/jambonz-api-server/db/seed-production-database-open-source.sql +mysql -h localhost -u $DB_USER -p$DB_PASS -D jambones < /home/admin/apps/jambonz-api-server/db/jambones-sql.sql +mysql -h localhost -u $DB_USER -p$DB_PASS -D jambones < /home/admin/apps/jambonz-api-server/db/seed-production-database-open-source.sql diff --git a/packer/jambonz-mini/scripts/install_nodejs.sh b/packer/jambonz-mini/scripts/install_nodejs.sh index 422c8f1..8662a76 100644 --- a/packer/jambonz-mini/scripts/install_nodejs.sh +++ b/packer/jambonz-mini/scripts/install_nodejs.sh @@ -1,4 +1,4 @@ #!/bin/bash curl -sL https://deb.nodesource.com/setup_14.x | sudo bash - && sudo apt-get install -y nodejs -sudo npm install -g pino-pretty pm2 pm2-logrotate -sudo pm2 install pm2-logrotate +sudo npm install -g pino-pretty pm2 pm2-logrotate gulp grunt +sudo pm2 install pm2-logrotate \ No newline at end of file diff --git a/packer/jambonz-mini/template.json b/packer/jambonz-mini/template.json index 9488717..cbdd25b 100644 --- a/packer/jambonz-mini/template.json +++ b/packer/jambonz-mini/template.json @@ -4,8 +4,8 @@ "ssh_username": "admin", "ami_description": "jambonz all-in-one AMI", "instance_type": "t2.xlarge", - "drachtio_version": "v0.8.13-rc1", - "jambonz_version": "v0.7.1", + "drachtio_version": "v0.8.14", + "jambonz_version": "v0.7.2", "jambonz_user": "admin", "jambonz_password": "JambonzR0ck$", "install_telegraf": "yes", @@ -15,7 +15,7 @@ "install_homer": "yes", "install_nodered": "no", "influxdb_ip": "127.0.0.1", - "rtp_engine_version": "mr10.0.1.4", + "rtp_engine_version": "mr10.2.1.5", "rtp_engine_min_port": "40000", "rtp_engine_max_port": "60000" }, @@ -57,7 +57,7 @@ "while [ ! -f /var/lib/cloud/instance/boot-finished ]; do echo 'Waiting for cloud-init...'; sleep 1; done", "sudo apt-get update", "sudo apt-get -y install python lsof gcc g++ make cmake build-essential git autoconf automake default-mysql-client redis-tools \\", - "curl telnet libtool libtool-bin libssl-dev libcurl4-openssl-dev libz-dev systemd-coredump liblz4-tool \\", + "curl argon2 telnet libtool libtool-bin libssl-dev libcurl4-openssl-dev libz-dev systemd-coredump liblz4-tool \\", "iptables-dev libavformat-dev liblua5.1-0-dev libavfilter-dev libavcodec-dev libswresample-dev \\", "libevent-dev libpcap-dev libxmlrpc-core-c3-dev markdown libjson-glib-dev lsb-release \\", "libhiredis-dev gperf libspandsp-dev default-libmysqlclient-dev htop dnsutils gdb \\", @@ -65,7 +65,6 @@ "libspeex-dev libspeexdsp-dev libedit-dev libtiff-dev yasm libswscale-dev haveged jq fail2ban \\", "libopus-dev libsndfile-dev libshout3-dev libmpg123-dev libmp3lame-dev libopusfile-dev", "sudo chmod a+w /usr/local/src", - "mkdir ~/credentials", "mkdir ~/apps", "cd ~/apps", "git clone https://github.com/jambonz/sbc-options-handler.git -b {{user `jambonz_version`}}", @@ -90,6 +89,10 @@ "type": "shell", "script": "scripts/install_chrony.sh" }, + { + "type": "shell", + "script": "scripts/install_nodejs.sh" + }, { "type": "shell", "execute_command": "chmod +x {{ .Path }}; sudo '{{ .Path }}' {{user `install_influxdb`}}", @@ -104,10 +107,6 @@ "type": "shell", "script": "scripts/install_nginx.sh" }, - { - "type": "shell", - "script": "scripts/install_nodejs.sh" - }, { "type": "shell", "execute_command": "chmod +x {{ .Path }}; sudo '{{ .Path }}' {{user `jambonz_user`}} {{user `jambonz_password`}}",