Ejemplo n.º 1
0
 def install_interaction(self):
     if ("project_path" in self.engine2settings) and ("project_name" in self.engine2settings):
         self.__create_apache_wsgi_conf()
         wsgi_path = os.path.join(self.engine1path, "conf/apache_%s_wsgi.conf" % self.engine2settings["project_name"])
         command('echo "Include \\\"' + wsgi_path + '\\\"" >> ' + str(os.path.join(self.engine1settings["app_path"], "conf/httpd.conf")))
     command("cp %s/.libs/mod_wsgi.so %s/modules/" % (self.engine2settings["app_path"], self.engine1settings["app_path"]))
     print self.engine1settings["app_path"]
Ejemplo n.º 2
0
 def __postgre_installer(self):
     command('''wget "%s%s.tar.gz"''' % (self.source_url, self.version))
     command('''tar -xzf "%s.tar.gz"''' % self.version)
     command('''(cd %s && chmod u+x configure && ./configure --without-readline 
                --prefix="%s" && make && make install)''' %  (self.version, self.app_path))
     command('''(cd %s && mkdir data && mkdir logs)''' % self.app_path)
     command('''rm -rf %s && rm %s.tar.gz''' % (self.version, self.version))
     return True
Ejemplo n.º 3
0
 def __create_apache_wsgi_conf(self):
     project_conf = "apache_%s_wsgi.conf" % self.engine2settings["project_name"]
     fh = open(project_conf, "w")
     fh.write('''WSGIScriptAlias / "%s/%s.wsgi"\n\n''' % (self.engine2settings["project_path"], self.engine2settings["project_name"]))
     fh.write('''<Directory "%s">\n''' % os.path.join(self.engine2settings["project_path"], self.engine2settings["project_name"]))
     fh.write('''Allow from all\n''')
     fh.write('''</Directory>''')
     fh.close()
     command("cp %s %s" % (project_conf, os.path.join(self.engine1path, "conf")))
Ejemplo n.º 4
0
 def __create_django_wsgi_conf(self):
     wsgi_conf = self.engine1settings["project_name"] + ".wsgi"
     fh = open(wsgi_conf, "w")
     fh.write("import os, sys\nsys.path.append('%s')\n" % self.engine1path)
     fh.write("os.environ['DJANGO_SETTINGS_MODULE']=%s.settings\n\n" % self.engine1settings["project_name"])
     fh.write("import django.core.handlers.wsgi\n")
     fh.write("application = django.core.handlers.wsgi.WSGIHandler()\n")
     fh.close()
     command("mv %s %s" % (wsgi_conf, self.engine1path))
     self.settings.packages[self.engine2name]["project_name"] = self.engine1settings["project_name"]
     self.settings.packages[self.engine2name]["project_path"] = self.engine1path
Ejemplo n.º 5
0
 def runConfigAndMake(self, directory, flags={}):
     configPath = os.path.abspath(os.path.join(directory, 'configure'))
     assert os.path.exists(configPath)
     command('chmod u+x %s' % configPath)
     flagString = ''
     for flag, arg in flags.items():
         flagString += flag
         if arg:
             flagString += "=%s" % arg
         flagString += " "
     command('cd %s && bash %s -q %s && make && make install' % (directory, configPath, flagString))
Ejemplo n.º 6
0
 def __nginx_installer(self):
     command('''curl -o "%s.tar.gz" "%s%s.tar.gz"''' % (self.version, self.source_url, self.version))
     command('''tar -xzf "%s.tar.gz"''' % self.version)
     command('''(cd %s && chmod u+x configure && ./configure --prefix="%s" --without-http_rewrite_module 
                 --without-http_gzip_module && make && make install)''' % (self.version, self.app_path))
     command('''rm -rf %s && rm %s.tar.gz''' % (self.version, self.version))
     return True
Ejemplo n.º 7
0
 def __memcached_installer(self):
     command('''curl -o "%s.tar.gz" "%s%s.tar.gz"''' % (self.version, self.source_url, self.version))
     command('''tar -xzf "%s.tar.gz"''' % self.version)
     command('''(cd %s && chmod u+x configure && ./configure --prefix="%s" --with-libevent="%s" && make && make install)''' % 
            (self.version, self.app_path, self.settings.packages["LibEvent"]["app_path"]))
     command('''rm -rf %s && rm %s.tar.gz''' % (self.version, self.version))
     return True
Ejemplo n.º 8
0
 def __svn_installer(self):
     command('''curl -o %s.tar.bz2 "%s%s.tar.bz2"''' % (self.version, self.source_url, self.version))
     command("""tar -xjvf %s.tar.bz2""" % (self.version))
     command(
         """(cd %s && chmod u+x configure && ./configure --prefix="%s" && make && make install)"""
         % (self.version, self.app_path)
     )
     command("""rm %s.tar.bz2 && rm -rf %s""" % (self.version, self.version))
