34
Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me 35 yrs. database industry 31 yrs. consulting in Oracle arena Since Oracle 5.1C, SQL*Forms 2.3 39 yrs. as trainer/presenter User groups 360+ presentations, 12 awards 8+ yrs. total on boards of directors IOUG(-A), NYOUG, UTOUG Oracle ACE Director Since program inception in Aug. 2005 Oracle Certified Master Since program inception in Dec. 2001 8 Oracle Press books coauthored 6262 pages total Designer Handbook, Second Edition Designer Handbook, Second Edition Developer Advanced Forms & Reports Developer Advanced Forms & Reports JDeveloper 3 Handbook JDeveloper 3 Handbook ORACLE JDeveloper 10g Handbook Designer/2000 Handbook Designer/2000 Handbook ORACLE9i JDeveloper Handbook

Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

Support Your DevOps Process With a

Free Oracle Cloud Tool

Peter KoletzkeTechnical Director & Principal Instructor

Me• 35 yrs. database industry

• 31 yrs. consulting in Oracle arena– Since Oracle 5.1C, SQL*Forms 2.3

• 39 yrs. as trainer/presenter

• User groups– 360+ presentations, 12 awards

– 8+ yrs. total on boards of directors • IOUG(-A), NYOUG, UTOUG

• Oracle ACE Director – Since program inception in Aug. 2005

• Oracle Certified Master – Since program inception in Dec. 2001

• 8 Oracle Press books coauthored – 6262 pages total

DesignerHandbook,

Second Edition

DesignerHandbook,

Second Edition

DeveloperAdvancedForms &Reports

DeveloperAdvancedForms &Reports

JDeveloper 3Handbook

JDeveloper 3Handbook

ORACLEJDeveloper 10gHandbook

Designer/2000Handbook

Designer/2000Handbook

ORACLE9iJDeveloperHandbook

Page 2: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

3

You• Job function

– DBA, developer, both, other

• Languages– JavaScript, Java, APEX, other PL/SQL

• Agile

• Using DevOps

• Using cloud?– Oracle PaaS

– Oracle IaaS

– Other vendor’s cloud

4

Both Sides Now

I've looked at clouds from both sides now

From up and down and still somehowIt's cloud illusions I recall.

I really don't know clouds at all—Joni Mitchell

Page 3: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

5

Reason for This Session

• Confluence of two events1. Experience reinstallation of CVS (version control

software) at client site• Procurement, installation, configuration, local developer installs

and documentation, repository migration, support cases

2. Oracle Developer Cloud Service Hands-on Lab• At Oracle OpenWorld 2016

• Example of agile development of a Java application

6

Agenda

• Intro to DevOps, Agile, and DevCS

• Team Development in DevCS

• Review and Resources

Slides are available in the conference app.

Page 4: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

7

Winner of 2017 Preakness Stakes

Cloud Computing13 to 1 odds

Photo: Adam Coglianese/NYRA

8

Promises of Cloud Computing• Scalability

– As your needs grow, you just increase service level• Classic example: website traffic from Super Bowl ads

• No extra resources needed on your side

• Reduction or elimination of onsite (“on prem”) infrastructure – Can you say “time-share” and “mainframe?”

• Someone else worries about compatibility, backup and recovery, upgrades

• Client access is “easy” and ubiquitous

Page 5: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

9

Cloud Computing Concerns

• Security– Data– Accounts– Systems

• Loss of control, reliability of the internet and the vendor– Downtime

• Complexity, learning curve• Cost• Why change?

– The “earth-based” solution works fine.

10

On the Other Hand…

• Supporting the development life cycle can be challenging; example: CVS reinstall

• Many products to purchase/acquire, install, configure, train on

• Project tracking, file and information sharing (wikis)• Source code control system

– Software configuration management (SCM), file versioning

• Code review system• Testing system• Issue reporting system• Continuous integration (CI) – for example, nightly builds• Deployment tools

Page 6: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

11

Cloud Computing Can Help• Oracle’s offering: Oracle Developer Cloud Service

– Free with any cloud account, including free trials

– Integrated DevOps environment that supports agiledevelopment methodology

– Supports “more than half of DevOps”

• But why use DevOps?

12

First: About Agile…an approach to software development under which requirements and solutions

evolve through the collaborative effort of self-organizing cross-functional teams and their customer(s)/end users(s). It advocates adaptive planning,

evolutionary development, early delivery, and continuous improvement, and it encourages rapid and flexible response to change. (1)

(1) https://en.wikipedia.org/wiki/Agile_software_development

• Manifesto for Agile Software Development (2001)• Tasks collected into “sprints”

– A release with short development cycle like 2 weeks– Progress of sprints is tracked in “scrum boards”

• Very popular now• Agile approach led to need for DevOps

http://agilemanifesto.org/

Page 7: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

Dilbert Definition

14

About DevOps• One definition:

• Merge of Software Development with Operations – Dev = development (analysis, design,

develop, test)– Ops = operations (deploy, monitor)

• Objective: faster delivery of application software solutions – Example: supporting agile sprints

• Phases (from Wikipedia)

