Git Product home page Git Product logo

Comments (10)

biemond avatar biemond commented on July 23, 2024

Oh thanks for reporting this.

@jairojunior do you know a solution for this.

from puppet-wildfly.

jairojunior avatar jairojunior commented on July 23, 2024

@TronPaul You'll only be able to have a single archive define\custom type in a puppet environment. =/

That's why everyone is struggling so bad to have no dependencies... In Java or Ruby you have namespaces to protect your types, but I don't know a similar feature in Puppet

We could switch from archive to curl/wget trough exec, but it will be kind of slow and hard to maintain. I personally don't like camptocamp/archive... nanliu/archive is awesome (except for faraday dependency)

from puppet-wildfly.

mmarseglia avatar mmarseglia commented on July 23, 2024

There is hope in this new feature http://scienceofficersblog.blogspot.com/2015/08/inspecting-puppet-module-metadata.html

from puppet-wildfly.

jairojunior avatar jairojunior commented on July 23, 2024

@mmarseglia Interesting. I'll take a deeper look this weekend.

from puppet-wildfly.

ltutar avatar ltutar commented on July 23, 2024

I had the same issue today.
[root@puppetmaster ~]# puppet module install biemond-wildfly
Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ...
Notice: Downloading from https://forgeapi.puppetlabs.com ...
Error: Could not install module 'biemond-wildfly' (latest)
Dependency 'nanliu-archive' (v0.3.0) would overwrite /etc/puppetlabs/code/environments/production/modules/archive
Currently, 'camptocamp-archive' (v0.8.1) is installed to that directory
Use puppet module install --ignore-dependencies to install only this module
[root@puppetmaster ~]# puppet module uninstall camptocamp-archive
Notice: Preparing to uninstall 'camptocamp-archive' ...
Error: Could not uninstall module 'camptocamp-archive'
Other installed modules have dependencies on 'camptocamp-archive' (v0.8.1)
'bfraser/grafana' (v2.5.0) requires 'camptocamp-archive' (>= 0.3.2 <2.0.0)
'rtyler/jenkins' (v1.6.1) requires 'camptocamp-archive' (>= 0.8.0)
Use puppet module uninstall --force to uninstall this module anyway
[root@puppetmaster ~]#

If I fix this, then Jenkins puppet run breaks.

[root@jenkinsagent ~]# puppet agent -t
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Resource Statement, Invalid resource type archive::download at /etc/puppetlabs/code/environments/production/modules/jenkins/manifests/plugin.pp:116:5 on node jenkinsagent.home
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
[root@jenkinsagent ~]#

from puppet-wildfly.

jairojunior avatar jairojunior commented on July 23, 2024

You're right. I can't expect everyone to use nanliu-archive.

install.pp and deploy.pp are the only classes that uses archive and I'll figure a way to remove this dependency.

from puppet-wildfly.

BobVincentatNCRdotcom avatar BobVincentatNCRdotcom commented on July 23, 2024

@TronPaul -- Is your fork publicly available? Have you submitted a pull request?

from puppet-wildfly.

TronPaul avatar TronPaul commented on July 23, 2024

@rvincentatprokarmadotcom the fork is publicly available, but it only solves our problem, ie switching to use camptocamp and ensuring it works for the bits of biemond-wildfly that we use. It's not something I wanted to make a PR for considering it would cause issues for people with different versions of archive. It seems with Puppet's current dependency management the best solution is to have as few dependencies as possible.

If you'd like to look at the diff https://github.com/backstop/biemond-wildfly/tree/c2c-archive was the basis of the change. We haven't kept it up to date with master and there are definitely merge conflicts. https://github.com/backstop/biemond-wildfly/tree/backstop is up to date, but includes some things that you probably don't want to pull in (though the password redacting stuff might be useful).

from puppet-wildfly.

jhazelwo avatar jhazelwo commented on July 23, 2024

This pull request removes archive{} calls and replaces them with the exec{} calls Archive was making.
#88

It's not super-pretty and there's some more cleanup to be done if the request is merged but it works and all tests are passing.

from puppet-wildfly.

jairojunior avatar jairojunior commented on July 23, 2024

Archive/faraday dependency removed.

from puppet-wildfly.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.