Soumettre la recherche
Mettre en ligne
Groovy in the Cloud
•
3 j'aime
•
1,729 vues
Daniel Woods
Suivre
Slides from my UberConf 2016 talk, "Groovy in the Cloud"
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 43
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
High Performance Microservices with Ratpack and Spring Boot
High Performance Microservices with Ratpack and Spring Boot
Daniel Woods
Ratpack Web Framework
Ratpack Web Framework
Daniel Woods
Ratpack - SpringOne2GX 2015
Ratpack - SpringOne2GX 2015
Daniel Woods
Intro to Ratpack (CDJDN 2015-01-22)
Intro to Ratpack (CDJDN 2015-01-22)
David Carr
Ratpack - Classy and Compact Groovy Web Apps
Ratpack - Classy and Compact Groovy Web Apps
James Williams
Managing dependencies with gradle
Managing dependencies with gradle
Liviu Tudor
An Introduction to Gradle for Java Developers
An Introduction to Gradle for Java Developers
Kostas Saidis
Spring IO '15 - Developing microservices, Spring Boot or Grails?
Spring IO '15 - Developing microservices, Spring Boot or Grails?
Fátima Casaú Pérez
Recommandé
High Performance Microservices with Ratpack and Spring Boot
High Performance Microservices with Ratpack and Spring Boot
Daniel Woods
Ratpack Web Framework
Ratpack Web Framework
Daniel Woods
Ratpack - SpringOne2GX 2015
Ratpack - SpringOne2GX 2015
Daniel Woods
Intro to Ratpack (CDJDN 2015-01-22)
Intro to Ratpack (CDJDN 2015-01-22)
David Carr
Ratpack - Classy and Compact Groovy Web Apps
Ratpack - Classy and Compact Groovy Web Apps
James Williams
Managing dependencies with gradle
Managing dependencies with gradle
Liviu Tudor
An Introduction to Gradle for Java Developers
An Introduction to Gradle for Java Developers
Kostas Saidis
Spring IO '15 - Developing microservices, Spring Boot or Grails?
Spring IO '15 - Developing microservices, Spring Boot or Grails?
Fátima Casaú Pérez
Future of Grails
Future of Grails
Daniel Woods
Gradle 3.0: Unleash the Daemon!
Gradle 3.0: Unleash the Daemon!
Eric Wendelin
Gradle
Gradle
Return on Intelligence
Building with Gradle
Building with Gradle
Kaunas Java User Group
Gradle
Gradle
Jadson Santos
Gradle presentation
Gradle presentation
Oriol Jiménez
Gradle - the Enterprise Automation Tool
Gradle - the Enterprise Automation Tool
Izzet Mustafaiev
Groovy for System Administrators
Groovy for System Administrators
Daniel Woods
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
ZeroTurnaround
Gradle - time for a new build
Gradle - time for a new build
Igor Khotin
Nebula: Netflix's OSS Gradle Plugins
Nebula: Netflix's OSS Gradle Plugins
Rob Spieldenner
Modern operations with Apache Sling (2014 adaptTo version)
Modern operations with Apache Sling (2014 adaptTo version)
Bertrand Delacretaz
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
César Hernández
Using React with Grails 3
Using React with Grails 3
Zachary Klein
Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3
Michael Plöd
Integration testing dropwizard
Integration testing dropwizard
Michal Rutkowski, Ph.D.
Gradle Introduction
Gradle Introduction
Dmitry Buzdin
Netflix Nebula - Gradle Summit 2014
Netflix Nebula - Gradle Summit 2014
Justin Ryan
What’s new in grails framework 5?
What’s new in grails framework 5?
Puneet Behl
Reactive Streams and the Wide World of Groovy
Reactive Streams and the Wide World of Groovy
Steve Pember
Why Groovy When Java 8 or Scala, or…
Why Groovy When Java 8 or Scala, or…
Russel Winder
Groovy 3 and the new Groovy Meta Object Protocol in examples
Groovy 3 and the new Groovy Meta Object Protocol in examples
GR8Conf
Contenu connexe
Tendances
Future of Grails
Future of Grails
Daniel Woods
Gradle 3.0: Unleash the Daemon!
Gradle 3.0: Unleash the Daemon!
Eric Wendelin
Gradle
Gradle
Return on Intelligence
Building with Gradle
Building with Gradle
Kaunas Java User Group
Gradle
Gradle
Jadson Santos
Gradle presentation
Gradle presentation
Oriol Jiménez
Gradle - the Enterprise Automation Tool
Gradle - the Enterprise Automation Tool
Izzet Mustafaiev
Groovy for System Administrators
Groovy for System Administrators
Daniel Woods
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
ZeroTurnaround
Gradle - time for a new build
Gradle - time for a new build
Igor Khotin
Nebula: Netflix's OSS Gradle Plugins
Nebula: Netflix's OSS Gradle Plugins
Rob Spieldenner
Modern operations with Apache Sling (2014 adaptTo version)
Modern operations with Apache Sling (2014 adaptTo version)
Bertrand Delacretaz
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
César Hernández
Using React with Grails 3
Using React with Grails 3
Zachary Klein
Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3
Michael Plöd
Integration testing dropwizard
Integration testing dropwizard
Michal Rutkowski, Ph.D.
Gradle Introduction
Gradle Introduction
Dmitry Buzdin
Netflix Nebula - Gradle Summit 2014
Netflix Nebula - Gradle Summit 2014
Justin Ryan
What’s new in grails framework 5?
What’s new in grails framework 5?
Puneet Behl
Tendances
(19)
Future of Grails
Future of Grails
Gradle 3.0: Unleash the Daemon!
Gradle 3.0: Unleash the Daemon!
Gradle
Gradle
Building with Gradle
Building with Gradle
Gradle
Gradle
Gradle presentation
Gradle presentation
Gradle - the Enterprise Automation Tool
Gradle - the Enterprise Automation Tool
Groovy for System Administrators
Groovy for System Administrators
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
Gradle - time for a new build
Gradle - time for a new build
Nebula: Netflix's OSS Gradle Plugins
Nebula: Netflix's OSS Gradle Plugins
Modern operations with Apache Sling (2014 adaptTo version)
Modern operations with Apache Sling (2014 adaptTo version)
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
Using React with Grails 3
Using React with Grails 3
Migrating from Grails 2 to Grails 3
Migrating from Grails 2 to Grails 3
Integration testing dropwizard
Integration testing dropwizard
Gradle Introduction
Gradle Introduction
Netflix Nebula - Gradle Summit 2014
Netflix Nebula - Gradle Summit 2014
What’s new in grails framework 5?
What’s new in grails framework 5?
En vedette
Reactive Streams and the Wide World of Groovy
Reactive Streams and the Wide World of Groovy
Steve Pember
Why Groovy When Java 8 or Scala, or…
Why Groovy When Java 8 or Scala, or…
Russel Winder
Groovy 3 and the new Groovy Meta Object Protocol in examples
Groovy 3 and the new Groovy Meta Object Protocol in examples
GR8Conf
Metaprogramming with Groovy
Metaprogramming with Groovy
GR8Conf
Groovy Powered Clean Code
Groovy Powered Clean Code
GR8Conf
Groovy on Android
Groovy on Android
Alexey Zhokhov
Metaprogramming with Groovy
Metaprogramming with Groovy
Ali Tanwir
Ci for-android-apps
Ci for-android-apps
Anthony Dahanne
Kotlin, smarter development for the jvm
Kotlin, smarter development for the jvm
Arnaud Giuliani
Spring one 2012 Groovy as a weapon of maas PaaSification
Spring one 2012 Groovy as a weapon of maas PaaSification
Nenad Bogojevic
We thought we were doing continuous delivery and then...
We thought we were doing continuous delivery and then...
Suzie Prince
Java collections the force awakens
Java collections the force awakens
RichardWarburton
Groovy for java developers
Groovy for java developers
Puneet Behl
Be More Productive with Kotlin
Be More Productive with Kotlin
Brandon Wever
Groovy on Android (as of 2016)
Groovy on Android (as of 2016)
Kevin H.A. Tan
Building an Extensible, Resumable DSL on Top of Apache Groovy
Building an Extensible, Resumable DSL on Top of Apache Groovy
jgcloudbees
Java 8 and 9 in Anger
Java 8 and 9 in Anger
Trisha Gee
Apache Groovy: the language and the ecosystem
Apache Groovy: the language and the ecosystem
Kostas Saidis
Kotlin for Android - Vali Iorgu - mRready
Kotlin for Android - Vali Iorgu - mRready
MobileAcademy
Groovyscriptingformanualandautomationtestingusingrobotframework 141221014703-...
Groovyscriptingformanualandautomationtestingusingrobotframework 141221014703-...
Bhaskara Reddy Sannapureddy
En vedette
(20)
Reactive Streams and the Wide World of Groovy
Reactive Streams and the Wide World of Groovy
Why Groovy When Java 8 or Scala, or…
Why Groovy When Java 8 or Scala, or…
Groovy 3 and the new Groovy Meta Object Protocol in examples
Groovy 3 and the new Groovy Meta Object Protocol in examples
Metaprogramming with Groovy
Metaprogramming with Groovy
Groovy Powered Clean Code
Groovy Powered Clean Code
Groovy on Android
Groovy on Android
Metaprogramming with Groovy
Metaprogramming with Groovy
Ci for-android-apps
Ci for-android-apps
Kotlin, smarter development for the jvm
Kotlin, smarter development for the jvm
Spring one 2012 Groovy as a weapon of maas PaaSification
Spring one 2012 Groovy as a weapon of maas PaaSification
We thought we were doing continuous delivery and then...
We thought we were doing continuous delivery and then...
Java collections the force awakens
Java collections the force awakens
Groovy for java developers
Groovy for java developers
Be More Productive with Kotlin
Be More Productive with Kotlin
Groovy on Android (as of 2016)
Groovy on Android (as of 2016)
Building an Extensible, Resumable DSL on Top of Apache Groovy
Building an Extensible, Resumable DSL on Top of Apache Groovy
Java 8 and 9 in Anger
Java 8 and 9 in Anger
Apache Groovy: the language and the ecosystem
Apache Groovy: the language and the ecosystem
Kotlin for Android - Vali Iorgu - mRready
Kotlin for Android - Vali Iorgu - mRready
Groovyscriptingformanualandautomationtestingusingrobotframework 141221014703-...
Groovyscriptingformanualandautomationtestingusingrobotframework 141221014703-...
Similaire à Groovy in the Cloud
Docker as development environment
Docker as development environment
Bruno de Lima e Silva
ContainerDayVietnam2016: Django Development with Docker
ContainerDayVietnam2016: Django Development with Docker
Docker-Hanoi
Docker primer and tips
Docker primer and tips
Samuel Chow
Vagrant + Docker provider [+Puppet]
Vagrant + Docker provider [+Puppet]
Nicolas Poggi
Разработка cloud-native Java-приложений для Kubernetes, Егор Волков,Senior Ja...
Разработка cloud-native Java-приложений для Kubernetes, Егор Волков,Senior Ja...
DataArt
DevOps Workflow: A Tutorial on Linux Containers
DevOps Workflow: A Tutorial on Linux Containers
inside-BigData.com
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
Docker, Inc.
Docker in everyday development
Docker in everyday development
Justyna Ilczuk
Streamline your development environment with docker
Streamline your development environment with docker
Giacomo Bagnoli
Docker Basics & Alfresco Content Services
Docker Basics & Alfresco Content Services
Sujay Pillai
DevAssistant, Docker and You
DevAssistant, Docker and You
BalaBit
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
Puppet
Docker Essentials Workshop— Innovation Labs July 2020
Docker Essentials Workshop— Innovation Labs July 2020
CloudHero
CNCF Québec Meetup du 16 Novembre 2023
CNCF Québec Meetup du 16 Novembre 2023
Anthony Dahanne
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol Consulting & Solutions Software GmbH
Serverless Container with Source2Image
Serverless Container with Source2Image
QAware GmbH
Serverless containers … with source-to-image
Serverless containers … with source-to-image
Josef Adersberger
Moderne Android Builds mit Gradle
Moderne Android Builds mit Gradle
inovex GmbH
DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline
Docker, Inc.
Docker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, Bonn
Daniel Nüst
Similaire à Groovy in the Cloud
(20)
Docker as development environment
Docker as development environment
ContainerDayVietnam2016: Django Development with Docker
ContainerDayVietnam2016: Django Development with Docker
Docker primer and tips
Docker primer and tips
Vagrant + Docker provider [+Puppet]
Vagrant + Docker provider [+Puppet]
Разработка cloud-native Java-приложений для Kubernetes, Егор Волков,Senior Ja...
Разработка cloud-native Java-приложений для Kubernetes, Егор Волков,Senior Ja...
DevOps Workflow: A Tutorial on Linux Containers
DevOps Workflow: A Tutorial on Linux Containers
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
Docker in everyday development
Docker in everyday development
Streamline your development environment with docker
Streamline your development environment with docker
Docker Basics & Alfresco Content Services
Docker Basics & Alfresco Content Services
DevAssistant, Docker and You
DevAssistant, Docker and You
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
Docker Essentials Workshop— Innovation Labs July 2020
Docker Essentials Workshop— Innovation Labs July 2020
CNCF Québec Meetup du 16 Novembre 2023
CNCF Québec Meetup du 16 Novembre 2023
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
Serverless Container with Source2Image
Serverless Container with Source2Image
Serverless containers … with source-to-image
Serverless containers … with source-to-image
Moderne Android Builds mit Gradle
Moderne Android Builds mit Gradle
DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline
Docker @ FOSS4G 2016, Bonn
Docker @ FOSS4G 2016, Bonn
Plus de Daniel Woods
Continuous Delivery with Spinnaker and OpenStack
Continuous Delivery with Spinnaker and OpenStack
Daniel Woods
Ratpack Web Framework
Ratpack Web Framework
Daniel Woods
Microservices: The Right Way
Microservices: The Right Way
Daniel Woods
Facilitating Continuous Delivery at Scale
Facilitating Continuous Delivery at Scale
Daniel Woods
Continuous Delivery with NetflixOSS
Continuous Delivery with NetflixOSS
Daniel Woods
Server-Side JavaScript with Nashorn
Server-Side JavaScript with Nashorn
Daniel Woods
Message Driven Architecture in Grails
Message Driven Architecture in Grails
Daniel Woods
Building Web Apps in Ratpack
Building Web Apps in Ratpack
Daniel Woods
Gainesville Web Developer Group, Sept 2012
Gainesville Web Developer Group, Sept 2012
Daniel Woods
Plus de Daniel Woods
(9)
Continuous Delivery with Spinnaker and OpenStack
Continuous Delivery with Spinnaker and OpenStack
Ratpack Web Framework
Ratpack Web Framework
Microservices: The Right Way
Microservices: The Right Way
Facilitating Continuous Delivery at Scale
Facilitating Continuous Delivery at Scale
Continuous Delivery with NetflixOSS
Continuous Delivery with NetflixOSS
Server-Side JavaScript with Nashorn
Server-Side JavaScript with Nashorn
Message Driven Architecture in Grails
Message Driven Architecture in Grails
Building Web Apps in Ratpack
Building Web Apps in Ratpack
Gainesville Web Developer Group, Sept 2012
Gainesville Web Developer Group, Sept 2012
Dernier
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Fwdays
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Addepto
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
Nicole Novielli
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
Lars Bell
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
blackmambaettijean
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
BookNet Canada
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
Lorenzo Miniero
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Zilliz
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
LoriGlavin3
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
LoriGlavin3
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
LoriGlavin3
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
LoriGlavin3
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Sergiu Bodiu
Dernier
(20)
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Groovy in the Cloud
1.
Groovy in the
Cloud Dan Woods @danveloper Code: h(ps://github.com/danveloper/groovy-in-the-cloud
2.
Senior So(ware Engineer Working on
Cloud & DevOps Tooling
3.
Wrote some of
this while at Ne0lix h"ps://spinnaker.io
4.
O'Reilly Author, 2016 Learning Ratpack
5.
Support your community. All
royal(es for Learning Ratpack go directly to Gr8Ladies h"p://gr8ladies.org
6.
How does Groovy
fit in the cloud?
7.
Groovy is present
at every layer of your project's lifecycle.
8.
Microservices: Groovy community has
a lot to offer.
9.
Build and packaging:
Gradle is the best, most flexible build tool.
10.
Automa'ng and ensuring
builds: Groovy + Jenkins = !.
11.
Managing cloud infrastructure: Spinnaker
12.
Automa'ng server tasks:
Groovy scripts + sshoogr!
13.
At the end
of the day, Groovy is Java, so anything Java can do, Groovy can do -- and simpler!
14.
Groovy can act
in mu.ple roles: as a powerful, dynamic scrip.ng tool or as a fully compiled programming language.
15.
Groovy can also
be sta/cally compiled!
16.
Agenda • Groovy microservices
with Ratpack • Immutable infrastructure • Gradle OS Package Plugin • Gradle + Docker • sshoogr • Jenkins Job DSL • Spinnaker
17.
Microservices with Groovy
and Ratpack @Grab('io.ratpack:ratpack-groovy:1.4.0-rc-1') import static ratpack.groovy.Groovy.ratpack import static ratpack.jackson.Jackson.json ratpack { handlers { get { render(json([message: "Hello World!"])) } } }
18.
Immutable Infrastructure The process
by which a new server image is created for every new version of your code.
19.
20.
Gradle OS Package
Plugin buildscript { repositories { jcenter() maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath 'io.ratpack:ratpack-gradle:1.4.0-rc-1' classpath 'gradle.plugin.com.netflix.nebula:gradle-ospackage-plugin:3.6.1' } } apply plugin: 'io.ratpack.ratpack-groovy' apply plugin: 'nebula.ospackage' version = "1.0.0" repositories { jcenter() } ospackage { // ... } buildDeb { // ... }
21.
Gradle OS Package
Plugin ospackage { packageName = "myapp" release '3' into "/opt/myapp" from "${project.buildDir}/install/${project.applicationName}" from("osfiles") { into "/" } } buildDeb { dependsOn installDist //requires("nginx") //requires("mysql-client") preInstall file("scripts/preInstall.sh") postInstall file("scripts/postInstall.sh") }
22.
Gradle Docker Plugin buildscript
{ repositories { jcenter() } dependencies { classpath 'io.ratpack:ratpack-gradle:1.4.0-rc-1' classpath 'com.bmuschko:gradle-docker-plugin:3.0.1' } } apply plugin: 'io.ratpack.ratpack-groovy' apply plugin: 'com.bmuschko.docker-remote-api' apply plugin: 'com.bmuschko.docker-java-application' version = "1.0.0" repositories { jcenter() } docker { javaApplication { maintainer = 'Dan Woods "daniel.p.woods@gmail.com"' } }
23.
Gradle Docker Plugin
- Build Image $ ./gradlew dockerBuildImage :compileJava UP-TO-DATE :compileGroovy UP-TO-DATE :processResources UP-TO-DATE :classes UP-TO-DATE :jar UP-TO-DATE :startScripts UP-TO-DATE :distTar UP-TO-DATE :dockerCopyDistResources UP-TO-DATE :dockerDistTar :dockerBuildImage Building image using context '/Users/danw/Documents/uberconf-2016/groovy-cloud-code/docker-plugin/build/docker'. Using tag 'docker-plugin:1.0.0' for image. Step 1 : FROM java ---> 264282a59a95 Step 2 : MAINTAINER Dan Woods "daniel.p.woods@gmail.com" ---> Using cache ---> 46c65408f762 Step 3 : ADD docker-plugin-1.0.0.tar / ---> Using cache ---> 41dc34567fae Step 4 : ENTRYPOINT /docker-plugin-1.0.0/bin/docker-plugin ---> Using cache ---> fad9ba971b19 Step 5 : EXPOSE 5050 ---> Running in 0bd76fcb5e15 ---> 43b2d30640e2 Removing intermediate container 0bd76fcb5e15 Successfully built 43b2d30640e2 Created image with ID '43b2d30640e2'. BUILD SUCCESSFUL Total time: 10.974 secs
24.
Serverless Compu-ng No persistent
server, quick func2ons that do one single thing very well
25.
Serverless is a
great choice for super lightweight microservices that ingest some data, process it, and respond quickly.
26.
AWS Lambda h"ps://aws.amazon.com/lambda/
27.
Groovy Lambda Demo
28.
sshoogr @Grab('com.aestasit.infrastructure.sshoogr:sshoogr:0.9.25') import com.aestasit.infrastructure.ssh.dsl.* import com.aestasit.infrastructure.ssh.* def
engine = new SshDslEngine(new SshOptions(defaultKeyFile: new File("/Users/danw/Downloads/uberconf.pem"), trustUnknownHosts: true)) engine.remoteSession('ubuntu@xxx:22') { exec 'rm -rf /tmp/key*' remoteFile('/tmp/key.foo').text = "mySecretKey=123456" }
29.
sshoogr Demo
30.
Jenkins Job DSL h"ps://github.com/jenkinsci/job-dsl-plugin
31.
Provides a means
to describe your Jenkins Jobs
32.
Allows your build
configura2ons to be under source control
33.
Ensures that if
your Jenkins CI system crashes, you can quickly and safely recover
34.
Wri$en in Groovy,
so you can do any programma5c processing you want when configuring your builds!
35.
Jenkins Job DSL def
gitUrl = 'git://github.com/myorg/myapp.git' def allowedUsers = ['dan', 'ben', 'ernest'] job('PROJ-build') { scm { git(gitUrl) } // no trigger authorization { allowedUsers.each { user -> permission('hudson.model.Item.Build', user) } } steps { shell('gradlew clean build') } }
36.
Spinnaker
37.
Con$nuous delivery/deployment pla4orm from
Ne4lix
38.
Wri$en in Groovy
with Spring Boot
39.
Highly extensible pla0orm
for managing your cloud footprint
40.
41.
42.
Easy to build
plugins and adjust na1ve func1onality by incorpora1ng Groovy modules
43.
Ques%ons?
Télécharger maintenant