Skip to content
This repository has been archived by the owner on Jan 6, 2023. It is now read-only.

Avoid depending on molecule.config #58

Merged
merged 1 commit into from Oct 18, 2020

Conversation

apatard
Copy link
Member

@apatard apatard commented Oct 16, 2020

Since molecule commit "Avoid parallel execution of a specific schenario"
(65ccd6b), the molecule scenario directory is protected by a lock.
Which is fine. Except that the vagrant module is using molecule.config.Config
to get:

  • the molecule ephemeral directory,
  • path to the Vagrantfile.

This will result in the vagrant module trying again to get the lock help
by molecule and fails with messages like:
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 30 seconds
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 60 seconds
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 90 seconds
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 120 seconds
Timedout trying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options

As a solution, add a new parameter to the module, called 'workdir', used
to set the vagrant working directory, which is in reality what's the
path used by the module to store its files and this path is obviously
the molecule ephemeral directory in case of molecule.
So, if this parameter is not set, it will defaults to the molecule
ephemeral directory.

Fixes: #43
Signed-off-by: Arnaud Patard apatard@hupstream.com

Since molecule commit "Avoid parallel execution of a specific schenario"
(65ccd6b), the molecule scenario directory is protected by a lock.
Which is fine. Except that the vagrant module is using molecule.config.Config
to get:
- the molecule ephemeral directory,
- path to the Vagrantfile.

This will result in the vagrant module trying again to get the lock help
by molecule and fails with messages like:
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 30 seconds
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 60 seconds
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 90 seconds
Retrying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options, waiting for 120 seconds
Timedout trying to acquire lock on /home/zuul/.cache/molecule/scenarios/config_options

As a solution, add a new parameter to the module, called 'workdir', used
to set the vagrant working directory, which is in reality what's the
path used by the module to store its files and this path is obviously
the molecule ephemeral directory in case of molecule.
So, if this parameter is not set, it will defaults to the molecule
ephemeral directory.

Signed-off-by: Arnaud Patard <apatard@hupstream.com>
@apatard
Copy link
Member Author

apatard commented Oct 16, 2020

recheck

1 similar comment
@apatard
Copy link
Member Author

apatard commented Oct 17, 2020

recheck

@ssbarnea ssbarnea added the bug Something isn't working label Oct 18, 2020
@ssbarnea ssbarnea changed the title molecule_vagrant/modules/vagrant.py: Stop depending on molecule.config Avoid depending on molecule.config Oct 18, 2020
@ssbarnea ssbarnea merged commit 80b6c3e into ansible-community:master Oct 18, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

broken with molecule HEAD
2 participants