{"id":32129394,"url":"https://github.com/nexcess/puppet-ksplice","last_synced_at":"2026-02-19T13:33:44.387Z","repository":{"id":36370027,"uuid":"40674869","full_name":"nexcess/puppet-ksplice","owner":"nexcess","description":"Manage ksplice with puppet","archived":false,"fork":false,"pushed_at":"2017-01-20T16:57:33.000Z","size":83,"stargazers_count":0,"open_issues_count":0,"forks_count":4,"subscribers_count":21,"default_branch":"master","last_synced_at":"2026-02-14T20:39:35.019Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"highlightjs/highlight.js","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nexcess.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-13T18:23:47.000Z","updated_at":"2022-12-08T13:30:27.000Z","dependencies_parsed_at":"2022-09-10T14:51:54.839Z","dependency_job_id":null,"html_url":"https://github.com/nexcess/puppet-ksplice","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/nexcess/puppet-ksplice","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexcess%2Fpuppet-ksplice","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexcess%2Fpuppet-ksplice/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexcess%2Fpuppet-ksplice/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexcess%2Fpuppet-ksplice/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nexcess","download_url":"https://codeload.github.com/nexcess/puppet-ksplice/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexcess%2Fpuppet-ksplice/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29614970,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T13:04:20.082Z","status":"ssl_error","status_checked_at":"2026-02-19T13:03:33.775Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-21T01:06:28.762Z","updated_at":"2026-02-19T13:33:44.382Z","avatar_url":"https://github.com/nexcess.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ksplice\n\n[![Travis](https://img.shields.io/travis/nexcess/puppet-ksplice.svg)](https://travis-ci.org/nexcess/puppet-ksplice)\n[![Puppet Forge](https://img.shields.io/puppetforge/v/nexcess/ksplice.svg)](https://forge.puppetlabs.com/nexcess/ksplice)\n\n#### Table of Contents\n\n1. [Overview](#overview)\n2. [Module Description ](#module-description)\n3. [Usage - Configuration options and additional functionality](#usage)\n4. [Reference ](#reference)\n5. [Limitations](#limitations)\n6. [Development](#development)\n7. [Copyright](#copyright)\n\n## Overview\n\nThis module installs, configures, and manages ksplice for rebootless kernel upgrades.\n\n## Module Description\n\nThe ksplice module installs, configures, and manages\n[ksplice](http://ksplice.oracle.com/) to update your kernel without needing to\nreboot.\n\nA license/access key from ksplice is required for rebootless upgrades to work.\n\nThe module will install the ksplice repository, install the uptrack package, and\nmanage the ksplice configuration file.\n\nThis module follows [semantic versioning](http://semver.org/).\n\n## Usage\n\n### Beginning with ksplice\nIf you have a license key and want to check for kernel updates every 30 minutes and automatically install them. This is what the normal manual installation of ksplice will do.\n\n```\nclass { '::ksplice':\n  config_accesskey =\u003e 'YOUR_LICENSE_KEY',\n}\n```\n\n\n### Custom cron times\n\nBy default uptrack runs every 30 minutes unless you give it a custom cron time.\n\n```\nclass { '::ksplice':\n  config_accesskey\t=\u003e 'YOUR_LICENSE_KEY',\n  config_proxy\t\t=\u003e 'https://your.proxy.server:port',\n  cron_minute\t\t=\u003e '13',\n  cron_hour\t\t\t=\u003e '03',\n  cron_month\t\t=\u003e '*',\n  cron_monthday\t\t=\u003e '*',\n  cron_weekday\t\t=\u003e '*',\n}\n```\n\n## Reference\n\n### Classes\n\n* ksplice::repo: Installs the package repository on the server\n* ksplice::install: Installs the uptrack package on the server\n* ksplice::config: Manages the configuration for uptrack\n* ksplice::cron: Manages the cron job for uptrack\n\n\n### Parameters\n\n#### `config_template`\nSpecify a custom template to use. Default value: 'ksplice/uptrack.conf.erb'\n\n#### `config_accesskey`\nSpecify your accesskey. Default value: 'INSERT_ACCESS_KEY'\n\n#### `config_proxy`\nSpecify your proxyserver. Default value: 'None'\n\n#### `config_install_on_reboot`\nAutomatically install updates at boot time. If this is set, on reboot into the same kernel, uptrack will re-install the same set of updates that were present before the reboot. Default value: 'true'\n\n#### `config_upgrade_on_reboot`\nAutomatically install all available updates at boot time, even if rebooted into a different kernel. Default value: 'true'\n\n#### `config_autoinstall`\nUptrack runs in a cron job to check for and download new updates. You can can configure this cron job to automatically install new updates as they become available. Default value: 'true'\n\n#### `cron_install`\nSpecify if you want the module to install the ksplice cron job. Default value: true\n\n#### `cron_minute`\nSpecify a custom cron_minute. Default value: `[fqdn_rand(30) , fqdn_rand(30) + 30]`\n\n#### `cron_hour`\nSpecify a custom cron_hour. Default value: '*'\n\n#### `cron_month`\nSpecify a custom cron_month. Default value: '*'\n\n#### `cron_monthday`\nSpecify a custom cron_monthday. Default value: '*'\n\n#### `cron_weekday`\nSpecify a custom cron_weekday. Default value: '*'\n\n#### `repo_install`\nSpecify if you want the module to install the ksplice repo. Default value: 'true'\n\n#### `repo_name`\nSpecify a custom name for the yum and apt repo. Default value: 'ksplice'\n\n#### `repo_desc`\nSpecify a custom description for the yum repo. Default value: 'ksplice'\n\n#### `repo_yum_baseurl_prefix`\nSpecify a baseurl_prefix for the yum repo. It isn't documented anywhere but you can mirror the uptrack packages from ksplice.com using rsync. Default value: 'http://www.ksplice.com/yum/uptrack/'\n\n#### `repo_apt_location`\nSpecify a baseurl_prefix for the yum repo. It isn't documented anywhere but you can mirror the uptrack packages from ksplice.com using rsync. Default value: 'http://www.ksplice.com/apt/'\n\n#### `repo_enabled`\nSpecify the enable value for the yum and apt repo. Default value: true\n\n#### `repo_gpgcheck`\nSpecify the gpgcheck value for the yum repo. Default value: true\n\n#### `repo_gpgkey`\nSpecify a custom url or path for the GPG key for the packages in the yum repo. Default value: 'https://www.ksplice.com/yum/RPM-GPG-KEY-ksplice'\n\n#### `repo_key_id`\nSpecify a custom key id for the apt repo. Default value: '5DE2D4F255E23055D3C40F2CF7CA6265B6D4038E'\n\n#### `repo_key_source`\nSpecify a custom url for the apt key. Default value: 'https://www.ksplice.com/apt/ksplice-archive.asc'\n\n#### `package_ensure`\nSpecify a version of status for the uptrack package. Default value: 'present'\n\n### Facts\n`uptrack-uname` will print out the effective version of kernel after patching. It accepts uname(1) command-line options and produces compatible output. There are facts, using uptrack-uname, corresponding to the kernel facts that already come with facter.\n\n* ksplice_kernelrelease: effective kernel release\n* ksplice_kernelversion: effective kernel version\n* ksplice_kernelmajversion: effective kernel major version\n* ksplice_kernel_package_version: effective version of the distribution's kernel package\n\n## Development\n\nInstall necessary gems:\n```\nbundle install --path vendor/bundle\n```\n\nCheck syntax of all puppet manifests, erb templates, and ruby files:\n```\nbundle exec rake validate\n```\n\nRun puppetlint on all puppet files:\n```\nbundle exec rake lint\n```\n\nRun spec tests in a clean fixtures directory\n```\nbundle exec rake spec\n```\n\nRun acceptance tests with a ksplice license:\n```\nKSPLICE_LICENSE=abc123 PUPPET_INSTALL_TYPE=agent BEAKER_set=centos-7-x64 bundle exec rake acceptance\n```\n\nRun acceptance tests on docker without a ksplice license (faster):\n```\nPUPPET_INSTALL_TYPE=agent BEAKER_set=docker/centos-7-x64 bundle exec rake acceptance\n```\n\n## Copyright\n\nCopyright 2015 [Nexcess](https://www.nexcess.net/)\n\n```\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnexcess%2Fpuppet-ksplice","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnexcess%2Fpuppet-ksplice","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnexcess%2Fpuppet-ksplice/lists"}