Skip to content

Releases: Teradata/stacki

stacki-5.6.5

26 Oct 19:41
1ae5bc1
Compare
Choose a tag to compare
INTERNAL: Release Stacki 5.6.5

5.4.1

25 Aug 21:23
Compare
Choose a tag to compare

5.4.1

Feature

  • teach probepal how to recognize SLES 15 Package media.

  • teach probepal how to recognize SLES15 sp1 installer iso, because sles puts spaces in version numbers

  • add probe name to the list of attributes in a palletinfo object

  • make pallets.cgi return os and arch information for pallets. Refactor pallets.cgi to use probepal

Bugfix

  • Fix frontend-install.py to detect package existence accurately with zypper

  • Create blank versions of some apache conf files so package updates won't add them back

  • Fix regression in load storage partition

  • Support for MTU in SLES

  • Change pallet fingerprinting for sles11/12 to match the rest of stacki

    The version field is now the major version number concat'd with service pack.

    The release field is now the distro concat'd with the major version number.

    NAME   VERSION              RELEASE ARCH   OS   BOXES
    stacki 5.4_20191118_ed3441d sles12  x86_64 sles default frontend
    SLES   12sp3                sles12  x86_64 sles -----
    
  • Use the same starting node for stackios as frontend-install.py

  • do get()'s instead of indexing into the attributes dicitonary to not crash on a stackios frontend install

  • add a stack sync config. This is needed in stackios (at least to fix the hosts file). TODO: better place for this line...

  • Explicitly set the permissions in 'add pallet', to make them compatible with apache - this was broken in stackios

  • stackios needs to set the hostname attr explicitly in site.attrs

  • Fix logrotate config not being laid down during install

  • add pallets to the frontend box in StackiOS

  • remove the very old create keys command. Use ssh-keygen instead.

  • don't apply pallet patches when creating jumbo pallets

  • Remove/replace unnecessary calls into stack.file

  • Add pallet by network path should normalize the path ('//' -> '/')

    (and then actually use the result)

  • Don't throw away wget output in 'add pallet', in case we have an error

  • On CentOS paths for mariadb RPM are borked

  • pip2src sometimes lost bootstrap for deps

    If multiple packages shared a dependency but only one package was
    set for bootstrap sometimes the dependencies would not bootstrap.

  • Keep Docker on CentOS7

    latest image tag is now CentOS8 and we are not ready for that.

Git

  • Merge branch 'release/5.4' into develop

5.4

15 Oct 22:59
Compare
Choose a tag to compare
5.4

Feature

  • add host sets the boot action to os

    remove test for state that doesn't happen

  • Make pallet patching work for any pallet, more extendable, and available outside of 'add pallet'

  • Add example partition spreadsheets for uefi based hosts

  • Rework report system partition test to work on RedHat and SLES

  • Added TAB completion to stack command.

  • Add port forwarding to cluster-up

    You can now pass a new --forward-ports=SRC:DST[,...] flag to the cluster-up.sh command to forward ports from the host (SRC) to the guest VM (DST). Multiple comma separated SRC:DST pairs can be passed in the flag.

  • Allow json data to be posted directly via the webservice

  • Allow non-frontend parents to be time servers

    Also allow for non management of time

  • Remove the sync.hosts attribute

    Must use manage.hostfile and sync.hostsfile from now on.

  • Add parameter to stack load to have it run the commands

  • Fine grain management of /etc/hosts

    Attributes

    manage.hostfile - file created during installation (default is False/None)

    sync.hostsfile - file creating the file during sync host network if
    manage.hostsfile is also true. (default is False/None)

    Transitioning away from the sync.hosts attribute that controlled both
    of these as all or nothing.

    For Teradata the default will be managed.hostsfile=True and
    sync.hostsfile=False, hence the above change.

  • Stop managing the ssh host keys

    This means a re-install WILL change the ssh host keys.

  • 'stack load' includes pallet tags (if pallet exists)

  • Create a stack-templates package for jinja templates. Templatize 'report.named'.

  • Add os and environment support to stack load

  • add 'prefix' attribute to 'stack:report' SUX tags. This allows 'report' commands outside of 'stack report more stuff'

  • during sync host network, also sync /etc/hosts, but only if the attr sync.hosts=True

  • Also sync /etc/resolv.conf during sync host network. Cleanup seemingly superfluous 'report' calls

  • Add a new "external" appliance for unmanaged hosts

  • Relocate the host interface alias commands

    The [add|list|remove] host alias commands are now located at
    [add|list|remove] host interface alias to better reflect that the
    command actually attaches the alias to a host interface.

  • Port to Red Hat 7.6.1810

  • Halt the install (sles) with an error message on the console and in the message queue if we are unable to create a RAID. To override, set the attribute 'halt_install_on_error=False'.

  • Add firmware management framework to stacki

    Adds a set of stacki commands to manage firmware for devices. The
    initial set of supported hardware includes Dell x1052 switches and
    Mellanox m7800 and m6036 infiniband switches.

  • report system checks if the backend installs succeeded

  • Improved cluster data output in report system

    The stack report system command now outputs a section in the end of the output containing all the list data collected during the commands. I also added data for list cart because it seemed to be missing.

    To use this in other tests, simply include the new report_output fixture and call it inside of your test function, passing it a "title" for the output and the output itself, both as strings.

  • Refactor storage partition commands to use scope

    There are now scope level commands for storage partition:

    stack add [appliance, environment, host, os] storage partition
    stack list [appliance, environment, host, os] storage partition
    stack remove [appliance, environment, host, os] storage partition
    

    These versions of the commands operate on the global scope:

    stack add storage partition
    stack list storage partition
    stack remove storage partition
    
  • /etc/resolv.conf improved handling

    resolv.search attribute can override the search line.

    Only the Frontend has access to the Kickstart_PublicDNSServers. For
    all other nodes the Frontend will be the first nameserver IFF it is
    serving DNS for any network (this was previously the case as well),
    but the subsequent nameserver lines will come only from the
    Kickstart_PrivateDNSServers.

  • Added checklist service that gives information about backend installation.

    This can be invoked via systemd 'systemctl start|stop|status checklist' or as a standalone script
    via 'export STACKDEBUG=y;/opt/stack/bin/checklist.py'. Installation status is logged to /var/log/checklist.log and will also be added to console in the debug mode.

  • Added support for target,*,1,*, in storage CSV.

    This will pair up drives and put them in a RAID 1 configurations.

  • setting Kickstart_PrivateDNSServers to ' ' removes nameserver line from /etc/resolv.conf
    Also if no Public and Private DNSServers are defined don't setup stacki DNS to forward.

  • Vagrant based magic to have Stacki build itself

  • NTP Fixes

    Support for NTP service across the cluster.

    1. Run Chrony server on the frontend
    2. Run NTP / Chrony on backends
    3. Support for time islands

