3. MITÄ, MISSÄ?
› Java yhteisön kokoontuminen San Franciscossa, 18.-22.9.2016
› Yhdenaikaisesti Orace Openworld kanssa, yhteensä n. 50 000
osallistujaa
› Suomesta muutamia satoja
› Suurin Java-tapahtuma, suurimmat julkistukset ja tiekartat
tulevaisuuteen
› Piilaakson pöhinät ja näppituntumat
4.
5. JAVA 9 – AND BEYOND
public class Point(int x, int y) { }
var url = new URL("https://sitepoint.com/java");
var connection = url.openConnection();
9. SPOCK FTW
class Spock_RouteIT extends Specification {
def 'should succeed on basic call'() {
def client = new RESTClient('http://localhost:8181','application/json')
when: 'we attempt to call GET ALL NEW ROUTES endpoint'
def resp = client.get(path: '/api/routes/find/all/new')
then: 'we should get non-zero response with http status 200 OK'
with (resp) {
status == 200
!data.isEmpty()
data.size() >= 0
}
}
}
Today, IMO there is little reason to use Job DSL because Pipeline is the Jenkins-supported mechanism for scripting Jenkins pipelines and it has met or surpassed much of the functionality of Job DSL. New plugins are being developed natively for Pipeline, and those that don't are being encouraged by Jenkins developers to integrate with Pipeline. And Pipeline has several advantages:
There is no need to "seed" jobs using Pipeline as there is with Job DSL since the Pipeline is the job itself. With Job DSL, it's just a script that creates other jobs.
With Pipeline, you have features such as a parameterized manual input step, allowing you specify logic midstream within the pipeline
The logic that can be included in a Job DSL is limited to creating the jobs themselves; whereas with Pipeline you can include logic directly inside the job.
Job DSL is simply much more difficult to create a basic delivery pipeline using, for example, the Build Pipeline Plugin; using Pipeline your file will be smaller and syntax shorter. And if you're using Job DSL to create Pipeline jobs, I haven't seen a major value for that anymore given the templating features available out-of-the-box with Jenkins Pipeline.