Tools Can Help Your Team How Red Hat Developer · 2019-05-20 · Brad Micklea is the Senior...
Transcript of Tools Can Help Your Team How Red Hat Developer · 2019-05-20 · Brad Micklea is the Senior...
How Red Hat Developer Tools Can Help Your Team
Brad MickleaDivision LeadDeveloper Tools, Program and Evangelism Division
1
Brad Micklea is the Senior Director of Developer Tools, Program and Evangelism at Red Hat. He joined Red Hat when Codenvy, the company he co-ran, was acquired in 2017. Brad has spent over 15 years in product leadership roles for tools that help developers and administrators. He has spoken at numerous industry events including JavaOne, Devoxx and Red Hat Summit.
2
About the Speaker
3
58%of developers said they are
the primary decision makers in technology decisions.
Source: Cloud Development Survey 2017 - Evans Data Corp
4
“Application development teams are making container technology decisions.”
Gartner, Dec 2018:“Comparing Approaches for Container Orchestration Across Hybrid and Multicloud Environments”
5
Source: The State of Enterprise Open Source: A Red Hat Report, Conducted by Red Hat via Illuminas, 2018
59% of IT leaders plan to increase their use of enterprise open source in the next year, while only 2% predict a decrease.
6
APPLICATION DEVELOPMENT
APPLICATION INTEGRATION
INFRASTRUCTURE MIGRATION
Top Three Ways Global EnterprisesUse Open Source
Source: The State of Enterprise Open Source: A Red Hat Report, Conducted by Red Hat via Illuminas, 2018
The Red Hat Developer Group is responsible for community evangelism to developers, the Red Hat Developer Program and a
portfolio of developer tools supporting our products.
7
Developer Tools Developer Program Developer Evangelism
As a Red Hat Customer You Can Benefit from the Red Hat Developer Program and Tools Every Day.
8
LEVERAGE INTUITIVE DEVELOPER TOOLS FOR YOUR KEY PLATFORMS
RELY ON RED HAT SUPPORT FROM DEVELOPMENT
THROUGH PRODUCTION
LEARN FROM RED HAT’S EXPERIENCE TO INFORM YOUR OWN DECISIONS
9
Goal: Help developers find Red Hat’s developer tools so they can get the most out of our platforms and products.
CodeReady Workspaces (supported Eclipse Che)CodeReady Containers (local laptop install of OpenShift 4)CodeReady Studio (ex-DevStudio)CodeReady Builder (tools for building on RHEL)CodeReady Toolchain (a hybrid cloud devops toolchain)
Red Hat CodeReadyA Red Hat Sub-Brand for Developers
CONFIDENTIAL Designator
The Red Hat Developer Tools Portfolio Overview
10
11
There Are More Red Hat Developer Tools Than You Realize!
MSFT: AZURE DEVOPS / TEAM FOUNDATION SVR- Build and Deploy to OpenShift
MSFT: VS CODE- Java, JS/Node, Typescript, Camel, Vert.x, XML- OpenShift
ECLIPSE: DESKTOP IDE- OpenShift Deploy, JBoss EAP, Wildfly- Java, Arquillian, Hibernate, JAX-RS
JETBRAINS: ALL IDEs (IntelliJ, Webstorm, etc…)- OpenShift Deploy
USE RED HAT PRODUCTS IN POPULAR DEVELOPMENT TOOLS
FOR CONTAINER-BASED DEVELOPMENT- CodeReady Workspaces (supported Eclipse Che)- Container Development Kit (for OCP 3)- odo: Developer CLI for OpenShift- CodeReady Containers (for OCP 4)- OpenShift Developer Console (for OCP 4)
FOR BARE METAL OR CONTAINER DEVELOPMENT- Compilers packaged with RHEL- Performance tools for RHEL- CodeReady Builder for application dev on RHEL
SIMPLIFY DEVELOPMENT OF APPLICATIONS USING OUR PLATFORMS
CONFIDENTIAL Designator
Red Hat Developer Tools In Detail
12
13
Source: The State of Enterprise Open Source: A Red Hat Report, Conducted by Red Hat via Illuminas, 2018
In the next year IT leaders plan to increase their use of containers by 67%.
67%
14
Container Workspaces
Workspace replicas to end “works on my machine” and enable team collaboration.
A collaborative Kubernetes-native development platform that runs in OpenShift on-premises or in the cloud.
Code anywhere with centrally-hosted workspaces Plugin model for extensibility
Based on the open source Eclipse Che project
Serverless support(coming later)
DevOps Integrations
Reference developer workspaces from any issue, failed build, or git notification.
Protect Source Code
Full access to source code without any of it landing on hard-to-secure laptops.
Latest Version: 1.1Based on Che 6.19
Use It To: Simplify container-based development and increase DevOps efficiency.
Red Hat CodeReady Workspaces
15
● Browser-based web IDE and dev environment in Kube pods
● Red Hat supported Eclipse Che
● Bundled with OCP/OSD SKU
● Available on OCP and OSD
● Enabled via an operator
● Stacks based on Red Hat Linux and Middleware
Serving
https://www.youtube.com/watch?v=VwKEVeDy9TA
Red Hat CodeReady Workspaces
16
Serving
-Cucumber-JUnit-Mockito
-SonarQube-Fortify
-AtomicScan-Blackduck-Twistlock
Trusted code repos
-Sysdig-Dynatrace
-Jira-Trello
CI SYSTEM
ISSUES DEV ENV
UNITTEST
CODEQUAL
SEC SCAN
INTTEST UAT
PROD
Trusted artifact and image repos
OPENSHIFT KUBERNETES PLATFORM
-Arquillian-JUnit
LAPTOP
TODAY
Developing On Red Hat Openshift
17
THE BETTER WAY
-Cucumber-JUnit-Mockito
-SonarQube-Fortify
-AtomicScan-Blackduck-Twistlock
Trusted code repos
-Sysdig-Dynatrace
-Jira-Trello
CI SYSTEM
ISSUES DEV ENV
UNITTEST
CODEQUAL
SEC SCAN
INTTEST UAT
PROD
Trusted artifact and image repos
OPENSHIFT KUBERNETES PLATFORM
-Arquillian-JUnit
CODEREADY WORKSPACES
Developing On Red Hat Openshift
18
Developing On Red Hat Openshift
THE BETTER WAY
-Cucumber-JUnit-Mockito
-SonarQube-Fortify
-AtomicScan-Blackduck-Twistlock
Trusted code repos
-Sysdig-Dynatrace
-Jira-Trello
CI SYSTEM
ISSUES DEV ENV
UNITTEST
CODEQUAL
SEC SCAN
INTTEST UAT
PROD
Trusted artifact and image repos
OPENSHIFT KUBERNETES PLATFORM
-Arquillian-JUnit
CODEREADY WORKSPACES
CodeReady Workspace Factories can be integrated with every aspect of the toolchain.
19
Use It To: Experiment with Eclipse Che, the Kubernetes-native IDE.
Hosted Eclipse Che OnOpenshift Online
A free SaaS that makes evaluating container development on OpenShift Kubernetes painless.
Great for small teams or as a place to start work, then easily transition projects to CodeReady Workspaces on-premises or private cloud.
Latest Version: 6.19
20
Use It To: Install OpenShift locally on a laptop.
OpenShift On The Laptop
Provides a pre-built development environment based on Red Hat Enterprise Linux and OpenShift for quick container-based application development. Use with OpenShift on-premises or cloud.
Available for:- Linux (no VM)- Windows (Virtualbox)- MacOS (Virtualbox)
OpenShift 3.x: Container Development Kit (CDK)Released in 2016 for OpenShift 3
- Linux, Windows and Mac (with VMs)- Simplified RHEL entitlement
OpenShift 4.x: CodeReady ContainersLinux Developer Preview, May 2019
- Linux, Windows and Mac (with VMs)- Toolbar widget for quick access- Simplified RHEL entitlement
Latest CDK: 3.8
CodeReady Containers not GA
21
Use It To: Enable the ‘git push’ flow developers love, but with Kubernetes.
OpenShift’s Dev-Focused CLI: “odo”Currently Beta
$ odo create wildfly backend Component ‘backend’ was created. $ odo push Pushing changes to component: backend
$ odo create php frontend Component ‘frontend’ was created. To push source code to the component run ‘odo push’
$ odo push Pushing changes to component: frontend
$ odo url create frontend - http://frontend-myapp.192.168.99.100.nip.io
$ odo watch Waiting for something to change in /dev/frontend
A developer-focused command-line tool for rapid development iterations on OpenShift.
Simplifies building of microservices applications on OpenShift.
Targeting GA release with OpenShift 4.2.
22
Use It To: Build applications using Jenkins in OpenShift.
Jenkins CI/CD in OpenShift
Jenkins is still the most used CI/CD platform in enterprises and can be used from inside OpenShift.
An intuitive pipeline visualization makes it simple for users to see how builds are progressing.
The full Jenkins UI is also available.
GA since OpenShift 3
23
Use It To: Create a Kubernetes-native CI/CD pipeline in OpenShift.
OpenShift Pipelines CI/CD PlatformProvides a next-gen Kubernetes CI/CD pipeline that works for containers (including serverless).
Based on the Tekton project (which was spun out of the Knative Pipelines project) started by Google, Red Hat and others.
Target Dev Preview (pre-beta) in June, 2019.
In DevelopmentPre-Alpha
24
Use It To: Share an application- and code-centric UI with your development teams.
OpenShift Developer Console
Provide developers with an application-centric UI that enables them to quickly import code, create containers, link services and build their projects.
Will leverage OpenShift Pipelines for the CI/CD, and use Istio and Kiali project to provide a graphical view of container interactions for an application.
In DevelopmentPre-Alpha
25
Use It To: Deploy to OpenShift as part of a Microsoft enterprise development toolchain flow.
OpenShift Plugin for Microsoft Azure Devops and Team Foundation Server
This plugin offers tasks for integrating OpenShift into your build and release pipelines whether you’re using Azure DevOps (cloud) or Team Foundation Server (on-premises).
Developers can deploy to any OpenShift:- On-premises- In the cloud- Hosted by Red Hat- On the Azure Red Hat OpenShift service- etc...
Latest Version: 1.3
26
Use It To: Get the most out of Red Hat’s products in the VS Code IDE.
Red Hat Plugins for Microsoft VS Code
Red Hat plugins for VSCode add IDE superpowers for Java, Kubernetes YAML and XML.
The OpenShift plugin allows developers to quickly connect and deploy to OpenShift instances locally or remotely.
Dependency Analytics adds license and CVE package alerts.
GA since Q3 2016
27
Use It To: Help developers find critical issues before they hit production.
Source Code Dependency Analytics
The dependency analytics service provides security and license warnings for any dependency in a project. This helps developers to fix problems earlier in the cycle.
- Find CVEs in any package- Discover license mismatches- Supported for Java and Node
Latest Version: 0.12
Red Hat is the world’s leading provider of
enterprise open source software solutions.
Award-winning support, training, and consulting
services make Red Hat a trusted adviser to the
Fortune 500.
Thank you
28
Corporate: linkedin.com/company/red-hatDeveloper: linkedin.com/showcase/red-hat-developer/
Corporate: youtube.com/user/RedHatVideosDeveloper: youtube.com/channel/UC7noUdfWp-ukXUlAsJnSm-Q
Corporate: @RedHatDeveloper: @rhdevelopers
CONFIDENTIAL Designator
Appendix:Inner and Outer Loop Development
29
30
Inner And Outer Loop Development Defined
Inner Loop
Outer Loop
Import / Create Code
Learn More about the loops
31
Red Hat’s Inner Loop ToolsDevelopers are happiest interacting with their “core” tools:
- Desktop IDEs- Browser / Cloud IDEs- Embedded git workflows- Command line tools and terminal
Our Goals:1. Make Red Hat products easy to code with regardless of the tool
2. Present an opinion on what works best3. Remain flexible to the needs of our different users
32
Red Hat’s Outer Loop ToolsDevOps is about aligning responsibility for developers and admins to the success of the application throughout its lifecycle.
Our Goals:1. Provide the key pieces for a full development toolchain deployable
on-premises or in the cloud on OpenShift2. Allow flexibility in how they’re consumed but opinion on the best way3. Surface all the interactions in the “core” OpenShift UI