Сообщения

Mikrotik - отправляем backup на почту

Создаем скрипт backupemail  { #Create Variables :local emailAddress " test @gmail.com" # :log info "Starting Backup Script..."; :local sysname [/system identity get name]; :local sysver [/system package get system version]; :log info "Flushing DNS cache..."; /ip dns cache flush; :delay 2; :log info "Deleting last Backups..."; :foreach i in=[/file find] do={:if ([:typeof [:find [/file get $i name] "$sysname-backup-"]]!="nil") do={/file remove $i}}; :delay 2; #Create and E-mail Full Backup :local backupfile ("$sysname-backup-" . [:pick [/system clock get date] 7 11] . [:pick [/system clock get date] 0 3] . [:pick [/system clock get date] 4 6] . ".backup"); :log info "Creating new Full Backup file..."; /system backup save name=$backupfile; :delay 2; :log info "Sending Full Backup file via E-mail..."; #/tool e-mail send from=$EaccountFrom to=$EaccountTo server=$smtpserv port=587 user=$Eaccou...

Mikrotik - шлем уведомление о входе на роутер на почту

Создаем сервер, через который mikrotik будет слать сообщения: Тут разрешаем  https://myaccount.google.com/lesssecureapps В микротике: snmp set enabled=yes [admin@MikroTik] > /tool e-mail [admin@MikroTik] /tool e-mail> set address=smtp.gmail.com [admin@MikroTik] /tool e-mail> set port=587 [admin@MikroTik] /tool e-mail> set from= virtualcoin.videos@gmail.com [admin@MikroTik] /tool e-mail> set user= virtualcoin.videos@gmail.com [admin@MikroTik] /tool e-mail> set password= pass Проверка send to=test@gmail.com subject="Mikrotik test" body="email test" start-tls=yes Добавляем скрипт :local scheduleName "on_login" :local emailAddress " test @gmail.com" :local startBuf [:toarray [/log find message~"logged in" || message~"login failure"]] :if ([:len [/system scheduler find name="$scheduleName"]] = 0) do={   /log warning "[LOGMON] ERROR: Schedule does not exist. Create schedule and edit script to match n...

Jenkins

Ошибка  Scripts not permitted to use method hudson.model.Run getEnvironment hudson.model.TaskListener Поставил плагин Permissive Script Security JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dpermissive-script-security.enabled=true"  в /etc/sysconfig/jenkins

Запускаем из одной задачи другую с передачей параметров

Запустил test2 c выбором MODE, задача test2 запустила задачу test1 и передала в нее параметр MODE, значение в задаче получилось то, которое было передано из задачи test2. Использовал плагин groovy Код: import hudson.model.* def mode = build.getBuildVariables().get('MODE') def params = new StringParameterValue("MODE", mode) def paramsAction = new ParametersAction(params) def job = hudson.model.Hudson.instance.getJob("test1") def cause = new hudson.model.Cause.UpstreamCause(build) def causeAction = new hudson.model.CauseAction(cause) hudson.model.Hudson.instance.queue.schedule(job, 0, causeAction, paramsAction) import hudson.model.* def mode = build.getBuildVariables().get('MODE') def script = build.getBuildVariables().get('JSP_SCRIPT') ArrayList<ParameterValue> params = new ArrayList<ParameterValue>(); params.add(new StringParameterValue("MODE", mode)) params.add(new StringParameterValue("JSP_SCRIPT", script)) d...

Получаем инфу нагрузки по всем кластерам

 #!/bin/bash                                                                                                                                                                                                                                                                                        ...

Мануал установка Gradle + Android SDK

 Установка gradle: sudo mkdir -p /opt/gradle cd /opt/gradle sudo curl --location --show-error -O --url https://services.gradle.org/distributions/gradle-5.6.4-bin.zip sudo unzip gradle-5.6.4-bin.zip -d . sudo rm gradle-5.6.4-bin.zip sudo mcedit /etc/profile.d/gradle.sh   export GRADLE_HOME=/opt/gradle/gradle-5.6.4    export PATH=${GRADLE_HOME}/bin:${PATH} sudo chmod +x /etc/profile.d/gradle.sh source /etc/profile.d/gradle.sh gradle -v Установка android-sdk: sudo mkdir -p /opt/android-sdk sudo chown uniadmin:uniadmin /opt/android-sdk cd /opt/android-sdk curl https://dl.google.com/android/repository/commandlinetools-linux-6609375_latest.zip -o android-sdk.zip unzip android-sdk.zip -d . rm android-sdk.zip yes |./tools/bin/sdkmanager "tools" --sdk_root=/opt/android-sdk yes |./tools/bin/sdkmanager --licenses ./tools/bin/sdkmanager  "platform-tools" "platforms;android-28" ./tools/bin/sdkmanager  "platform-tools" "platforms;android-29" sudo mce...

Jenkins вытаскиваем в active choices параметры с сервера

Так можно вытащить содержимое каталога в groovy в active choice def sout = new StringBuilder(), serr = new StringBuilder() def proc = ["ssh", "-p22", "server", "ls ", "/var/lib/ ", "| tail -100"].execute() proc.consumeProcessOutput(sout, serr) proc.waitForOrKill(50000) list = sout.tokenize('\n') return list