Simple collection of Groovy scripts to help me maintain some Jenkins systems.
See also https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+Script+Console
Please comment & let me know if you have a fork / fixes you'd like to include.
#!/bin/sh /etc/rc.common | |
# OpenWrt /etc/init.d/ script to backup and restore the rrd (collectd) database, to preserve data across reboots | |
# | |
# | |
# howto: | |
# - upload this file as /etc/init.d/rrdbackup | |
# - (optional) adjust BACKUP_DIR below to point to a different target directory for the backup (e.g., a USB drive) | |
# - # chmod +x /etc/init.d/rrdbackup | |
# - # /etc/init.d/rrdbackup enable |
#!/bin/bash | |
set -e | |
TOKEN=xxx | |
AUTH="Basic $(echo -n $TOKEN: | base64)" | |
SONARAPI="http://sonarqube/api" | |
for projKey in $(curl -s -X GET $SONARAPI/projects/search -H "Authorization: $AUTH" | \ | |
jq -r '.components[].key') |
#!/bin/bash | |
DRY_RUN=1 | |
if [ "$1" != "" ]; then | |
DRY_RUN="$1" | |
fi | |
MAX_VERSION=2 | |
if [ "$2" != "" ]; then | |
MAX_VERSION="$2" | |
fi |
Simple collection of Groovy scripts to help me maintain some Jenkins systems.
See also https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+Script+Console
Please comment & let me know if you have a fork / fixes you'd like to include.
#!/bin/bash | |
# proxvm | |
# Output in specifed format (default csv) all virtual machines on proxmox 4+ | |
SERVER=srv | |
USERNAME=username | |
PASSWORD=$(<$HOME/.pve-pass-file) | |
FORMAT=csv | |
#echo Connecting to $SERVER:8006 as $USERNAME:$PASSWORD | |
curl -s -k -d "username=$USERNAME" --data-urlencode "password=$PASSWORD" https://$SERVER:8006/api2/json/access/ticket | jq --raw-output '.data.ticket' | sed 's/^/PVEAuthCookie=/' > /tmp/cookie |
#!/bin/bash | |
# proxvm | |
# Output in specifed format (default csv) all virtual machines on proxmox 4+ | |
SERVER=localhost | |
USERNAME=apiread@pve | |
PASSWORD=123456 | |
FORMAT=csv | |
while [[ $# > 0 ]]; do | |
key="$1" |
package week1 | |
object countChange { | |
def countChange(money: Int, coins: List[Int]): Int = { | |
if (money > 0 && !coins.isEmpty) | |
countChange(money, coins.tail) + countChange(money - coins.head, coins) | |
else if (money == 0) 1 else 0 | |
} //> countChange: (money: Int, coins: List[Int])Int |
object balance { | |
def balance(chars: List[Char]): Boolean = { | |
def loop(acc: Int, list: List[Char]): Int = | |
if (list.isEmpty) acc | |
else if (list.head == '(') loop(acc + 1, list.tail) | |
else if (list.head == ')' && acc > 0) loop(acc - 1, list.tail) | |
else if (list.head == ')' && acc <= 0) -1 | |
else loop(acc, list.tail) |
object pascal { | |
def pascal(c: Int, r: Int): Int = { | |
def loop(c: Int, r: Int): Int = { | |
if (c == r || c == 0) 1 | |
else loop(c, r - 1) + loop(c - 1, r - 1) | |
} | |
loop(c, r) | |
} |