Skip to content

Fix a dependency cycle caused by Apt::Source from puppetlabs-apt 6.3.0#528

Merged
alexjfisher merged 2 commits intovoxpupuli:masterfrom
thaiphv:use-http-apt-repo
Feb 7, 2019
Merged

Fix a dependency cycle caused by Apt::Source from puppetlabs-apt 6.3.0#528
alexjfisher merged 2 commits intovoxpupuli:masterfrom
thaiphv:use-http-apt-repo

Conversation

@thaiphv
Copy link
Copy Markdown
Contributor

@thaiphv thaiphv commented Feb 6, 2019

Pull Request (PR) description

Use the HTTP repositories of the Debian packages in an attempt to fix a dependency cycle caused by the Apt::Source class when it tries to install the apt-transport-https package if the repository locations are HTTPS.

This Pull Request (PR) fixes the following issues

Fixes #527

@alexjfisher
Copy link
Copy Markdown
Member

I think the problem is actually with the resource collector finding more than anticipated.

Apt::Source['mongodb']->Package<|tag == 'mongodb'|>

Puppet will automatically tag resources in this module with mongodb and I also think if apt is included from here, it’s resources might also get the mongodb tag.

Comment thread manifests/repo.pp
$mongover = split($version, '[.]')
$location = $::operatingsystem ? {
'Debian' => "https://${repo_domain}/apt/debian",
'Ubuntu' => "https://${repo_domain}/apt/ubuntu",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@thaiphv Thanks for reporting this and the PR. This looks like a workaround instead of a bug fix. I’d like to investigate the root cause before making this change.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alexjfisher I agree that I was more of a workaround rather than a fix. I'll try out your idea and report it back.

@alexjfisher
Copy link
Copy Markdown
Member

@thaiphv Would you be able to try the following out for me?

Could you change the tag parameter used from mongodb to eg. mongo_package?
I think the following 4 locations would need updating.

tag => 'mongodb',


Yumrepo['mongodb'] -> Package<|tag == 'mongodb'|>

Apt::Source['mongodb']->Package<|tag == 'mongodb'|>

Thanks

@thaiphv
Copy link
Copy Markdown
Contributor Author

thaiphv commented Feb 6, 2019

@alexjfisher I can confirm that your suggested changes fixed the issue.

@alexjfisher alexjfisher merged commit 7e3ba69 into voxpupuli:master Feb 7, 2019
@alexjfisher
Copy link
Copy Markdown
Member

@thaiphv Thanks!

@thaiphv
Copy link
Copy Markdown
Contributor Author

thaiphv commented Feb 7, 2019

@alexjfisher thanks for your comments

bastelfreak pushed a commit that referenced this pull request Apr 6, 2019
@ekohl ekohl added the bug Something isn't working label May 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The class mongodb::repo::apt doesn't work with apt::source from latest version of puppetlabs/apt

3 participants