Rapid Deployment Models for uPortal -or- "Fast Times at Portal High"

Slides:



Advertisements
Similar presentations
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
Advertisements

Michael Lepine Agile2013 Recap. What is DevOps?
Developing CAS in Eclipse
DNN LOVES JENKINS FOR CONTINUOUS INTEGRATION
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Continuous Delivery Ajey Gore Head of Technology ThoughtWorks India.
UPortal 3 – What's New? JA-SIG Conference, Spring 2008 uPortal What's New? Eric Dalquist University of Wisconsin - Madison.
Maven and Stack Starter Michael Youngstrom. Notes This is a training NOT a presentation Please ask questions Prerequisites – Introduction to Java Stack.
Maven & Bamboo CONTINUOUS INTEGRATION. QA in a large organization In a large organization that manages over 100 applications and over 20 developers, implementing.
AUTOBUILD Build and Deployment Automation Solution.
HDVC & Client Reflector server SIP Server User management HDVC & Client.
UNICON Warlock Portlets A.K.A. toro-portlets Andrew Wills JA-SIG 2007 Summer Conference, Denver Tuesday June 26th, 2007 © Copyright Unicon, Inc., 2006.
Creating a Maintainable Software Ecosystem Jeremy D. Miller November 27th, 2007.
Tomcat Spencer Uresk. Notes This is a training NOT a presentation Please ask questions This is being recorded
& Dev Ops. Sherwin-Williams & DevOps Introduction to Sherwin-Williams.
Using the ALM Module Fully Automated Deployments in Stack 3.2.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
Search Technologies Maven Repository (Mirror) Central Repository (repo1.maven.org) Local Repository (/users/you/.m2) Local Machine Project target Project.
Development Environment Matthew Sell, CSSE Student MASS Research Participant, October 2014.
Overview of the Automated Build & Deployment Process Johnita Beasley Tuesday, April 29, 2008.
Spring-Batch Tutorial Getting Started Guide. Agenda  Software prerequisites  Creating new batch application  Setting up database  Running a job.
Continuous Integration CruiseControl.Net. Best Practices Use version control; Automate the build; Build should be self tested; Developers must commit.
Build and Deployment Process Understand NCI’s DevOps and continuous integration requirements Understand NCI’s build and distribution requirements.
Software Deployment & Release 26/03/2015 1EN-ICE.
Ahmed Idris Tahir Waseel Application Service Provider.
8/29/10 Maven Repository Management with Nexus Jim McMahon.
Maven. Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM.
From Venus to Mars Developer land Real world Maven Alfresco SDK is fun! -Pamp-to-war Alfresco AMP Archetype Share AMP Archetype.
Going Hybrid – part 2 Moving to Hybrid Cloud with Windows Azure Virtual Machines & System Center 2012 R2.
DECTRIS Ltd Baden-Daettwil Switzerland Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker)
The Maven Alfresco SDK™ At the end of a journey, there is always a new beginning…
Introduction Aaron Day ● Software Architect ● Open Solutions Interests and Hobbies ● Family ● Software Development ● Woodworking ● Gaming ● Shooting.
Platform & Maven2 David Šimonek. Certified Engineer Course Agenda What is Maven? Why Maven? NB IDE & Maven NB Platform & Maven.
Breaching Barriers to Continuous Delivery with Automated Test Gates
Packaging and Deploying Windows Applications
Joonas Sirén, Technology Architect, Emerging Technologies Accenture
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Stress Free Deployments with Octopus Deploy
with Some Eclipse Tricks included Safa Bacanlı Fall 16
Maven 04 March
CS520 Web Programming Introduction to Maven
E Camden Fisher Yale University ITS
Plan What is Maven ? Links : mvn command line tool
Infrastructure Orchestration to Optimize Testing
Provisioning with custom builds and Kickstart
Automatic RElease Service
Continuous Delivery of Infrastructure with Chef and DSC
Autodesk® Inventor ® Engineer-to-Order Addressing the needs of ETO Manufacturers Image courtesy of Mammoth-WEBCO, Inc.
Project management and comprehension tool
Dmytro Mykhailov How HashiCorp platform tools can make the difference in development and deployment Target and goal of HashiCorp.
Building a Continuous Integration Pipeline using VSTS
Advanced Integration and Deployment Techniques
Continuous Integration For Databases
X in [Integration, Delivery, Deployment]
Maven IIB9 Plug-in Version 9.0
With Some Eclipse Tricks included.
Continuous Delivery good & bad 4/20/2012
Mark Dönszelmann Stanford Linear Accelerator Center
JENKINS TIPS Ideas for making your life with Jenkins easier
Continuous Integration
Maven IIB9 Plug-in Version 9.0
Continuous Integration Tool
Escidoc build and development environment
Versioning system (e.g. github) holding code artifacts like war files
Delivering Business Value Faster
Rapid Deployment Models for uPortal -or- "Fast Times at Portal High"
Azure Supports L7 Networking and Security Solutions to Optimize, Secure Web Applications “Microsoft Azure has enabled A10 Networks to offer virtual Application.
Node.js Test Automation using Oracle Developer Cloud- Simplified
IBM Software Aviarc Global, Ltd. Small-footprint IBM WebSphere Liberty profile is up and running in less than 15 minutes The need: Aviarc’s software developers.
MS Confidential : SharePoint 2010 Developer Workshop (Beta1)
Presentation transcript:

