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_community_scripts
|
||||
"${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
|
||||
|
||||
# create super user
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@@ -49,5 +49,5 @@ nats-rmm.conf
|
||||
docs/site/
|
||||
reset_db.sh
|
||||
run_go_cmd.py
|
||||
rmm-go.conf
|
||||
nats-api.conf
|
||||
|
||||
|
@@ -19,6 +19,6 @@ class Command(BaseCommand):
|
||||
"port": int(db["PORT"]),
|
||||
"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:
|
||||
json.dump(config, f)
|
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_VERSION="15"
|
||||
SCRIPT_VERSION="16"
|
||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/backup.sh'
|
||||
|
||||
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 cp ${sysd}/rmm.service ${sysd}/celery.service ${sysd}/celerybeat.service ${sysd}/meshcentral.service ${sysd}/nats.service ${tmp_dir}/systemd/
|
||||
if [ -f "${sysd}/daphne.service" ]; then
|
||||
sudo cp ${sysd}/daphne.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}/nats-api.service" ]; then
|
||||
sudo cp ${sysd}/nats-api.service ${tmp_dir}/systemd/
|
||||
fi
|
||||
|
||||
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"]
|
||||
|
||||
COPY natsapi/bin/nats-api /usr/local/bin/
|
||||
RUN chmod +x /usr/local/bin/nats-api
|
||||
|
||||
COPY docker/containers/tactical-nats/entrypoint.sh /
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
||||
|
@@ -6,8 +6,10 @@ set -e
|
||||
|
||||
if [ "${DEV}" = 1 ]; then
|
||||
NATS_CONFIG=/workspace/api/tacticalrmm/nats-rmm.conf
|
||||
NATS_API_CONFIG=/workspace/api/tacticalrmm/nats-api.conf
|
||||
else
|
||||
NATS_CONFIG="${TACTICAL_DIR}/api/nats-rmm.conf"
|
||||
NATS_API_CONFIG="${TACTICAL_DIR}/api/nats-api.conf"
|
||||
fi
|
||||
|
||||
sleep 15
|
||||
@@ -37,6 +39,12 @@ stdout_logfile=/dev/fd/1
|
||||
stdout_logfile_maxbytes=0
|
||||
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
|
||||
)"
|
||||
|
||||
|
@@ -50,10 +50,6 @@ RUN apt-get update && \
|
||||
|
||||
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
|
||||
COPY docker/containers/tactical/entrypoint.sh /
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
@@ -129,6 +129,7 @@ EOF
|
||||
python manage.py load_chocos
|
||||
python manage.py load_community_scripts
|
||||
python manage.py reload_nats
|
||||
python manage.py create_natsapi_conf
|
||||
python manage.py create_installer_user
|
||||
|
||||
# create super user
|
||||
|
28
install.sh
28
install.sh
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_VERSION="55"
|
||||
SCRIPT_VERSION="56"
|
||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/install.sh'
|
||||
|
||||
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
|
||||
python manage.py migrate
|
||||
python manage.py collectstatic --no-input
|
||||
python manage.py create_natsapi_conf
|
||||
python manage.py load_chocos
|
||||
python manage.py load_community_scripts
|
||||
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
|
||||
[Unit]
|
||||
Description=NATS Server
|
||||
After=network.target ntp.service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
PrivateTmp=true
|
||||
@@ -458,6 +459,25 @@ EOF
|
||||
)"
|
||||
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
|
||||
server_tokens off;
|
||||
|
||||
@@ -791,6 +811,10 @@ python manage.py reload_nats
|
||||
deactivate
|
||||
sudo systemctl start nats.service
|
||||
|
||||
sleep 1
|
||||
sudo systemctl enable nats-api.service
|
||||
sudo systemctl start nats-api.service
|
||||
|
||||
## disable django admin
|
||||
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) {
|
||||
if cfg == "" {
|
||||
cfg = "/rmm/api/tacticalrmm/rmm-go.conf"
|
||||
cfg = "/rmm/api/tacticalrmm/nats-api.conf"
|
||||
if !trmm.FileExists(cfg) {
|
||||
err = errors.New("unable to find config file")
|
||||
return
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_VERSION="31"
|
||||
SCRIPT_VERSION="32"
|
||||
SCRIPT_URL='https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/restore.sh'
|
||||
|
||||
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
|
||||
python manage.py migrate
|
||||
python manage.py collectstatic --no-input
|
||||
python manage.py create_natsapi_conf
|
||||
python manage.py reload_nats
|
||||
deactivate
|
||||
|
||||
@@ -333,7 +334,7 @@ sudo chown -R $USER:$GROUP /home/${USER}/.cache
|
||||
print_green 'Enabling Services'
|
||||
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
|
||||
sudo systemctl enable ${i}
|
||||
sudo systemctl stop ${i}
|
||||
|
30
update.sh
30
update.sh
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_VERSION="125"
|
||||
SCRIPT_VERSION="126"
|
||||
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'
|
||||
YELLOW='\033[1;33m'
|
||||
@@ -123,7 +123,30 @@ sudo systemctl daemon-reload
|
||||
sudo systemctl enable daphne.service
|
||||
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
|
||||
printf >&2 "${GREEN}Stopping ${i} service...${NC}\n"
|
||||
sudo systemctl stop ${i}
|
||||
@@ -276,6 +299,7 @@ python manage.py collectstatic --no-input
|
||||
python manage.py reload_nats
|
||||
python manage.py load_chocos
|
||||
python manage.py create_installer_user
|
||||
python manage.py create_natsapi_conf
|
||||
python manage.py post_update_tasks
|
||||
deactivate
|
||||
|
||||
@@ -292,7 +316,7 @@ sudo rm -rf /var/www/rmm/dist
|
||||
sudo cp -pr /rmm/web/dist /var/www/rmm/
|
||||
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
|
||||
printf >&2 "${GREEN}Starting ${i} service${NC}\n"
|
||||
sudo systemctl start ${i}
|
||||
|
Reference in New Issue
Block a user