update for new service
This commit is contained in:
@@ -96,6 +96,7 @@ EOF
|
|||||||
"${VIRTUAL_ENV}"/bin/python manage.py load_chocos
|
"${VIRTUAL_ENV}"/bin/python manage.py load_chocos
|
||||||
"${VIRTUAL_ENV}"/bin/python manage.py load_community_scripts
|
"${VIRTUAL_ENV}"/bin/python manage.py load_community_scripts
|
||||||
"${VIRTUAL_ENV}"/bin/python manage.py reload_nats
|
"${VIRTUAL_ENV}"/bin/python manage.py reload_nats
|
||||||
|
"${VIRTUAL_ENV}"/bin/python manage.py create_natsapi_conf
|
||||||
"${VIRTUAL_ENV}"/bin/python manage.py create_installer_user
|
"${VIRTUAL_ENV}"/bin/python manage.py create_installer_user
|
||||||
|
|
||||||
# create super user
|
# create super user
|
||||||
|
|||||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -49,5 +49,5 @@ nats-rmm.conf
|
|||||||
docs/site/
|
docs/site/
|
||||||
reset_db.sh
|
reset_db.sh
|
||||||
run_go_cmd.py
|
run_go_cmd.py
|
||||||
rmm-go.conf
|
nats-api.conf
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,6 @@ class Command(BaseCommand):
|
|||||||
"port": int(db["PORT"]),
|
"port": int(db["PORT"]),
|
||||||
"dbname": db["NAME"],
|
"dbname": db["NAME"],
|
||||||
}
|
}
|
||||||
conf = os.path.join(settings.BASE_DIR, "rmm-go.conf")
|
conf = os.path.join(settings.BASE_DIR, "nats-api.conf")
|
||||||
with open(conf, "w") as f:
|
with open(conf, "w") as f:
|
||||||
json.dump(config, f)
|
json.dump(config, f)
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SCRIPT_VERSION="15"
|
SCRIPT_VERSION="16"
|
||||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/backup.sh'
|
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/backup.sh'
|
||||||
|
|
||||||
GREEN='\033[0;32m'
|
GREEN='\033[0;32m'
|
||||||
@@ -75,9 +75,9 @@ sudo tar -czvf ${tmp_dir}/confd/etc-confd.tar.gz -C /etc/conf.d .
|
|||||||
|
|
||||||
sudo gzip -9 -c /var/lib/redis/appendonly.aof > ${tmp_dir}/redis/appendonly.aof.gz
|
sudo gzip -9 -c /var/lib/redis/appendonly.aof > ${tmp_dir}/redis/appendonly.aof.gz
|
||||||
|
|
||||||
sudo cp ${sysd}/rmm.service ${sysd}/celery.service ${sysd}/celerybeat.service ${sysd}/meshcentral.service ${sysd}/nats.service ${tmp_dir}/systemd/
|
sudo cp ${sysd}/rmm.service ${sysd}/celery.service ${sysd}/celerybeat.service ${sysd}/meshcentral.service ${sysd}/nats.service ${sysd}/daphne.service ${tmp_dir}/systemd/
|
||||||
if [ -f "${sysd}/daphne.service" ]; then
|
if [ -f "${sysd}/nats-api.service" ]; then
|
||||||
sudo cp ${sysd}/daphne.service ${tmp_dir}/systemd/
|
sudo cp ${sysd}/nats-api.service ${tmp_dir}/systemd/
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cat /rmm/api/tacticalrmm/tacticalrmm/private/log/django_debug.log | gzip -9 > ${tmp_dir}/rmm/debug.log.gz
|
cat /rmm/api/tacticalrmm/tacticalrmm/private/log/django_debug.log | gzip -9 > ${tmp_dir}/rmm/debug.log.gz
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ RUN apk add --no-cache inotify-tools supervisor bash
|
|||||||
|
|
||||||
SHELL ["/bin/bash", "-e", "-o", "pipefail", "-c"]
|
SHELL ["/bin/bash", "-e", "-o", "pipefail", "-c"]
|
||||||
|
|
||||||
|
COPY natsapi/bin/nats-api /usr/local/bin/
|
||||||
|
RUN chmod +x /usr/local/bin/nats-api
|
||||||
|
|
||||||
COPY docker/containers/tactical-nats/entrypoint.sh /
|
COPY docker/containers/tactical-nats/entrypoint.sh /
|
||||||
RUN chmod +x /entrypoint.sh
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
|
|||||||
@@ -6,8 +6,10 @@ set -e
|
|||||||
|
|
||||||
if [ "${DEV}" = 1 ]; then
|
if [ "${DEV}" = 1 ]; then
|
||||||
NATS_CONFIG=/workspace/api/tacticalrmm/nats-rmm.conf
|
NATS_CONFIG=/workspace/api/tacticalrmm/nats-rmm.conf
|
||||||
|
NATS_API_CONFIG=/workspace/api/tacticalrmm/nats-api.conf
|
||||||
else
|
else
|
||||||
NATS_CONFIG="${TACTICAL_DIR}/api/nats-rmm.conf"
|
NATS_CONFIG="${TACTICAL_DIR}/api/nats-rmm.conf"
|
||||||
|
NATS_API_CONFIG="${TACTICAL_DIR}/api/nats-api.conf"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sleep 15
|
sleep 15
|
||||||
@@ -37,6 +39,12 @@ stdout_logfile=/dev/fd/1
|
|||||||
stdout_logfile_maxbytes=0
|
stdout_logfile_maxbytes=0
|
||||||
redirect_stderr=true
|
redirect_stderr=true
|
||||||
|
|
||||||
|
[program:nats-api]
|
||||||
|
command=/bin/bash -c "/usr/local/bin/nats-api -config ${NATS_API_CONFIG}"
|
||||||
|
stdout_logfile=/dev/fd/1
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
redirect_stderr=true
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
)"
|
)"
|
||||||
|
|
||||||
|
|||||||
@@ -50,10 +50,6 @@ RUN apt-get update && \
|
|||||||
|
|
||||||
SHELL ["/bin/bash", "-e", "-o", "pipefail", "-c"]
|
SHELL ["/bin/bash", "-e", "-o", "pipefail", "-c"]
|
||||||
|
|
||||||
# copy nats-api file
|
|
||||||
COPY natsapi/bin/nats-api /usr/local/bin/
|
|
||||||
RUN chmod +x /usr/local/bin/nats-api
|
|
||||||
|
|
||||||
# docker init
|
# docker init
|
||||||
COPY docker/containers/tactical/entrypoint.sh /
|
COPY docker/containers/tactical/entrypoint.sh /
|
||||||
RUN chmod +x /entrypoint.sh
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|||||||
@@ -129,6 +129,7 @@ EOF
|
|||||||
python manage.py load_chocos
|
python manage.py load_chocos
|
||||||
python manage.py load_community_scripts
|
python manage.py load_community_scripts
|
||||||
python manage.py reload_nats
|
python manage.py reload_nats
|
||||||
|
python manage.py create_natsapi_conf
|
||||||
python manage.py create_installer_user
|
python manage.py create_installer_user
|
||||||
|
|
||||||
# create super user
|
# create super user
|
||||||
|
|||||||
28
install.sh
28
install.sh
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SCRIPT_VERSION="55"
|
SCRIPT_VERSION="56"
|
||||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/install.sh'
|
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/install.sh'
|
||||||
|
|
||||||
sudo apt install -y curl wget dirmngr gnupg lsb-release
|
sudo apt install -y curl wget dirmngr gnupg lsb-release
|
||||||
@@ -351,6 +351,7 @@ pip install --no-cache-dir setuptools==${SETUPTOOLS_VER} wheel==${WHEEL_VER}
|
|||||||
pip install --no-cache-dir -r /rmm/api/tacticalrmm/requirements.txt
|
pip install --no-cache-dir -r /rmm/api/tacticalrmm/requirements.txt
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
python manage.py collectstatic --no-input
|
python manage.py collectstatic --no-input
|
||||||
|
python manage.py create_natsapi_conf
|
||||||
python manage.py load_chocos
|
python manage.py load_chocos
|
||||||
python manage.py load_community_scripts
|
python manage.py load_community_scripts
|
||||||
printf >&2 "${YELLOW}%0.s*${NC}" {1..80}
|
printf >&2 "${YELLOW}%0.s*${NC}" {1..80}
|
||||||
@@ -439,7 +440,7 @@ echo "${daphneservice}" | sudo tee /etc/systemd/system/daphne.service > /dev/nul
|
|||||||
natsservice="$(cat << EOF
|
natsservice="$(cat << EOF
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=NATS Server
|
Description=NATS Server
|
||||||
After=network.target ntp.service
|
After=network.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
PrivateTmp=true
|
PrivateTmp=true
|
||||||
@@ -458,6 +459,25 @@ EOF
|
|||||||
)"
|
)"
|
||||||
echo "${natsservice}" | sudo tee /etc/systemd/system/nats.service > /dev/null
|
echo "${natsservice}" | sudo tee /etc/systemd/system/nats.service > /dev/null
|
||||||
|
|
||||||
|
natsapi="$(cat << EOF
|
||||||
|
[Unit]
|
||||||
|
Description=TacticalRMM Nats Api v1
|
||||||
|
After=nats.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
ExecStart=/usr/local/bin/nats-api
|
||||||
|
User=${USER}
|
||||||
|
Group=${USER}
|
||||||
|
Restart=always
|
||||||
|
RestartSec=5s
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
)"
|
||||||
|
echo "${natsapi}" | sudo tee /etc/systemd/system/nats-api.service > /dev/null
|
||||||
|
|
||||||
nginxrmm="$(cat << EOF
|
nginxrmm="$(cat << EOF
|
||||||
server_tokens off;
|
server_tokens off;
|
||||||
|
|
||||||
@@ -791,6 +811,10 @@ python manage.py reload_nats
|
|||||||
deactivate
|
deactivate
|
||||||
sudo systemctl start nats.service
|
sudo systemctl start nats.service
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
sudo systemctl enable nats-api.service
|
||||||
|
sudo systemctl start nats-api.service
|
||||||
|
|
||||||
## disable django admin
|
## disable django admin
|
||||||
sed -i 's/ADMIN_ENABLED = True/ADMIN_ENABLED = False/g' /rmm/api/tacticalrmm/tacticalrmm/local_settings.py
|
sed -i 's/ADMIN_ENABLED = True/ADMIN_ENABLED = False/g' /rmm/api/tacticalrmm/tacticalrmm/local_settings.py
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -27,7 +27,7 @@ func setupNatsOptions(key string) []nats.Option {
|
|||||||
|
|
||||||
func GetConfig(cfg string) (db *sqlx.DB, r DjangoConfig, err error) {
|
func GetConfig(cfg string) (db *sqlx.DB, r DjangoConfig, err error) {
|
||||||
if cfg == "" {
|
if cfg == "" {
|
||||||
cfg = "/rmm/api/tacticalrmm/rmm-go.conf"
|
cfg = "/rmm/api/tacticalrmm/nats-api.conf"
|
||||||
if !trmm.FileExists(cfg) {
|
if !trmm.FileExists(cfg) {
|
||||||
err = errors.New("unable to find config file")
|
err = errors.New("unable to find config file")
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SCRIPT_VERSION="31"
|
SCRIPT_VERSION="32"
|
||||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/restore.sh'
|
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/restore.sh'
|
||||||
|
|
||||||
sudo apt update
|
sudo apt update
|
||||||
@@ -304,6 +304,7 @@ pip install --no-cache-dir setuptools==${SETUPTOOLS_VER} wheel==${WHEEL_VER}
|
|||||||
pip install --no-cache-dir -r /rmm/api/tacticalrmm/requirements.txt
|
pip install --no-cache-dir -r /rmm/api/tacticalrmm/requirements.txt
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
python manage.py collectstatic --no-input
|
python manage.py collectstatic --no-input
|
||||||
|
python manage.py create_natsapi_conf
|
||||||
python manage.py reload_nats
|
python manage.py reload_nats
|
||||||
deactivate
|
deactivate
|
||||||
|
|
||||||
@@ -333,7 +334,7 @@ sudo chown -R $USER:$GROUP /home/${USER}/.cache
|
|||||||
print_green 'Enabling Services'
|
print_green 'Enabling Services'
|
||||||
sudo systemctl daemon-reload
|
sudo systemctl daemon-reload
|
||||||
|
|
||||||
for i in celery.service celerybeat.service rmm.service daphne.service nginx
|
for i in celery.service celerybeat.service rmm.service daphne.service nats-api.service nginx
|
||||||
do
|
do
|
||||||
sudo systemctl enable ${i}
|
sudo systemctl enable ${i}
|
||||||
sudo systemctl stop ${i}
|
sudo systemctl stop ${i}
|
||||||
|
|||||||
30
update.sh
30
update.sh
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SCRIPT_VERSION="125"
|
SCRIPT_VERSION="126"
|
||||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/update.sh'
|
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/update.sh'
|
||||||
LATEST_SETTINGS_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/api/tacticalrmm/tacticalrmm/settings.py'
|
LATEST_SETTINGS_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/api/tacticalrmm/tacticalrmm/settings.py'
|
||||||
YELLOW='\033[1;33m'
|
YELLOW='\033[1;33m'
|
||||||
@@ -123,7 +123,30 @@ sudo systemctl daemon-reload
|
|||||||
sudo systemctl enable daphne.service
|
sudo systemctl enable daphne.service
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for i in nginx nats rmm daphne celery celerybeat
|
if [ ! -f /etc/systemd/system/nats-api.service ]; then
|
||||||
|
natsapi="$(cat << EOF
|
||||||
|
[Unit]
|
||||||
|
Description=TacticalRMM Nats Api v1
|
||||||
|
After=nats.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
ExecStart=/usr/local/bin/nats-api
|
||||||
|
User=${USER}
|
||||||
|
Group=${USER}
|
||||||
|
Restart=always
|
||||||
|
RestartSec=5s
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
)"
|
||||||
|
echo "${natsapi}" | sudo tee /etc/systemd/system/nats-api.service > /dev/null
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl enable nats-api.service
|
||||||
|
fi
|
||||||
|
|
||||||
|
for i in nginx nats-api nats rmm daphne celery celerybeat
|
||||||
do
|
do
|
||||||
printf >&2 "${GREEN}Stopping ${i} service...${NC}\n"
|
printf >&2 "${GREEN}Stopping ${i} service...${NC}\n"
|
||||||
sudo systemctl stop ${i}
|
sudo systemctl stop ${i}
|
||||||
@@ -276,6 +299,7 @@ python manage.py collectstatic --no-input
|
|||||||
python manage.py reload_nats
|
python manage.py reload_nats
|
||||||
python manage.py load_chocos
|
python manage.py load_chocos
|
||||||
python manage.py create_installer_user
|
python manage.py create_installer_user
|
||||||
|
python manage.py create_natsapi_conf
|
||||||
python manage.py post_update_tasks
|
python manage.py post_update_tasks
|
||||||
deactivate
|
deactivate
|
||||||
|
|
||||||
@@ -292,7 +316,7 @@ sudo rm -rf /var/www/rmm/dist
|
|||||||
sudo cp -pr /rmm/web/dist /var/www/rmm/
|
sudo cp -pr /rmm/web/dist /var/www/rmm/
|
||||||
sudo chown www-data:www-data -R /var/www/rmm/dist
|
sudo chown www-data:www-data -R /var/www/rmm/dist
|
||||||
|
|
||||||
for i in rmm daphne celery celerybeat nginx nats
|
for i in nats nats-api rmm daphne celery celerybeat nginx
|
||||||
do
|
do
|
||||||
printf >&2 "${GREEN}Starting ${i} service${NC}\n"
|
printf >&2 "${GREEN}Starting ${i} service${NC}\n"
|
||||||
sudo systemctl start ${i}
|
sudo systemctl start ${i}
|
||||||
|
|||||||
Reference in New Issue
Block a user