Skip to content
Extraits de code Groupes Projets
diaspora-setup 1,87 ko
Newer Older
  • Learn to ignore specific revisions
  • #!/bin/bash
    #
    #  Do what's needed to initiate diaspora.
    #
    
    #  Usage: sudo diaspora-setup [external hostname]
    #
    
    
    test  "$( perl -e 'print $<')" = "0" || {
        echo "You need to be root to do this, giving up"
        exit 2
    }
    
    
    services=$( netstat -nl | grep '[^:]:3000[ \t]')
    test -n "$services" && {
        echo "Warning: something is already using port 3000"
        echo "     $services"
    }
    
    
    Alec Leamas's avatar
    Alec Leamas a validé
    service mongodb stop || :
    rm -f /var/lib/mongodb/mongod.lock
    service mongodb start || :
    
    
    cd /usr/share/diaspora/master
    
    test -e config/app_config.yml ||
        cp config/app_config.yml.example config/app_config.yml
    
    if rake db:seed:dev; then
        echo "Database config OK, new user tom/evankorth in place"
    else
        cat <<- EOF
    
    
    Alec Leamas's avatar
    Alec Leamas a validé
    	Database config failed. You might want to
    	 - Just remove the db lock file: rm /var/lib/mongodb/mongod.lock
    	 - Remove all db files: rm -rf /var/lib/mongodb/*
    	 - Reset the config file by
    	   cp config/app_config.yml.example config/app_config.yml
    	Also, make sure the mongodb server is running e. g., using
    	'service mongod status'.
    
    	EOF
        exit 1
    fi
    
    chown -R diaspora /var/log/diaspora
    
    
    sed -i '/socket_pidfile:/s|:.*|: /var/run/diaspora/diaspora-wsd.pid|' \
        config/app_config.yml
    
    
    hostname=$( awk '/pod_url:/ { print $2; exit }' <config/app_config.yml)
    
        sed -i "/pod_url:/s|$hostname|$arg_hostname|g" config/app_config.yml &&
    
            echo "config/app_config.yml updated."
        exit 0
    fi
    
    Alec Leamas's avatar
    Alec Leamas a validé
    
    
    while : ; do
        echo "Current hostname is \"$hostname\""
        echo -n "Enter new hostname [$hostname] :"
        read new_hostname garbage
        echo -n "Use hostname \"$new_hostname\" as pod_url (Yes/No) [Yes]? :"
        read yesno garbage
        test "${yesno:0:1}" = 'y' -o "${yesno:0:1}" = 'Y' -o -z "$yesno" && {
    
            sed -i "/pod_url:/s|$hostname|$new_hostname|g" config/app_config.yml &&
    
                echo "config/app_config.yml updated."
            break
        }
    done