Ejemplo n.º 9
0
 def __pymodule_installer(self, sudo = False):
     if self.settings.packages["VirtualEnv"]["app_path"] is not None:
         command("%s/bin/pip install %s" % (self.settings.packages["VirtualEnv"]["app_path"], self.module_name))
         self.app_path = self.settings.packages["VirtualEnv"]["app_path"]
         self.settings.packages[self.__class__.__name__]["app_path"] = self.app_path
     else:
         if sudo: command('''sudo pip install %s''' % self.module_name)
         else: command('''pip install %s''' % self.module_name)
Ejemplo n.º 10
0
 def __memcached_starter(self, ip, port, mb, user):
     command('''sudo "%s/bin/memcached" -d -u %s -I %s -p %s -m %s''' % (self.app_path, user, ip, port, mb))
     self.address = "%s:%s/" % (ip, port) 
     return True
Ejemplo n.º 11
0
 def cleanUp(self):
     command("rm -rf %s" % self.buildDir)
Ejemplo n.º 12
0
 def newProject(self, project_name = "NewProject", sudo = False):
     self.settings.packages["Django"]["project_name"] = project_name
     django_admin = join(self.settings.packages["VirtualEnv"]["app_path"], "bin/django-admin.py")
     command("(cd %s && %s startproject %s && mkdir static)" % 
              (self.app_path, django_admin, project_name))
     
Ejemplo n.º 13
0
 def __memcached_stopper(self):
     command('''sudo kill -9 `ps aux | grep memcached | grep -v grep | awk '{print $2}'`''')
     self.address = None
     return True
Ejemplo n.º 14
0
 def __postgre_stopper(self):
     command('''%s/bin/pg_ctl stop -D %s''' % (self.app_path, join(self.app_path, "data")))  
Ejemplo n.º 15
0
 def __ssh_installer(self):
     command('''wget "%s%s.tar.gz"''' % (self.source_url, self.version))
     command('''tar -xzf %s.tar.gz''' % self.version)
     command('''(cd  && chmod u+x configure && ./configure --prefix="%s" --with-ipv4-default --with-md5-passwords && make)''' % self.app_path)
     command('''rm .tgz && rm -rf ''')
Ejemplo n.º 16
0
 def __modwsgi_installer(self):
     command('''curl -o mod_wsgi.tgz "%s%s.tar.gz"''' % (self.source_url, self.version))
     command('''tar -xzf mod_wsgi.tgz''')
     command('''(cd mod_wsgi-2.5 && chmod u+x configure && ./configure --with-apxs="%s" && make)''' % join(self.settings.packages["Apache"]["app_path"], "bin/apxs"))
     command('''rm mod_wsgi.tgz && cp -r %s/ %s && rm -rf %s''' % (self.version, self.app_path, self.version))
Ejemplo n.º 17
0
 def __postgre_restarter(self):
     command('''%s/bin/pg_ctl restart -D %s -l %s''' % (self.app_path, join(self.app_path, "data"), join(self.app_path, "logs/PostgresLog")))
Ejemplo n.º 18
0
 def __nginx_stopper(self): command('''sudo "%s/sbin/nginx -s stop''' % self.app_path)
 def __nginx_starter(self): command('''sudo "%s/sbin/nginx''' % self.app_path)
Ejemplo n.º 19
0
 def __apache_installer(self):
     command('''curl -o "%s.tar.gz" "%s%s.tar.gz"''' % (self.version, self.source_url, self.version))
     command('''tar -xzf "%s.tar.gz"''' % self.version)
     command('''(cd %s && chmod u+x configure && ./configure --prefix="%s" --enable-mods-shared="all" --enable-deflate --enable-proxy --enable-proxy-balancer --enable-proxy-http && make && make install)''' % (self.version, self.app_path))
     command('''rm -rf %s && rm %s.tar.gz''' % (self.version, self.version))
Ejemplo n.º 20
0
 def __libevent_installer(self):
     command('''wget --no-check-certificate %s%s.tar.gz''' % (self.source_url, self.version))
     command('''tar -xzf %s.tar.gz''' % self.version)
     command('''(cd %s && chmod u+x configure && ./configure --prefix="%s" && make && make install)''' % (self.version, self.app_path))
     command('''rm %s.tar.gz && rm -rf %s''' % (self.version, self.version))
Ejemplo n.º 21
0
 def __pymodule_installer(self, sudo = False):
     if self.__depends__["VirtualEnv"]["app_path"] is not None:
         command("%s/bin/pip install %s" % (self.__depends__["VirtualEnv"]["app_path"], self.module_name))
     else:        
         if sudo: command('''sudo pip install %s''' % self.module_name)
         else: command('''pip install %s''' % self.module_name)
