Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.6 Changes #326

Merged
merged 12 commits into from
Oct 14, 2024
Merged

0.6 Changes #326

merged 12 commits into from
Oct 14, 2024

Commits on Sep 27, 2024

  1. Enable timeouts for command execution when using Hussh

    Previosuly it was impossible to set command-level timeouts when using
    Hussh as the backend. In fact, due to the way the Host objects acquired
    their Hussh connections, timeouts were always left to the default.
    Now, with Hussh 0.1.7, we can pass a command-specific timeout.
    JacobCallahan committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    d9fc28f View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2024

  1. Introduction of broker config cli and much more!

    The initial change of this was to introduce the broker config cli.
    However, to do this, a number of supporting and related changes needed
    to be made.
    
    The first of these is the new ConfigManager class that manages reading
    from and writing to the config file.
    Since so much logic was implemented for this, it made more sense to roll
    in the import/init functionality, that was originally in the settings
    module, into the new class.
    
    This also gave me the opportunity to separate the test config from the
    example config. This removal, and other changes in this were supported
    by ConfigManager's migration functionality.
    
    To simplify the nested chunk notation, I moved provider instances out
    from a list to just being a nested dictionary. This actually simplified
    the instance logic quite a bit.
    
    Related to config simlification was the separation of the host settings
    to a new ssh chunk of the config. This is because not all users use the
    host functionality Broker provides. A likely change with this release is
    going to be removing a default ssh backend from Broker's requirements.
    
    While I was at it, I also switched the CLI over to rich-click as part of
    a larger effort to improve the CLI experience.
    JacobCallahan committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    8dd52b1 View commit details
    Browse the repository at this point in the history
  2. Respect the thread_limit setting included in the previous commit

    Due to timing, I couldn't cleanly include this in the previous commit,
    but here it is.
    Now Broker actions, including checkins will reference this new setting
    when determining how many threads it should use.
    JacobCallahan committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    63d7e42 View commit details
    Browse the repository at this point in the history
  3. Allow users to init the config (or chunk) from a custom location

    With this change, users can now specify a `--from` argument with a valid
    path or url to a valid broker settings file.
    This will still try to fallback on the current behavior of using a local
    repo or the main SatelliteQE/broker repo as the source.
    JacobCallahan committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    b2bef29 View commit details
    Browse the repository at this point in the history
  4. Change cli terminology from VMs to Hosts

    Broker has expanded a while ago with the types of hosts it can support,
    it's time we updated our terminology to match.
    JacobCallahan committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    24784d0 View commit details
    Browse the repository at this point in the history
  5. Rework config manager's validation

    A number of changes were needed both functionally and stylistically to
    get this where we want it, but it's pretty good now. I don't know if I
    like the "Validation passed!" message, since it will likely print every
    time, but it can stay for now.
    JacobCallahan committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    36a143d View commit details
    Browse the repository at this point in the history
  6. Switch to ruamel to keep comments in yaml files

    PyYaml is a good library, but had the unfortunate side-effect of
    stripping comments from yaml files on read/write. Switching to ruamel
    now let's us retain the comments, and arguably improves usage in some
    ways.
    There may be some issues with awxkit objects due to the way the
    representers are added, but I can't say for certain that is the case
    yet.
    JacobCallahan committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    4c9a6dc View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2024

  1. Rework inventory cli

    With the changes we've been making in 0.6 toward a better, more
    customizable and visually appealing, user experience. It's time that we
    revisited the inventory command.
    The --curated view introduced in 0.5.x has now become the default
    inventory view. The original default view is now present in its new form
    and home with the --list flag.
    The --details flag largely retains the functionality it did before.
    However, it involves much less processing than before.
    
    One important piece added in this is the ability to customize the
    inventory fields on a per-user basis. The details on this customization
    are documented in detail in the supporting code.
    It will also be important to document this in the wiki upon release.
    JacobCallahan committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    ec4b963 View commit details
    Browse the repository at this point in the history
  2. Add in the sad ability to lessen color output for rich

    In case people want to have a more plain output.
    JacobCallahan committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    c137921 View commit details
    Browse the repository at this point in the history
  3. Adjust a couple of migrations

    I had forgot the include logic to not run some migrations if the changes
    have already taken place. This skip is just the "naive" approach instead
    of doing a complete validation that the previous fields have migrated.
    JacobCallahan committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    9cde2f2 View commit details
    Browse the repository at this point in the history
  4. Update broker/helpers.py

    Co-authored-by: Tasos Papaioannou <[email protected]>
    JacobCallahan and tpapaioa committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    5cad1d2 View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2024

  1. Small workaround for container syncing

    In cases, like we currently have, where the container host is podman<5.0
    and local podman/podman-py is >=5.0 we run into a TypeError. To solve
    this, we resort to manually getting the status.
    JacobCallahan committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    4263d4b View commit details
    Browse the repository at this point in the history