Skip to content
Snippets Groups Projects
Select Git revision
  • 35b4606569a6ca22ef3c6973e93aab52223aff45
  • main default
  • 35-cgu
  • 34-peertube-support
  • 27-add-autoplay-to-iframe
  • 33-bug-on-youtube-embed-urls
  • RC-Rekall-v1.1-fix_lpo
  • tuleap-140-go-back-to-my-capsules-page-when-i-m-on-capsule-preview-page
  • RC-Rekall-v1.2-fix10
  • RC-Rekall-v1.2-fix9
  • RC-Rekall-v1.2-fix8
  • RC-Rekall-v1.2-fix7
  • RC-Rekall-v1.2-fix6
  • RC-Rekall-v1.2-fix5
  • RC-Rekall-v1.2-fix4
  • RC-Rekall-v1.2-fix3
  • RC-Rekall-v1.2-fix2
  • RC-Rekall-v1.2-fix1
  • RC-Rekall-v1.1-fix-3
  • RC-Rekall-v1.1-fix-2
  • RC-Rekall-v1.1-fix-1
  • RC-Rekall-v1.1-delivered
  • preprod20220209-1535
23 results

phpstan-tests.neon

Blame
  • upgrade_all.sh 1.69 KiB
    #!/bin/bash
    
    # Copyright (C) 2018  Tetras Libre <Contact@Tetras-Libre.fr>
    # Author: Beniamine, David <David.Beniamine@Tetras-Libre.fr>
    #
    # This program is free software: you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation, either version 3 of the License, or
    # (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program.  If not, see <http://www.gnu.org/licenses/>.
    
    getip(){
        awk '/^lease/{IP=$2} /hardware ethernet/{gsub(";","",$3);if($3 == "'$1'"){print IP}}' \
            < /var/lib/dhcp/dhcpd.leases
    }
    
    runcmd(){
        host=$1
        shift
        echo "Runnig $@ on $host"
        ssh -o StrictHostKeychecking=no root@$host $@
    }
    
    conf_dir="/etc/registry"
    conf_file="$conf_dir/hosts"
    broadcast=$(ip a | awk '/inet.*eth1/ {print $4}' | cut -d / -f 1)
    wait_time=120
    wait_step=5
    
    if [ -z "$1" ]
    then
        cmd="cd /opt/primtux-eole/; export HTTPS_PROXY='http://dnsproxy:3128'; git pull; ./upgrade-session.sh"
    else
        cmd="$@"
    fi
    
    while read date mac name
    do
        # Boot machine
        wakeonlan -i $broadcast "$mac"
        MACS+=" $mac"
    done < $conf_file
    
    # Wait for boot
    echo ""
    while [ $wait_time -gt 0 ]
    do
        echo -ne "Waiting for boot, remaining $wait_time seconds\r"
        sleep $wait_step
        wait_time=$(($wait_time - $wait_step))
    done
    echo -e "\nWaiting finished"
    
    for mac in $MACS
    do
        ip=$(getip $mac)
        runcmd $ip $cmd &
    done