Bugfix

  • Correct redhat os name for sync host firewall

    This fixes a bug in sync host firewall on redhat based hosts.
    Before the condition for calling iptables expected the string rhel
    instead of redhat, with the latter being set as the os name
    on redhat hosts. This resulted in a service that is sles only
    trying to be called (stacki-iptables) and failing when trying to sync
    the firewall.

  • Update 'load networkfile' documentation

  • print cleaner error message on XML parsing errors while trying 'help' instead of stacktrace.

    Also fix an XML parsing error in 'sync host firmware's docstring

  • Add/correct more docstrings in dump and load

  • Add docstrings to each dump command.

  • Fix permissions of uefi files for the tftp server

    When setting up a frontend to serve uefi based hosts on CentOS, the previous
    behavior was to just copy shim.efi and grubx64.efi from /boot/EFI/centos
    without changing their file permissions. These files had permissions of 0700,
    resulting in tftp permission denied errors when trying to retrive files from
    the host, causing boot errors. This commit changes these files to be readable
    by anyone (0644) after being copied so they can be served to hosts via tftp.

  • fix bug where we were unable to remove a pallet if the directory contents were already removed.

  • Only allow valid hostname labels

    Validity is defined by RFCs 952 and 1123.
    Hostnames in add/set host are validated as one label.

  • smq-publish was accessing an attributes variable that didn't exist in the exception code path

  • add cart shouldn't fail if it can't import requests (which is not available early in the barnacle process)

  • Allow cluster-up to use the local frontend-install.py

    If it can't find a local copy, then try to pull it from Github using a branch which matches the version embedded in the ISO name.

  • Fix conditionally installing RPMs in frontend-install.py

    The old code was still including stack-templates in the package list, which needed to be conditional to support older versions of Stacki. I also found a cleaner way to probe if a package is availble to install.

  • Give self-signed certificates a unique serial

    Browsers don't like it when your SSL cert has the same serial number (in this case 0) as a previous SSL cert for the same domain. This bits you when you are using localhost as your domain and you reinstall the frontend.

  • Added checking to skip repoquery command if the os is sles

  • Fix report system tests incorrectly using stack.api.Call

  • print error messages if they come up in 'list help'

    Import errors can trip up the overall stack command if they happen in a part of the overall stack command package.

  • Fix minimal PDperarray value for Raid 50, and Raid 60.

  • Add stack-templates to server installs

    (even non-barnacled ones)

  • Fail if the command being evaled fails

  • Frontend goes into the frontend box

  • add check to install script to not break older stacki releases with newer install scripts

  • Fix a handful of print syntax errors

  • Load storage controllers into the correct scope

  • Fix not loading the firewall rule names

  • const_overwrite attribute processing fix

  • in sync host boot a notify=true parameter was trying to be

    appended to the report host bootfile call, but in that code it was
    being treated as a host.

  • Always sync /etc/hosts on the Frontend

  • Don't dump attributes marked 'shadow'

  • only restart named if a network in the database has dns=true

  • when running against a host with an interface with no zone, default to using just the hostname

    Also fix various places where we assume a host, including the FE, will have a 'domainname' attribute.

  • Load storage partitions under the correct scope

  • Properly set the file system type when loading partitions

  • Fail to get scope mappings if arguments are provided at the global scope

  • Frontend goes into frontend box

  • Environment commands fails w/o environments defined

  • Change default stacki frontend time to be UTC.

  • Apache appears to need restarted after the barnacle during the Redhat bootable ISO build

  • Fix SQL error in list attr

    In the addGlobalAttrs function used to generate Kickstart_PrivateHostname and Kickstart_PublicHostname contained an SQL statement testing if the network interface name was null, using <>. This will always return false, no matter what, and should have been IS NOT NULL instead.

  • Import sys for the rare error path

    Also cleanup some dangling whitespace.

  • add os to supported parameters

    Add support for specifying the os (sles, redhat) when creating a mirror.
    Defaults to the current os if not specified

  • fix the ...

