Mrack

Latest version: v1.23.0

Safety actively analyzes 682487 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 10

1.5.0

Releasing mrack version 1.5.0 ([`7b7afe2`](https://github.com/neoave/mrack/commit/7b7afe2695d0f57222e0b6ffcf271a47f7b4f1ed))

Feature

* feat(AWS): Create unique instance name with the tag

Create unique instance Hostname tag which is used
or can be used by lambda functions on AWS to create
dynamic DNS records on the fly.

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`b3e31e0`](https://github.com/neoave/mrack/commit/b3e31e0ab614c795ea34ef250e118ffa4905b536))

1.4.1

Releasing mrack version 1.4.1 ([`a0ad3fe`](https://github.com/neoave/mrack/commit/a0ad3fe8995aead942e03568fa7f6d4a26b943ef))

Fix

* fix: Creating inventory with None host

The code in create_invetory method was looping hostnames from the DB,
which some of them may have already been deleted, which cause a None return
when trying to get their metadata.

This fixes traceback caused by rerunning mrack up with a different host name
without previously deleting mrackdb.json

Signed-off-by: David Pascual <davhernaredhat.com> ([`7489240`](https://github.com/neoave/mrack/commit/748924088ab0416d8ff1d9381cb5da5f262a2af9))

1.4.0

Releasing mrack version 1.4.0 ([`6dfe04f`](https://github.com/neoave/mrack/commit/6dfe04f33507815328717876253faf1c42f46236))

Feature

* feat(AWS): Move tagging into creation request itself

When the creation of the instance is too slow
on the ec2 side we get a traceback that instance
does not exist (yet) and we need would need
to wait a bit in order to tag it.
Move tagging into request itself and do it at instance creation

resolves: https://github.com/neoave/mrack/issues/173

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`b4fae6b`](https://github.com/neoave/mrack/commit/b4fae6bceabfeffa2fe47efae5a3ee87aba6da74))

Fix

* fix(AWS): return False when ValidationError is raised

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`bb5594b`](https://github.com/neoave/mrack/commit/bb5594b4028bc06e71f5167615acbb9ac3cd7e32))

Refactor

* refactor: remove collon from error string

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`cedefcb`](https://github.com/neoave/mrack/commit/cedefcbdf8385f2e31d8078328776230b747d3e3))

1.3.1

Releasing mrack version 1.3.1 ([`81a70e7`](https://github.com/neoave/mrack/commit/81a70e75889bccda2272db6a56c3f9035aaaf2bb))

Documentation

* docs: Update the _get_image() method doc string

when the image is not found in the provisioning
config mapping the _get_image() method defaults
to the host[&39;os&39;] value from the input metadata

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`6b88058`](https://github.com/neoave/mrack/commit/6b8805880e2e9bfcb26dca4d9628254e4ad896cf))

Fix

* fix: image transformer none value in requirements

When OS image in metadata is not found in provisioning
config, there was a traceback causing mrack to fail.
Adding default value solves the problem and prints expected message.

Signed-off-by: David Pascual <davhernaredhat.com> ([`cb5290d`](https://github.com/neoave/mrack/commit/cb5290d7c4864dccf94c9c126487e9436fea8682))

Refactor

* refactor: print used image msg just once

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`9fd3616`](https://github.com/neoave/mrack/commit/9fd36165562aeb03c033c15298f34421835187c5))

Style

* style: Increase readability of logs by using host

Adding a host name from metadata or host object
where it is possible to increase readability of
the log messages and better debugging with only
using the log content. Before this patch there
were logging messages that were describing the
error but from the log message we could not tell
which host was causing that.

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`f31b4ef`](https://github.com/neoave/mrack/commit/f31b4ef1f1f847c3e95567ec012323be65a1e177))

1.3.0

Releasing mrack version 1.3.0 ([`75ce9e6`](https://github.com/neoave/mrack/commit/75ce9e6d18adbc56a6ed6314650afe068ec55638))

* chore: Add asyncio-mode=strict to pytest.ini

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`851dfb8`](https://github.com/neoave/mrack/commit/851dfb8f128907365775f8f7ba94d37dbe77ec75))

* chore: Add dav-pascual release actor

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`7494eea`](https://github.com/neoave/mrack/commit/7494eea7d74217fecdc5cfb3670b95b6ba0ce78d))

* chore: Update Black pre-commit hook version to 22.3.0 to fix issue

Recent release of Click makes current version of Black to break in the pre-commit stage. This issue is solved in newest version of Black 22.3.0
See more about the issue in https://github.com/psf/black/issues/2964

Signed-off-by: David Pascual <davhernaredhat.com> ([`b5c6d41`](https://github.com/neoave/mrack/commit/b5c6d41666da31057e875cd568ab915928b90006))

Documentation

* docs(aws): add missing examples to provisioning config

And config examples for features implemented recently for the aws
provider.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`e00e149`](https://github.com/neoave/mrack/commit/e00e1499364fef1b60a81417d485250817108991))

Feature

* feat(Beaker): Support distro variant configuration

Before this patch the distro variant could not be configured
and was hardcoded in the source code of the mrack project.
With this patch we support the old way and also a new way
of specifying the distro variants in the provisioning-config.

Updated the example provisioning-config.yaml file with latest
beaker feature examples.

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`e568507`](https://github.com/neoave/mrack/commit/e568507ec233fe232109717c68abb4a86b14948d))

* feat(Openstack): printout compose_id when using -latest image pointer

In order to know what image is the latest tag pointing to in Openstack,
meta_compose_id and meta_compose_url fields from image meta information are
printed out in the log and added to ansible inventory output.

Implemented in a way that allows extension for other providers with extra custom fields,
or images that don&39;t have those fields at all.q

Signed-off-by: David Pascual <davhernaredhat.com> ([`bb91893`](https://github.com/neoave/mrack/commit/bb918931d76b2cb031094398eb5e6970f2ef42ad))

* feat(aws): delete volumes on termination

The behavior is default it can be disabled by setting:

delete_volume_on_termination: false


In a config hierarchy of AWS provider.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`d90375e`](https://github.com/neoave/mrack/commit/d90375ebf571efb4f3b3d6cbf34dc741910fa95a))

* feat: possibility to disable host DNS resolution in outputs

Ansible inventory&39;s `ansible_host` or pytest-multihost&39;s
`external_hostname` currently by default tries to resolve host&39;s IP
address and use the DNS name if resolution is successfull.

This change allows to disable this behavior by setting:
resolve_host: False
Somewhere in the configuration hierarchy (metatadat host, provider
config, or global provisioning config).

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`3fbd133`](https://github.com/neoave/mrack/commit/3fbd133e14f7397ccf261edaf05470664681fc0a))

* feat(aws): request spot instances

Spot instances are a great way how to save money for CI purposes.

https://aws.amazon.com/ec2/spot

This is inital implementation where the only possible option is to
ask for spot instance, but not define SpotOptions - this can be
extended later if wanted.

How to use:
- set `spot: True` in `aws` provider to enable it globally
- set `spot: True` in host section in job metadata file to request
a spot instance for this particular host.

Additional changes:
- removes stopping instance on destroy as it doesn&39;t work with
default behaviour of spot instances + correctly handle exception when
stopping fails (previous behaviour crashed mrack)
- prepares a parameters dict to be able to control what is passed to
ec2.create_instances, + partly fixes a possible regression with
SubNetId

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`25576cb`](https://github.com/neoave/mrack/commit/25576cbb9be0e8e258e8e5fc7209acd17a7e641d))

* feat(aws): defining AMIs by tags

Add a new way to define an AWS EC2 image in a provisiong config in
addition to ami ID.

The following is valid:


images:
fedora-34: ami-0d3c5199abb29a7ae
fedora-35: { tag: { name: compose, value: mrack-fedora-35-latest } }


This allows for a seperate tool to upload new image with the same
purpose and mrack automatically picks the latest one with the given
tag.

Currently only one tag is supported and it search in all images.

Possible improvements:
- more tags
- limiting to private images

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`a04497c`](https://github.com/neoave/mrack/commit/a04497c6003445241d96b19218a775a106db7da5))

Fix

* fix: use host[&39;os&39;] as default value when distro is not found

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`253a380`](https://github.com/neoave/mrack/commit/253a3809887b1024b0ee09c1bc47a40869f35e8c))

* fix(Virt): remove password when provisioning windows

testcloud is capable to inject password to linux
instances but not to windows one when provisioning
thus remove the password from the result when
the instance is identified as windows host.

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`e3a976a`](https://github.com/neoave/mrack/commit/e3a976a75a6e13659277936c690a5abec1ae6faa))

Refactor

* refactor: use hierarchy search for images and distros

It may change some behavior a little but is mostly a refactoring.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`c3a91ad`](https://github.com/neoave/mrack/commit/c3a91ad9c36113ad14d4ebbab8985616a0a1359c))

Test

* test: Add test for legacy beaker variant transformer

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`c486941`](https://github.com/neoave/mrack/commit/c486941325e56fdb0dbd68eba332ce0d01132515))

* test: Add BeakerTransformer unit test for distro and variant

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`ce5ed46`](https://github.com/neoave/mrack/commit/ce5ed4615f2417a27f46efae6f1616b47d1cafa2))

* test: Update the mock_data for Beaker unit tests

Update the mock provisioning config data
and create new MockedBeakerTransformer

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`07acc21`](https://github.com/neoave/mrack/commit/07acc21f0b47ce4316207c04be1083401ac2d200))

1.2.0

Releasing mrack version 1.2.0 ([`bc658b7`](https://github.com/neoave/mrack/commit/bc658b75e429cebcee09c1a3fb41b0fd2b03bfbf))

Feature

* feat(aws): support for PrivateIpAddress

When instance is provisioned with VPC which does not have a public
IP address, mrack is not able to get IP and fails. So changing the
behavior to try also Private IP if Public is not present.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`8b7ed70`](https://github.com/neoave/mrack/commit/8b7ed705a58d533b7c5a2115b595d4e4e3e8c2e4))

* feat(aws): subnet support

Adding possibility to define subnet to use for the instances. This
is needed, e.g. when instance needs to use a non-default VPC.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`01c6bf5`](https://github.com/neoave/mrack/commit/01c6bf5a315ce4df73952086645911781516117d))

* feat(aws): multiple security groups

Add support to be able to use multiple security groups and thus be able
to fine tune the inbount and outbound commnucation rules.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`1340813`](https://github.com/neoave/mrack/commit/13408133310b80a4163aef21825ebaa861d9d0dc))

* feat(Openstack): poll openstack load when running can_provision()

Can provision method was using only preloaded limits which caused
provisioning to fail always when resources at begining of the run
were already full. Now we reload limits with every can_provision()
method call and make sure load is refreshed and provisioning continues

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`8ef8312`](https://github.com/neoave/mrack/commit/8ef831297a99c47eb270a6ea4f5e33ed20c8caee))

* feat: search also provider config for username

Cloud images might have a different default user based on privider, e.g.
RHEL has ec2-user but OpenStack image has cloud-user. This allows to
define default user per OS in provider section of provisioning config.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`8419698`](https://github.com/neoave/mrack/commit/84196984b85f7743cab3d148827d8417cefef11f))

* feat: find_value_in_config_hierarchy utility method

For getting a configuration value from the most specific to the
least specific. Design in a way to be usable for multiple of attributes.

E.g. first looking in host object then host definition in metadata then
in provider configuration and then in global provisioning configuration.

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`c05ab58`](https://github.com/neoave/mrack/commit/c05ab586ea61cb55b5ff211a7486be0c3ae74761))

Fix

* fix: SSH action - do not redirect to PIPEs

SSH action was previously redirected to PIPEs and thus it stopped
working from a user perspective as nothing was visible.

This patch is bringing the original behavior back.

Regression was caused by commit: 19d513ba246ef4be02a0ce3d22fbb0faea971ce8

Signed-off-by: Petr Vobornik <pvoborniredhat.com> ([`8992629`](https://github.com/neoave/mrack/commit/89926294b663c43edddea4a7c92503e407c92447))

* fix: prepare_provisioning now shall return bool value

Based on latest changes method prepare_provisioning
should return boolean value which means succes/fail
ref: a0de8475659153fd3fb39133a34f56729d0e561c

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`7e47c6f`](https://github.com/neoave/mrack/commit/7e47c6fd18015826575b8a844d95086502022e98))

* fix(Virt): Handle traceback when image is not accessible

When image for Virt provider is not accessible we
happen to raise an exception:
TypeError: &39;TestcloudImageError&39; object is not iterable
This should fix above exception and also tune behavior
when preparation of resources is failing.

Signed-off-by: Tibor Dudlák <tdudlakredhat.com> ([`a0de847`](https://github.com/neoave/mrack/commit/a0de8475659153fd3fb39133a34f56729d0e561c))

Page 6 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.