Comments (27)
Travis should provide Oracle JDKs (as CloudBees does with their hosted Jenkins service).
from travis-cookbooks.
@bootstraponline Travis should provide multiple JDKs, not just Oracle JDKs. All the interesting new development happens in OpenJDK and Oracle JDKs are only released months after OpenJDK GA. So if we ever want to provide recent updates quickly, having OpenJDK is the only way to go. Plus, this is what is the default in many leading distros.
from travis-cookbooks.
Travis should provide both OpenJDK and Oracle JDK. At the moment travis-ci doesn't provide any Oracle JDKs which is the reason for my comment.
There are still significant differences between OpenJDK and Oracle JDK. Some apps are certified only for Oracle JDK so to not have the ability to test against the official Oracle release is a deal breaker.
Also there's a reason why CloudBees only provides official Oracle releases.
http://wiki.cloudbees.com/bin/view/DEV/Jenkins+Build+Machine+Specifications
from travis-cookbooks.
I think it would be nice to supply for JDKs, but two things seem to be in the way:
- cookbooks to install another JDK or two
- a JDK swticher
Interested in helping?
On 16/05/2012, at 8:26 PM, bootstraponline wrote:
Travis should provide both OpenJDK and Oracle JDK. At the moment travis-ci doesn't provide any Oracle JDKs which is the reason for my comment.
There are still significant differences between OpenJDK and Oracle JDK. Some apps are certified only for Oracle JDK so to not have the ability to test against the official Oracle release is a deal breaker.
Reply to this email directly or view it on GitHub:
#35 (comment)
from travis-cookbooks.
I think the opscode java cookbook supports everything required. The update-alternatives
script should be good enough to switch between the java versions.
I'm willing to help if travis-ci is interested in supporting the Oracle JDK. Oracle now forces you to host the JDK on an internal repository instead of downloading it from their website. If travis-ci hosts that repository, the cookbook and JDK switcher are not complicated.
from travis-cookbooks.
I am very keen for help on this, and very keen to add Oracle JDK + Java 7u2 (imagine testing against 4 Java versions!)
On 16/05/2012, at 8:38 PM, bootstraponline wrote:
I think the opscode java cookbook supports everything required. The
update-alternatives
script should be good enough to switch between the java versions.I'm willing to help if travis-ci is interested in supporting the Oracle JDK. Oracle now forces you to host the JDK on an internal repository instead of downloading it from their website. If travis-ci hosts that repository, the cook book and JDK switcher are not complicated.
Reply to this email directly or view it on GitHub:
#35 (comment)
from travis-cookbooks.
I will work through some of the other issues in my OSS projects this week and finally push what I have. The problem with the JDK switcher and possible solutions are pretty well understood now.
As a side note, it is obvious from how many Java, Clojure, Scala projects we have that not having Oracle JDK is not a deal breaker for most people. Even engineers from Oracle have asked me that we provide OpenJDK 7.
from travis-cookbooks.
<3<3<3
But if I play the devils advocate, is providing Oracle JDK 6 and 7 a bad thing to do?
On 16/05/2012, at 8:45 PM, Michael Klishin wrote:
I will work through some of the other issues in my OSS projects this week and finally push what I have. The problem with the JDK switcher and possible solutions are pretty well understood now.
As a side note, it is obvious from how many Java, Clojure, Scala projects we have that not having Oracle JDK is not a deal breaker for most people. Even engineers from Oracle have asked me that we provide OpenJDK 7.
Reply to this email directly or view it on GitHub:
#35 (comment)
from travis-cookbooks.
I meant "in addition to OpenJDK 6". I'd be happy to provide 5-6 JDKs if it won't be too much maintenance and we can do it legally (I am not sure if we can do it for IBM J9 and Oracle's JRockit).
from travis-cookbooks.
I posted this before the other comments were available. It sounds like @michaelklishin has it all set. If I can help let me know.
Oracle JDK can be provided legally provided the terms of use are followed. I don't think J9 or JRockit are important.
from travis-cookbooks.
OpenJDK 6 and 7, Oracle JDK 7, possibly Oracle JDK 6 and J9. JDK 6 is EOL this November, JDK 7 will be the default in the next Ubuntu and Fedora releases and finally, 7 is backwards compatible (the "Lucene incident" was clearly a serious bug, not an intentional breakage).
And yes, we will use update-alternatives
and friends.
from travis-cookbooks.
Actually we can get Travis to do the jdk switching as part of the Java Builder. :)
On 16/05/2012, at 8:51 PM, bootstraponline wrote:
- Which versions of Java do we want to support? I think the latest 1.6 and 1.7 of OpenJDK and Oracle JDK is good enough. I'm not sure supporting 1.5 is desirable.
- How is travis-ci going to host the Oracle JDK builds? They should only be internally accessible. Some companies just use S3.
I'm thinking it'll be easy enough to modify the opscode java cookbook to install the desired Java JDKs in standard locations. Then documentation can be provided on how to call update-alternatives to select the appropriate Java.
Reply to this email directly or view it on GitHub:
#35 (comment)
from travis-cookbooks.
That sounds great.
from travis-cookbooks.
For the record, @loicfrering and I just discussed how exactly we should proceed with this. The plan is
- Add a bunch of recipes that install OpenJDK 6 (
java::openjdk6
), OpenJDK 7 (java::openjdk7
), Oracle JDK 7u4 via PPA and maybe Sun JDK 6 (although I think it is not worth having) - Finish with the
java::multi
recipe that will be very much likervm::multi
,php::multi
,python::multi
and so on - Finish the JDK switcher tool
- (Possibly) make Oracle JDK 7 (because it is at Update 4 with lots of improvements JRuby and JRuby users crave for) the default
Loïc will start with the first 2, I will review and test pull requests. I will finish the 3rd item and gather some feedback about making the switch to JDK 7.
Opinions on the latter are very welcome. Keep in mind that JDK 6 is EOL this November and next versions of Ubuntu and Fedora will use OpenJDK 7.
from travis-cookbooks.
Oracle JDK 7u4 recipe is ready as of afa31a8, ready for both 11.10 and 12.04.
from travis-cookbooks.
Oracle JDK 7 support is wonderful and makes sense as the default. I don't use JDK 6 and it will be EOL soon so I'm not sure it's worth it.
from travis-cookbooks.
There are services that won't work with Oracle JDK 7 (Elastic Search is one example). So OpenJDK 7 will be the default.
from travis-cookbooks.
I agree that Oracle JDK7 support is important but OpenJDK7 makes more sense as the default java version on Travis.
from travis-cookbooks.
To clarify: they will work with Oracle JDK 7 but won't install without OpenJDK 7 available because of package dependencies. ES right now can work with OpenJDK 6 or 7 and Sun JDK 6 that Ubuntu provides in the partner repository. Unfortunately, it is unrealistic to run after each package and try to fix their dependency list to include recent Oracle JDK 7 updates from the PPA we use.
It won't be difficult to test against Oracle JDK 7 for projects that primarily want that, though: a line or two in .travis.yml
.
from travis-cookbooks.
OpenJDK 7 as default is fine as switching to Oracle is easy enough for those that want it.
from travis-cookbooks.
Actually, I think I have a solution I need to try first. Then using Oracle JDK 7 by default will be an option.
from travis-cookbooks.
Great progress on this issue today (primarily by @loicfrering). We will deploy multiple JDKs side by side (OpenJDK 6 will stay the default until this feature is fully complete and baked) and run some tests without the proper switching tool in the upcoming week. So far we have
- OpenJDK 7
- Oracle JDK 7u4
- OpenJDK 6
and it sounds like what we really care about. Sun JDK 6 is the same as OpenJDK 6 as far as the server side software goes and is EOL in less than 6 months. Also, its recipe is the most hairy one so I am happy to leave it behind.
from travis-cookbooks.
We deployed this to jvmotp1.worker today, looks like the CI env part of this is done
from travis-cookbooks.
What do I put in .travis.yml to use Oracle JDK 7?
from travis-cookbooks.
It is only deployed for jvmotp1.worker (so, will only work for Clojure, Groovy, Java and Scala projects, no JRuby yet). You need to add this:
jdk:
- openjdk6
- openjdk7
- oraclejdk7
(pick JDKs you care about out of those 3). Let us know how it goes (here or on the mailing list).
from travis-cookbooks.
I tested with all 3 and it works! I switched to just use oraclejdk7.
from travis-cookbooks.
Nice. Feel free to spread the word about this feature to Java/ Groovy/Scala/Clojure projects you care about, we will finish with the JRuby part, publish the docs and blog announcement later this week.
from travis-cookbooks.
Related Issues (20)
- docker-ce installation on ppc64le HOT 1
- Weekly Digest (9 November, 2018 - 16 November, 2018)
- What version of chef-client runs these cookbooks?
- usr/bin HOT 1
- jq 1.5 in Focal HOT 1
- Add Hadolint - Haskell Dockerfile Linter
- Android builds break when updating to android gradle plugin 7 HOT 1
- T bomb
- #https://story.snapchat.com/@l3454
- Set Travis to always use the latest versions of JDKs with all patches/updates
- Builds broken by the newly released rabbitmq-server 3.7.0
- Foodcritic failures on master after chef-dk 2.4 release (which includes foodcritic 12.x) HOT 1
- Install gRPC PHP extension (disabled, by default)
- Ensure scripts invoked from /etc/profile.d (recursively) are sh-compatible HOT 3
- Android API 26 & 27
- Java: Switch to `bach` for installing and managing JDKs HOT 4
- Upgrade the nodejs nvm versions of cookbook HOT 3
- jdk_switcher: "Sorry, but JDK 'oraclejdk10' is not known." HOT 1
- Backport maven repo update
- Update Maven version in Travis build environment HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from travis-cookbooks.