Rapid Deployment Models for uPortal -or- "Fast Times at Portal High" Tom Freestone Senior Developer Brigham Young University 2011 Jasig Conference February 27, 2019

Do More with Less Portals ran on large, beefy, expensive machines Developed Deployment Anti-patterns

1. Deploy “Handraulically” Involves Install Cookbooks Boring and Repetitive = Errors Requires a Jedi Master to Debug Don’t Get Hit by a Bus Anti-Pattern Not a Good Use of Resources

2. But it Worked in Development … Assume Development Environment is the Same as Production. Assumptions = Killer

3. One of these is not like the Others … Servers have Personalities Manual Configuration / Debugging Changes are not Propagated Unable to Reproduce Errors

Virtual Machines Mass produce “Servers” Problem of Sprawl 125% year increase in servers How do you deal with configuration differences between dev, test, stage, prod?

Continuous Delivery (Jez Humble, David Farley) Empower our Portal Teams Reduce Errors Lower Stress Flexibility Everyone can Deploy Quickly

1. Automate Everything Possible Continuous Integration Prove your software works with each commit Benefits Build is Repeatable Early Warning of Problems Wiring and Configuration that Works Effective Teams Use Continuous Integration with Portal and Portlets

2. Keep Everything in Version Control An Application is composed of Binaries, Data and Configuration. Artifact Repositories Maven Yum (rpm)

Maven Resource Filtering (Maven Resource Plugin) 1. Enable maven resource plugin <project> ... <name>My Resources Plugin Practice Project</name> ... <build> ... <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> ... </resources> ... </build> ... </project> 2. HelloWorld.txt Hello ${name} 3. Command Line mvn resources:resources Output : Hello My Resources Plugin Practice Project

External Resource Filtering (Maven War Plugin)    <build>      <plugins>        <plugin>          <groupId>org.apache.maven.plugins</groupId>          <artifactId>maven-war-plugin</artifactId>          <configuration>            <webResources>              <webResource>                <directory>${basedir}/src/main/webapp/WEB-INF</directory>                <includes>                  <include>web.xml</include>                </includes>                <targetPath>WEB-INF</targetPath>                <filtering>true</filtering>              </webResource>            </webResources>          </configuration>        </plugin>      </plugins>  </build>

Build Profiles 1. pom.xml <profiles> <profile> <id>development</id> <properties> <greeting>Welcome to Jasig</greeting> <properties> </profile> <profile> <id>production</id> <properties> <greeting>Welcome to Denver</greeting> <properties> </profile> </profiles> 2. helloWorld.text Hello ${greeting} 3. Command Line mvn package -P production -> Hello Welcome to Denver mvn package -P development -> Hello Welcome to Jasig

Maven Overlay (Maven War Plugin)     <build>         <plugins>             <plugin>                  <artifactId>maven-war-plugin</artifactId>                              <configuration>                                  <warName>someWar</warName>                              </configuration>                         </plugin>         </plugins>     </build>       <dependencies>         <dependency>             <groupId>edu.someUniversity</groupId>             <artifactId>someWar</artifactId>             <version>${someWar.version}</version>             <type>war</type>             <scope>runtime</scope>         </dependency>     </dependencies>     <properties>         <someWar.version>3.4.2</someWar.version>     </properties>

Building an RPM <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>rpm-maven-plugin</artifactId> <version>2.1-alpha-1</version> <extensions>true</extensions> ... <configuration> ... <mappings> <mapping> <directory>/tmp</directory> </mapping> </mappings> ... </configuration> ...</plugin> </plugins> </build> <packaging>rpm</packaging>

Examples CAS Portlets uPortal as a rpm

Questions?