Giter Club home page Giter Club logo

Comments (8)

adamcrews avatar adamcrews commented on September 26, 2024

I'm thinking I'll take a stab at this, but Oracle makes it difficult to automatically download their files. You must accept a license agreement on the Oracle webpage which then sets a cookie that allows the download to happen. I can do this in the module, but the easiest way is to use the nanliu/archive module instead of staging or deploy to fetch and place the various downloaded bits.

So the avenues I can take are:

  1. add support for archive, so the module supports deploy, and staging, and archive.
    • easy, but seems silly to support so many overlapping tools.
  2. replace staging with archive.
    • pretty easy, but a much bigger PR and likely a major version bump.
  3. drop support for deploy and staging in favor of archive only.
    • more difficult, but I think it simplifies the code in the long run

Is there a reason that staging and deploy are both supported in the module?
Is there an objection to removing staging and deploy and going with only archive?

from puppet-jira.

mkrakowitzer avatar mkrakowitzer commented on September 26, 2024

I kept support for deploy to remain backwards compatible as it was the original module used. I think lets drop support for both deploy and staging in favour of archive, it would require a major version bump though.

re downloading files from oracle, I do this with the deploy module, I am sure its possible with staging/archive. See example here: https://github.com/puppet-community/puppet-jira/blob/master/spec/acceptance/default_parameters_spec.rb

from puppet-jira.

igalic avatar igalic commented on September 26, 2024

👍

from puppet-jira.

adamcrews avatar adamcrews commented on September 26, 2024

In case anyone else happens on this ticket, I've got this mostly done and expect to have all the tests passing in the next couple days.

from puppet-jira.

adamcrews avatar adamcrews commented on September 26, 2024

The ojdbc drivers are behind a login wall. I was figuring I could step around the license accept checkbox with a cookie just like you can with the java downloads, but that is not the case for the ojdbc drivers. You need both the cookie and auth credentials. So.... I'll do a PR shortly that will let you specify your own download url for the drivers, and add a note to the docs on why you can't auto download it direct from the source at Oracle.

from puppet-jira.

adamcrews avatar adamcrews commented on September 26, 2024

Haha, the jokes on me (and everyone else). The tar version of Jira that this module installs includes a ojdbc driver. A user only needs to add the driver if they are using the WAR file distribution. Since this module does not support setting jira up via war file, I think this ticket can just be closed.

Step 2 of this page documents this. https://confluence.atlassian.com/jira/connecting-jira-to-oracle-185729461.html

from puppet-jira.

TJM avatar TJM commented on September 26, 2024

For what its worth they no longer include the ojdbc driver, even in the tar version. It's really too bad it can't automatically look in like $JIRA_HOME/lib for jars :-/

This one should at least support fetching the jar from a "local" source (puppet/https/etc), even if it can't emulate agreeing to the license agreement on oracle.com.

from puppet-jira.

TJM avatar TJM commented on September 26, 2024

@adamcrews Do you still have any of this code? The ojdbc8.jar is not (no longer) distributed with JIRA, even in the "tar" distribution. It might be nice to have some existing "working" code to start with. My current customer will, of course, need to be able to set an "internal" URL (Artifactory) to retrieve the file from, because our servers cannot directly reach the Internet.

Additionally, as this is required for multiple tools, perhaps it would make sense to have ojdbc be its own puppet module, that could be reused in confluence, jira, crucible, etc?

Right now, I have a workaround like the following in my profile:

class profile::jira7 (
  Boolean $manage_ojdbc = true,
  String $ojdbc_source = 'https://artifactory.domain.com/artifactory/atlassian-tools/ojdbc8.jar',
) {

  include java
  include jira
  include jira::facts

  # Workaround for OJDBC
  if $manage_ojdbc {
    $ojdbc_file = split($ojdbc_source, '/')[-1]
    $ojdbc_path = "${jira::webappdir}/lib/${ojdbc_file}"
    file { $ojdbc_path:
      ensure => file,
      source => $ojdbc_source,
      mode   => '0644',
      owner  => $jira::uid,
      group  => $jira::gid,
    }
    File[$ojdbc_path] ~> Class[Jira::Service]
  }
}

I think using the archive module would be better. I think I remember there being some reason why using a http path for source was 'bad', like maybe it would make a web request for each puppet run?

Anyhow, I have very similar code for confluence, and that was when I thought maybe this should be its own module ;)

~tommy

from puppet-jira.

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.