DevOps is the practice of operations and development engineers participating together in the entire service

lifecycle, from design through the development process to production support. (2)

(2) https://theagileadmin.com/what-is-devops/

Page 8: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

15

More About DevOps

• Uses multiple tools– Development: code reviews, version control, bug tracking

– Continuous integration: frequent builds from version control• Grady Booch (UML “Gang of Three”) concept from 1991

• Popular products: Hudson (now Oracle’s), Jenkins (open source)– Hudson executes Maven, Ant, shell script, or Windows batch projects

– Continuous testing: automated tests

– Deployment: also automated

16

About Oracle Developer Cloud Service• A.k.a., “DevCS”

• A DevOps tool (“more than half of DevOps”)– Manage agile sprints

– Continuous anything: integration, test, build

• Supports multiple code disciplines– Java, JavaScript, PL/SQL (APEX, SQL)

– Others

• Can assist with project activities– Your choice – all or some

– Email notifications assist the work flow

Page 9: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

17

DevCS Assists With These Activities• Plan and manage

– Issue tracking, team management, agile dashboard

• Code– Version management, code review, track changes

• Build and deliver– Continuous integration, orchestration, deployment

automation, Docker deployment

• Team collaboration– Activity stream, wiki, web dashboard

Not “free”

18

Getting Started• https://cloud.oracle.com/developer_service

• Obtain trial account– Click

“Try for Free”

– 300 USD credits or 30 days (whichever comes first)

Page 10: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

19

Next• Welcome email with “Get Started” link

– Accesses your “Cloud My Services” site

• A “Core Technology Strategist” may call to find out if you need support

• You can work with most IaaS and PaaS services– Be careful to log out using the Sign Out page

• Conserve those trial credits

• Click “Ok” on the confirmation page

20

The “Free” Part• After 30 days or 300 USD credits have been used

– Notification of expiration– You will lose access if you don’t convert to paid

• So…– Convert to Paid

• DevCS is still free– It is a “foundation service” for Oracle Cloud– 20 Gb storage, git, issue tracking, team development

support, wiki– Build and deploy require for-cost compute and storage

instances

Page 11: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

21

Important!• Be sure to convert to Upgrade to Paid after 30-day trial

OR else:

test12ghMtest12ghMWXYUGNoWXYUGNoWXYUgWXYUgbcdehkbcdehk February 14, 2019February 14, 2019

test12ghMWXYUGNoWXYUgbcdehk February 14, 2019

22

Starting Up DevCS• From the Dashboard - Create Instance

– Select “Developer”

– Follow the screens

• An email will notifywhen the instanceis ready

Page 12: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

23

Starting Up DevCS• Follow the link in the email (Services…Developer)

• Select“AccessServiceInstance”from the instancemenu

24

DevCS Console

Page 13: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

Project PageMenu

Activities / News

Search

Repositories

See Appendix A for screenshots of

tools’ pages.

26

Agenda

• Intro to DevOps, Agile, and DevCS

• Team Development in DevCS

• Review and Resources

Page 14: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

27

Sample Uses

• JavaScript – JET, MAX

• Java– ADF applications

– JSP, etc.

• SQL and PL/SQL code– Database objects

– APEX

28

Development IDE Plugins• DevCS “Team” and code repository support

– Eclipse • Oracle Cloud Tools plugin (OEPE includes this)

– NetBeans • DevCS plugin

• JavaScript, Java, HTML5, PHP, C/C++

– JDeveloper (12.2.1 contains the plugin)

• DevCS code repository support– SQL Developer

– Any tool with Git connectivitySee Appendix B for some screenshots of JDeveloper’s DevCS team support.

Page 15: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

29

DevCS Workflow Example - Setup

Harry

Sally

JDev

DevCS

JDev

DevCS

Create application

Create project

Add tasks issues, features

Monitor progress

Create project repository

Commit to local Git

Push to DevCS Git

30

DevCS Workflow Example – Part 1

Harry

Sally

JDev

DevCS

JDev

DevCS

Set up agile sprint Assign issues

Get code from Git repository

View issues

Create branch

Complete tasks

Finish coding

Mark tasks as completed

Wait for notification

Unit test code changes

Commit to local Git

Push to DevCS Git

Create merge request

Set up Team Server

Page 16: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

31

DevCS Workflow Example – Part 2

Harry

Sally

JDev

DevCS

JDev

DevCS

Reject merge request

Fix code Test, commit, push

Approve merge request

Merge and delete branch Build

Demo

32

Demo Summary• Cloud code repository

– Clone into local Git, work within IDE, commit, push

• Cloud Agile sprint– Load tasks into sprint

– Assign tasks to developers

– Merge requests

• Team support in IDE– Team Server setup

– Task management

– Dashboard

Page 17: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

33

… And Without the Plugin?• Still can run Git functions in your IDE

– Use DevCS Git repository as target/source

– Clone, add, commit, branch, check out, push

• Perform project functions in the web console– Dashboard

– Tasks and issues

– Builds

34

Agenda

• Intro to DevOps, Agile, and DevCS

• Team Development in DevCS