Read more

05.02.06.12

20 Sep 19:45
cb68613
Compare
Choose a tag to compare

Feature

  • Allow non-frontend parents to be time servers

    Also allow for non management of time

  • Allow json data to be posted directly via the webservice

  • Add parameter to stack load to have it run the commands

  • Remove the sync.hosts attribute

    Must use manage.hostfile and sync.hostsfile from now on.

  • Fine grain management of /etc/hosts

    Attributes

    manage.hostfile - file created during installation (default is False/None)

    sync.hostsfile - file creating the file during sync host network if
    manage.hostsfile is also true. (default is False/None)

    Transitioning away from the sync.hosts attribute that controlled both
    of these as all or nothing.

    For Teradata the default will be managed.hostsfile=True and
    sync.hostsfile=False, hence the above change.

05.02.06.11

12 Sep 20:25
Compare
Choose a tag to compare

Feature

  • Add paramiko to python-packages

    This also means dependencies were recalculated and many other
    python packages got upgraded.

05.02.06.10

12 Sep 20:27
Compare
Choose a tag to compare

Feature

  • Stop managing the ssh host keys

    This means a re-install WILL change the ssh host keys.

    Conflicts:
    sles/nodes/ssh-client.xml

  • 'stack load' includes pallet tags (if pallet exists)

  • during sync host network, also sync /etc/hosts, but only if the attr sync.hosts=True

  • Also sync /etc/resolv.conf during sync host network. Cleanup seemingly superfluous 'report' calls

  • Add a new "external" appliance for unmanaged hosts

Bugfix

  • Frontend goes into the frontend box

    Conflicts:
    tools/iso-builder/build.sh

  • add check to install script to not break older stacki releases with newer install scripts

  • Always sync /etc/hosts on the Frontend

  • only restart named if a network in the database has dns=true

  • Environment commands fails w/o environments defined

  • when running against a host with an interface with no zone, default to using just the hostname

    Also fix various places where we assume a host, including the FE, will have a 'domainname' attribute.

  • Properly set the file system type when loading partitions

  • stack dump get correct global partition information

Git

  • Merge branch 'support/05.02.06.x' of github.com:Teradata/stacki into support/05.02.06.x

05.02.06.09

12 Sep 20:28
d120717
Compare
Choose a tag to compare

Bugfix

  • Apache appears to need restarted after the barnacle during the Redhat bootable ISO build

  • Fix SQL error in list attr

    In the addGlobalAttrs function used to generate Kickstart_PrivateHostname and Kickstart_PublicHostname contained an SQL statem
    ent testing if the network interface name was null, using <>. This will always return false, no matter what, and should have been I\ S NOT NULL instead.

  • Import sys for the rare error path

    Also cleanup some dangling whitespace.

  • fix the infiniband table definitions to actually clean up the database if foreign keys are removed

  • missed an argument for the error handling code in controller config

05.02.06.08

12 Sep 20:29
10b28ea
Compare
Choose a tag to compare

Feature

  • Halt the install (sles) with an error message on the console and in the message queue if we are unable to create a RAID. To override
    , set the attribute 'halt_install_on_error=False'.

Bugfix

  • Display an error message on the console and the message queue if we are unable to find any disks on the host.

  • attempt to umount all partitions on a disk before nuking.

    If we are unable to unmount the partitions, raise an error unless attribute 'halt_install_on_error=False'.

  • Correctly identify if a block device is a disk or partition on sles11

    Previous code assumed the output of hwinfo would be more consistent, but this does not appear to be the case and could cause a stack
    trace that led to storage not being initialized.

05.02.06.07

12 Sep 20:30
Compare
Choose a tag to compare

Bugfix

  • Start Chronyd on frontend

  • Handle nukedisks before the we start autoyast. This prevents the situation where the installer hangs because it attempted to mount
    a disk and could not later nuke it.

05.02.06.06

12 Sep 20:30
Compare
Choose a tag to compare

Feature

  • /etc/resolv.conf improved handling

    resolv.search attribute can override the search line.

    Only the Frontend has access to the Kickstart_PublicDNSServers. For
    all other nodes the Frontend will be the first nameserver IFF it is
    serving DNS for any network (this was previously the case as well),
    but the subsequent nameserver lines will come only from the
    Kickstart_PrivateDNSServers.

Bugfix

  • Do interface validation of set interface commands in a case-insensitive manor, to match the DB.

  • The command is systemctl, not systemd