From 1b8d211e10918e7f4f3f7aedaa816a7a880b888b Mon Sep 17 00:00:00 2001 From: Greg Blomquist Date: Mon, 30 Jun 2008 13:56:55 -0400 Subject: Removed Red Hat DDNS and references from everest-bootstrap, everestd, and cloudmasterd Changes include: * everest-bootstrap's default mode is now "cloud". - It is assumed that all systems provisioned by everest-bootstrap will be sent to a cloudmaster for provisioning. However, a cloudmaster does not necessarily have to control several minions to qualify. A cloudmaster can be configured to simply control its own disk space. - The "advanced" mode also expects that systems are getting provisioned in a cloud, and requires a "cloudmaster" parameter. - The previous "--config-only" command line parameter has been changed to a mode. Now a user can select between "standard", "advanced", and "config-only" modes. - Hooks for cobbler dns have been added. A great deal more work needs to be done here before it is ready, though. - everest-bootstrap can now ask everestd if it knows the IP address and hostname of newly provisioned machines * everestd can now examine the /var/log/cobbler/install.log file to determine the IP address and hostname of new systems. - I suspect that this functionality will get moved from everestd to the cloudmaster. Users of everest-bootstrap will be directed to the cloud's status page to access the systems' IP addy and hostnames. --- cloudmasterd/lib/cloudmasterd.rb | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'cloudmasterd') diff --git a/cloudmasterd/lib/cloudmasterd.rb b/cloudmasterd/lib/cloudmasterd.rb index a2dcc22..f5151d1 100644 --- a/cloudmasterd/lib/cloudmasterd.rb +++ b/cloudmasterd/lib/cloudmasterd.rb @@ -108,6 +108,7 @@ module Cloudmasterd::Models t.column :email, :string, :null => false, :limit => 255 t.column :cloud, :string, :null => false, :limit => 255 t.column :state, :string, :null => false, :limit => 255 + #t.column :repo, :string, :null => false, :limit => 255 # Add the repo column capture the origin repo t.column :created_date, :datetime, :null => true end end @@ -140,24 +141,24 @@ module Cloudmasterd::Controllers # run the appropriate koan command to create the given "fqdn" # on the given "host" and "vol_group" - def _koan(host, fqdn, repo) + def _koan(host, system_name, repo) # Run the koan process - output = `func "#{host}" call virt install #{repo} #{fqdn} True #{fqdn} /images` + output = `func "#{host}" call virt install #{repo} #{system_name} True #{system_name} /images` # Throw an exception if the process failed raise output unless $?.success? # Make the new host autostart - `func "#{host}" call command run "ln -s /etc/xen/#{fqdn} /etc/xen/auto/"` + `func "#{host}" call command run "ln -s /etc/xen/#{system_name} /etc/xen/auto/"` end # POST /koan def create - machine_fqdn = input.machine_fqdn + system_name = input.system_name repo = input.repo email = input.email - cobbler_profile = _get_cobbler_profile(machine_fqdn, repo) + cobbler_profile = _get_cobbler_profile(system_name, repo) cobbler_distro = _get_cobbler_distro(cobbler_profile["distro"], repo) # Synchronize access before making the func calls @@ -165,9 +166,9 @@ module Cloudmasterd::Controllers @host = _get_best_host(cobbler_profile["virt_ram"], cobbler_distro["arch"]) begin - _koan(@host, machine_fqdn, repo) + _koan(@host, system_name, repo) - Machine.create :name => machine_fqdn, :email => email, :cloud => @host, :state => "Installing", :created_date => DateTime.now() + Machine.create :name => system_name, :email => email, :cloud => @host, :state => "Installing", :created_date => DateTime.now() render :_koan rescue Exception => e @exception = e -- cgit