def install(self): print "Installing " + self.name + "..." Task.install_packages(self) """ Open template and substitute variables """ f = open(self.nginx_template_url, "r") template = f.read() template = re.sub("{{domain_name}}", self.domain_name, template) template = re.sub("{{base_dir}}", self.base_dir, template) f = open(self.base_dir + "/" + self.domain_name + "/conf/nginx.conf", "w") f.write(template) f.close() """ Link files to nginx """ result = call( "ln -s " + self.base_dir + "/" + self.domain_name + "/conf/nginx.conf /etc/nginx/sites-available/" + self.domain_name, shell=True, ) result = call( "ln -s /etc/nginx/sites-available/" + self.domain_name + " /etc/nginx/sites-enabled/" + self.domain_name, shell=True, ) """ Restart Nginx """ result = call("/etc/init.d/nginx restart", shell=True) return True
def install(self): print 'Installing ' + self.name + '...' #modules = map(__import__, moduleNames) django_installed = False try: modules = map(__import__, ['django']) django_installed = True except Exception: django_installed = False temp_folder = '/home/installers/' if ( not django_installed ): Task.install_packages(self) self.dir_already_created = True if not os.path.exists(temp_folder): self.dir_already_created = False os.makedirs(temp_folder) self.django_file_name = url_file(self.django_url) """ Download and install Django from given URL """ run("curl " + self.django_url + " >> " +temp_folder + self.django_file_name) run("tar zxvf " + temp_folder + self.django_file_name + " -C " + temp_folder) run("python " + temp_folder + self.django_file_name[:-7] + '/setup.py install') """ Copy styles """ run("sudo cp -Rf " + temp_folder +self.django_file_name[:-7]+"/django/contrib/admin/media {{base_dir}}/{{domain_name}}/static/admin") """ Clean Django Installers """ run("rm -R " + temp_folder + self.django_file_name[:-7] + "*") """ Install extras """ extra1_url = "http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg" run("curl " + extra1_url + " >> " + temp_folder + url_file(extra1_url)) run("sh " + temp_folder + url_file(extra1_url) ) extra2_url = "http://www.saddi.com/software/flup/dist/flup-1.0.2-py2.6.egg" run("curl " + extra2_url + " >> " + temp_folder + url_file(extra2_url)) run("easy_install " + temp_folder + url_file(extra2_url)) """ Clean extras """ run("rm -R " + temp_folder + url_file(extra1_url) + "*") run("rm -R " + temp_folder + url_file(extra2_url) + "*") return True
def install(self): print 'Installing ' + self.name + '...' """ We save the password in the system for a non attended installation """ run("echo mysql-server mysql-server/root_password select {{mysql_password}} | debconf-set-selections") run("echo mysql-server mysql-server/root_password_again select {{mysql_password}} | debconf-set-selections") Task.install_packages(self) """ Create user and tables specified on the config file """ result = self.executeQuery("CREATE DATABASE " + self.mysql_database_name + ";") result = self.executeQuery("CREATE USER '" + self.mysql_username + "'@'localhost' IDENTIFIED BY '" + self.mysql_password + "';") result = self.executeQuery("GRANT ALL PRIVILEGES ON " + self.mysql_database_name + " . * TO '" + self.mysql_username + "'@'localhost';") result = self.executeQuery("FLUSH PRIVILEGES;") return True