• Review and Resources

Page 18: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

35

Review• DevCS = Solid features

– “Free” – just get a cloud account

– No software installation!• Nearly instantaneous environment setup

– Feature-rich, “limitless” variety in development flows• Team-oriented – high degree of project sharing

– Flexible – different types of code• Java, JavaScript, SQL and PL/SQL, others

– Plugins for multiple IDEs • Eclipse, NetBeans, JDeveloper, SQL Developer

36

DevOps and DevCS• Handles much of DevOps process

– Security for development code • Team member management and project assignments

• Project planning, metrics for progress tracking

– Code versioning, revision control (Git)

– Continuous integration (Maven)

– Build integration (Hudson)

– Continuous deployment to public cloud • Java CS, App Container CS, Docker

Page 19: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

37

DevOps Resources – non-Oracle• Best practices

– https://techbeacon.com/dos-donts-9-effective-best-practices-devops-cloud

• Intro to DevOps– https://aws.amazon.com/devops/what-is-devops/

• DevOps and cloud– https://techbeacon.com/devops-dictates-new-approach-cloud-

development

• Agile– http://www.101ways.com/what-is-agile-10-key-

principles/

38

DevCS Resources - Oracle• Home

– https://cloud.oracle.com/developer_service

– Sign up for a trial account

– “Learn More” tab: tutorials, demos, FAQs, white papers

• Get Started– http://docs.oracle.com/cloud/latest/devcs_common

• Docs– https://docs.oracle.com/en/cloud/paas/developer-cloud/csdcs/

• More Tutorials– http://docs.oracle.com/en/cloud/paas/developer-cloud/tutorials.html

Page 20: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

39

More DevCS Resources• Shay Shmeltzer’s blog – info and demos

– Director of Product Management for Oracle's Cloud Development Tools

– https://blogs.oracle.com/shay

• Dale Singleterry YouTube video– https://www.youtube.com/watch?v=XaB6TGWVghs

• W Brian Leonard’s blog– https://wbrianleonard.wordpress.com/

• Community forum– https://cloudcustomerconnect.oracle.com/resources/9553a4

c68d/summary

40

Summary• Agile methodology can speed up software delivery

• DevOps assists agile methodology

• Cloud can automate DevOps

• Oracle Developer Cloud Service is an option for DevOps

• DevCS supports different types of code: SQL, PL/SQL, JavaScript, Java

• DevCS is “free”

Page 21: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

41

42

DesignerHandbookDesigner

Handbook

DeveloperAdvancedForms &Reports

DeveloperAdvancedForms &Reports

JDeveloper 3Handbook

JDeveloper 3Handbook

ORACLE9iJDeveloperHandbook

ORACLEJDeveloper 10g

Handbook

• Please fill out the session evaluations

• 7 of 8 books co-authored with Dr. Paul Dorsey, Avrom Roy-Faderman, & Duncan Mills

• Slides will be on utoug.org

Page 22: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

43

Appendix A: Project Console Tools

44

Code

Page 23: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

45

Source Code and Commiters

46

Maven Repositories

Page 24: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

47

Releases

48

Snippets

Page 25: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

49

Merge Requests

Code reviews

50

Track Issues

Page 26: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

51

Agile

52

Builds

Project build jobs

Page 27: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

53

Deploy

54

Docker Registry

Page 28: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

55

Wiki

56

Administration - Administration

Page 29: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

57

Appendix B: JDeveloper’sDevCS Tools

58

DevCS/FMW Resources• Dale Singleterry YouTube video

– Developer Cloud Service: Develop, Collaborate & Deploy in the Cloud

– https://www.youtube.com/watch?v=XaB6TGWVghs

– Older version, but includes examples of how Oracle uses DevCS to build DevCS (145 developers in 2015)

• Shay’s blog (quoted before)– For example:

• https://blogs.oracle.com/shay/agile-development-with-oracle-developer-cloud-service-and-jdeveloper-1221

Page 30: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

59

DevCS in JDeveloper• Create a Team Server

• Log in

First part of project’s URL

60

DevCS in JDeveloper• Select the Git repository

• Get sources from Developer server

Page 31: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

61

DevCS in JDeveloper• Clone from Git

62

DevCS in JDeveloper• Push app files to the repository

– Copy the files into the folder associated with the repository

– Git – Add All

Page 32: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

63

DevCS in JDeveloper

• Git - Commit All

64

DevCS in JDeveloper• Git – Push

– Can specify SSH if needed

• Push status

Page 33: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

65

DevCS – ADF Activity• In DevCS news/activities

66

DevCS in JDeveloper• Add Ant buildfiles

– New Ant buildfile from the New gallery

– Set up build.xml and build.properties to use DevCS• See sample code in tutorial

– Git – Add All

– Git – Commit All, Git - Push

Page 34: Support Your DevOps Process With a Free Oracle …...Support Your DevOps Process With a Free Oracle Cloud Tool Peter Koletzke Technical Director & Principal Instructor Me • 35 yrs

67

DevCS Build• Configure DevCS project to

use Ant for build

• Build – New Job

• Specify JDK