Ejemplo n.º 22
0
 def __git_installer(self):
     command('''curl -o git-1.7.7.1.tar.gz "%s%s.tar.gz"''' % (self.source_url, self.version))
     command('''tar -xzf git-1.7.7.1.tar.gz''')
     command('''(cd git-1.7.7.1 && chmod u+x configure && ./configure --prefix="%s" && make && make install)''' % self.app_path)
     command('''rm git-1.7.7.1.tar.gz && rm -rf git-1.7.7.1''')
Ejemplo n.º 23
0
 def __apache_starter(self): command('''sudo "%s/bin/apachectl" start''' % self.app_path)
 def __apache_restarter(self): command('''sudo "%s/bin/apachectl" restart''' % self.app_path)
Ejemplo n.º 24
0
 def __modwsgi_installer(self):
     command('''curl -o mod_wsgi.tgz "%s%s.tar.gz"''' % (self.source_url, self.version))
     command('''tar -xzf mod_wsgi.tgz''')
     command('''(cd mod_wsgi-2.5 && chmod u+x configure && ./configure --with-apxs="%s" && make)''' % join(self.app_path, "bin/apxs"))
     command('''cp mod_wsgi-2.5/.libs/mod_wsgi.so "%s/modules"''' % self.app_path)
     command('''rm mod_wsgi.tgz && rm -rf mod_wsgi-2.5''')
Ejemplo n.º 25
0
 def __zlib_installer(self):
     command('''curl -o %s.tar.gz "%s%s.tar.gz"''' % (self.version, self.source_url, self.version))
     command('''tar -xzf %s.tar.gz''' % self.version)
     command('''(cd %s && chmod u+x configure && ./configure --prefix="%s" && make)''' % (self.version, self.app_path))
     command('''rm %s.tar.gz && cp -r %s/* %s && rm -rf %s''' % (self.version, self.version, self.app_path, self.version))
Ejemplo n.º 26
0
 def newProject(self, sudo = False):
     django_admin = join(self.__depends__["PyModule"]["VirtualEnv"], "bin/django-admin.py")
     os.makedirs(self.app_path)
     command("(cd %s && %s startproject %s && mkdir static)" % 
              (self.app_path, django_admin, self.project_name))
Ejemplo n.º 27
0
 def __virtualenv_installer(self):
     try: import virtualenv
     except ImportError:
         command('''sudo pip install virtualenv''')
     print self.app_path
     command("virtualenv --no-site-packages %s" % self.app_path)
Ejemplo n.º 28
0
    def __bind_installer(self):
        bind_path = "bind-" + self.version

        command('''curl -o "%s.tar.gz" "%s%s/%s.tar.gz"''' % (bind_path, self.source_url, self.version, bind_path))
        command('''tar -xzf "%s.tar.gz"''' % bind_path)
        command('''(cd "%s" && chmod u+x configure && ./configure --prefix="%s")''' % (bind_path, self.app_path))

        # Without this command, it doesn't seem to build on macs for some reason
        command('''echo "#define __APPLE_USE_RFC_3542" > temp''')
        command('''cat "%s/lib/isc/unix/include/isc/net.h" >> temp''' % bind_path)
        command('''mv temp "%s/lib/isc/unix/include/isc/net.h"''' % bind_path)
        command('''(cd "%s" && make && make install)''' % bind_path)
        command('''rm "%s.tar.gz" && rm -rf "%s"''' % (bind_path, bind_path))
        command('''(cd "%s/etc" && touch named.conf && touch managed-keys.bind)''' % bind_path)
        command('''(cd "%s/var" && mkdir named && cd named && curl %s --user ftp:ftp -O)''' % (bind_path, self.__root_cache))
        command('''(cd "%s" && sbin/rndc-confgen > etc/rndc.conf)''' % bind_path)
        return True
Ejemplo n.º 29
0
 def __haproxy_installer(self):
     command('''curl -o "%s.tar.gz" "%s%s.tar.gz"''' % (self.version, self.source_url, self.version))
     command('''tar -xzf "%s.tar.gz"''' % self.version)
     command('''(cd %s && make TARGET=generic && cp haproxy %s)''' %  (self.version, self.app_path))
     command('''rm -rf %s && rm %s.tar.gz''' % (self.version, self.version))
     return True
Ejemplo n.º 30
0
 def __bind_stopper(self): command('''sudo kill -9 `ps aux | grep named | grep -v grep | awk '{print $2}'`''')
 def __bind_starter(self): command('''sudo "%s/sbin/named" -c "%s/etc/named.conf"''' % self.app_path)