Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Oct 1, 2012
  1. Merge pull request #5 from tjmcs/master

    tjmcs authored
    Fix for "uninitialized constant RxNetworkUtils" reported Razor Issue #178
Commits on Sep 21, 2012
  1. Fix to RazorMicrokernel::RzMkHardwareFacter.clean_fact_map_keys!() fu…

    Tom McSweeney authored
    …nction. Prior to this change, this function was trying to modify a Hash map in the middle of an "each" iterator over that same Hash map (which, naturally, generates an exception). With these changes, the iteration is now over the keys for the Hash map, not the Hash map itself (and so no exception is thrown when the underlying Hash map is modified).
  2. Changed the bundle build script so that the initial Microkernel confi…

    Tom McSweeney authored
    …guration for a "debug" kernel is set to "Logger::DEBUG". Also, added additional "logger.debug" output that logs the stack traces for any exceptions thrown during interactions between the Microkernel Controller and the Razor server. These changes only effect the behavior of the debug kernel; the development and production Microkernels both remain unchanged from the previous commit.
Commits on Sep 11, 2012
  1. Fixed a few typos in the last version (and moved the ifconfig output …

    Tom McSweeney authored
    …back to the top of the "each" rather than storing it as a separate variable and calling "each" on that list...that list is not used for anything else so it doesn't need to be kept in a separate variable).
Commits on Sep 10, 2012
  1. New version of the Microkernel that includes fixes for an error that …

    Tom McSweeney authored
    …is thrown when the network cannot be accessed during Microkernel initialization. This version uses an exponential-backoff algorithm for timing of searches for a valid network interface (instead of using a fixed time increment for subsequent searches if the first search fails) and uses a much shorter (2 minute rather than 15 minute) timeout before the initialization script considers the network to be unreachable. In addition, if no valid network interface is found during such a search for a valid NIC, any kernel module that matches a pattern containing the list of supported NIC firmware modules is reloaded before an additional search is made. Similarly, before such a search is made the DHCP client is restarted before an additional search is made if no NIC was found or if a NIC was found but that NIC didn't have a valid IP address. These changes should fix the issue raised recently by @eoghank in the Razor issues list.
  2. New version of the Microkernel that includes fixes for an error that …

    Tom McSweeney authored
    …is thrown when the network cannot be accessed during Microkernel initialization. This version uses an exponential-backoff algorithm for timing of searches for the network (instead of using a fixed time increment for subsequent searches if the first search fails), imposes an arbitrary (15 sec) delay before loading kernel modules (to try to avoid the race condition we seem to be seeing between kernel module loading and network card initialization in some hardware), and uses a much shorter (2 minute rather than 15 minute) timeout before the initialization script considers the network to be unreachable.
Commits on Sep 6, 2012
  1. Shortened up timeout used for missing network to 2 minutes (was 5 min…

    Tom McSweeney authored
    …utes prior to this commit)
  2. Shortened up timeout used for missing network to 5 minutes (was 15 mi…

    Tom McSweeney authored
    …nutes prior to this commit)
  3. Fix for spurious error thrown by the error handling code when no netw…

    Tom McSweeney authored
    …ork is found during Microkernel initialization. This should fix the spurious error that was reported by @eoghank as part of the discussion in Razor Issue #178 (puppetlabs/Razor#178).
Commits on Aug 13, 2012
  1. Merge pull request #3 from sileht/master

    tjmcs authored
    Don't set the url of razor server if dhcp don't provide a next-server field. This will ensure that the Microkernel is still configured correctly on networks where there is more than one DHCP server, only one of which is providing a "next-server" parameter in its DHCP responses.
  2. Mehdi ABAAKOUK
Commits on Jul 17, 2012
  1. Merge pull request #2 from tjmcs/tb/remove_lynxbat_links

    tjmcs authored
    Changed source for the 'mk-open-vm-tools.tar.gz' used by the build-bundle-file.sh script
Commits on Jul 5, 2012
  1. changed source for the 'mk-open-vm-tools.tar.gz' downloaded by the 'b…

    Tom McSweeney authored
    …uild-bundle-file.sh' script from the Downloads area of the Razor project to the Downloads area of the Razor-Microkernel project (on the PuppetLabs GitHub). This change will only work once the Razor-Microkernel project becomes a public project. Until then, the Razor project is the only public project that we can use for this download (so the mk-open-vm-tools.tar.gz file will remain in both places until then).
Commits on Jul 3, 2012
  1. Merge pull request #1 from nanliu/tb/license

    tjmcs authored
    Update license to Puppet Labs GPLv2.
  2. Nan Liu

    Update license to Puppet Labs GPLv2.

    nanliu authored
    Transfer and update copyright to GPLv2.
  3. Fix for Issue #115 (in the Razor project's Issue list). Without the c…

    Tom McSweeney authored
    …hanges in this patch the RzMkHardwareFacter class is confused by the presence of 'nil' elements in the hash_array value that is passed to it's add_flattened_array_to_facts! method (they are counted in the associated "count" field but no associated values are added to the facts_map, so the count field ends up being off by the number of nil elements included in this hash_array input argument). While this issue was being fixed, also patched up an issue with the way that the indentation level was detected by the lshw_output_to_hash method in this same class (the previous method implementation could become confused by the output seen on some platforms, where included arrays are less indented than included values on a given level of the array).
  4. Added code to fix an error that occurred in the build-bundle-file.sh …

    Tom McSweeney authored
    …script when the build-files subdirectory didn't exist yet in the project. Also added a bit of code to the rebuild_iso.sh script to get the kernel version number from the output of a 'ls ${DIR_NAME}/extract/lib/modules' command (instead of using a fixed version number).
Commits on Jun 22, 2012
  1. Cleaned up usage to ensure it would work with a standard (80-column w…

    Tom McSweeney authored
    …ide) terminal window
  2. Changed initial comments for this script to describe what it does in …

    Tom McSweeney authored
    …the current implementation (not what it used to do previously).
  3. renamed this script to more closely resemble the terminology being us…

    Tom McSweeney authored
    …ed in the Razor Microkernel documentation (it builds the "bundle file" containing all of the scripts and files needed to build a new version of the Razor Microkernel ISO).
Commits on Jun 21, 2012
  1. Added code to the build-dependency-files.sh script to support two new…

    Tom McSweeney authored
    … pairs of command line flags: '-t' or '--tc-passwd' (which can be used to change the 'tc' user password for non-production images) and
    
    '-d' or '--build-debug-image' (which can be used to build a "Debug ISO").  Note that previously we just supported building of development or production ISOs, this commit adds the concept of a "debug" ISO to that list (which is an ISO for which autologin of the tc user is enabled for the console).  Obviously, this sort of ISO should not be used in production, but it is useful for debugging Razor connectivity issues.
Commits on Jun 12, 2012
  1. Changing README to a markdown file and changing the contents to refle…

    Tom McSweeney authored
    …ct the recent changes to the project (where the Microkernel ISO is now built automatically).
  2. Changing README to a markdown file and changing the contents to refle…

    Tom McSweeney authored
    …ct the recent changes to the project (where the Microkernel ISO is now built automatically).
Commits on Jun 8, 2012
  1. Removed dependency on external mk-open-vm-tools.tar.gz file (this fil…

    Tom McSweeney authored
    …e is now assumed to be downloaded from a URL, which will be the downloads page of the Razor-Microkernel project when it is made public). Also removed the extra command line flag to build a development image (to avoid conflict if both that argument and the argument to build a production ISO were specified) and reversed the sense of the "BUILD_DEV_FLAG" and the tests that used it (now it's a "BUILD_PROD_FLAG", to the tests had to be reversed...switching 'no' to 'yes' and 'yes' to 'no' in the tests of this flag). Changed the name of the included gzipped tarfile containing our overlay (it now has the word 'overlay' in its name to make it clean what it is) and made a corresponding change to the build_initial_directories.sh script. Lastly, added a snippet of code to change the name of the bundle file we are creating to reflect whether it is mean to to build a development or production system (and changed the phrase 'overlay' in its name to 'bundle' so that it is clear what it is...it's not an overlay, it's a bundle containing an overlay)
  2. Extracted the etc/passwd and etc/shadow files from the ssh-setup-file…

    Tom McSweeney authored
    …s.tar.gz gzipped tarfile and added these files to the Razor-Microkernel project instead. Also added a third file (etc/shadow-nologin) to the project. This third file is used for production systems (where we want to disable login by any user, even at the console). Finally, made changes to the build-dependency-files.sh script to copy over the appropriate pair of files (etc/passwd and etc/shadow for development systems; etc/passwd and etc/shadow-nologin for production systems) into what will be the /etc/passwd and /etc/shadow files on the ISO we are building.
Commits on Jun 7, 2012
  1. Added an example of the file used to determine which utilities to ext…

    Tom McSweeney authored
    …ract from the util-linux.tcz extension
  2. Removed an external dependency or two (we are now obtaining the 'lscp…

    Tom McSweeney authored
    …u' and 'sfdisk' commands for the ISO directly from a downloaded version of the util-linux.tcz extension, for example, instead of bundling these two executables in a separate gzipped tarfile). Also added a set of flags to the build-dependency-files.sh script (using the getopt built-in under BASH) that give the user the ability to point to their own built-list and mirror-list (instead of having these values 'hardwired' into the build-dependency-files.sh script). Finally, added a couple of flags that allow the user to specify if they going to be building a production or development ISO. In the case of a production ISO, the name of the file created by the rebuild_iso.sh script is changed to include 'prod' instead of 'dev' in its name, the openssh.tcz extension is skipped (along with it's configuration files), and passwd/shadow files are also skipped. These last two changes effectively remove the ability to access the Microkernel, either remotely via SSH or via the console, which is a key feature in a production system.
  3. Changes to make this process completely automatic. No longer need to …

    Tom McSweeney authored
    …build a separate overlay for the extensions that need to be installed at boot, nor is there a separate overlay for the MCollective install. All of the components are now dynamically downloaded by the 'build-dependency-files.sh' script (unless the user specifies that the previous downloads should be used via the '--reuse-prev-dl' flag). The only remaining dependencies that are not automatically included by this script are the configuration files for the openssh and mcollective installs, the lscpu and sfdisk executables, and the open_vm_tools extension we built for the Microkernel. These dependencies are all pulled into the image from the 'additional-build-files' directory (which is at the top-level of this project).
Commits on Jun 6, 2012
  1. This commit includes the changes necessary to support the build of a …

    Tom McSweeney authored
    …single gzipped tarfile containing almost all of the files needed to build the Microkernel ISO directly from the Razor-Microkernel project directory. The current implementation of this script (build-dependency-files.sh) requires that the user also set up a separate subdirectory (additional-build-files) in the Razor-Microkernel project directory that contains three additional files (Core-current.iso, fix-dmidecode-path-for-facter.tar.gz, and mk-open-vm-tools.tar.gz) that are necessary to build the Microkernel ISO (in a future version of this script, we'll try to get around this issue). There is also an assumption that the user will create a orig-fs-snapshot subdirectory (in the directory being used to build the Microkernel ISO, which is assumed to be different from the Razor-Microkernel project directory) that contains the snapshot taken from the filesystem of a running Microkernel instance on which a number of additional extensions have been installed and configured (before running the build_initial_directories.sh script from within that directory). Again, we'll try to get around this external dependency in a future release.
Commits on Jun 1, 2012
  1. Refactored Microkernel codebase to support the addition of a new exte…

    Tom McSweeney authored
    …nsion (firmware-bnx2.tcz) and remove the dependency on the bundler gem (we will just install gems directly from here on out).
Commits on May 17, 2012
  1. A new version of the Microkernel (v0.8.8.0) that modifies the behavio…

    Tom McSweeney authored
    …r of the flag added to the checkin requests in the previous release of the Microkernel. This flag is now only included if the node hasn't successfully checked in and registered with the Razor server. Once both of these conditions have been met, the flag will be set to false (and no longer included in the checkin requests) until the node is rebooted. This change will only work properly on reboot once changes have been made to the Razor server to handle this flag properly. Until then, on reboot, the is_first_checkin flag will remain true until Razor asks the node to register again (since we consider a "first checkin" to be the first time that the node successfully checks in and registers with the Razor server after a boot or reboot).
  2. Added a new file to the Microkernel that is used to store whether or …

    Tom McSweeney authored
    …not the Microkernel controller is checking in for the first time. This change makes it possible for the Razor server to determine whether or not it should force a registration on first boot, even if the node has checked in more recently than the "register_timeout" (allowing for the Razor server to pick up configuration changes on the node that may have required a reboot of the node but that didn't take too long, so the time between checkins doesn't exceed that "register_timeout" value).
Commits on May 10, 2012
  1. Swapped initialization over from the /opt/bootlocal.sh script to the …

    Tom McSweeney authored
    …/opt/bootsync.sh script (so that the commands run synchronously instead of in the background)
Something went wrong with that request. Please try again.