Escidoc build and development environment

Slides:



Advertisements
Similar presentations
Apache Maven: J2EE Front to Back Jesse McConnell -
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
Here’s what we see when we start a new BlueJ “Project”. BlueJ automatically creates a small “readme.txt” file to hold any directions we wish to write about.
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.
Introduction to Maven Michael Youngstrom. Notes This is a training NOT a presentation Please ask questions Prerequisites – Introduction to the Java Stack.
Transitions of Care Reference Implementation Development Overview July 5, 2011.
Java Build Tool Comparison HJUG - April 29th, 2009 John Tyler.
Java development infrastructure at FMI Pekka Rantala FMI.
Maven: Build and project management in the 21th century.
APACHE MAVEN Bhavana Sudharshan Jaydeep Patel. Introduction What is Maven? “Maven is a software management and comprehension tool based on the concept.
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.
SOA-14: Continuous Integration in SOA Projects Experience from the field Andreas Gies Principal Architect.
MAVEN-BLUEMARTINI Yannick Robin. What is maven-bluemartini?  maven-bluemartini is Maven archetypes for Blue Martini projects  Open source project on.
The CodeBeamer Project - Experiences with integrating a Collaborative Development Platform into Eclipse Zsolt Koppany Horst Spatzenegger.
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.
Juggling Java EE with Enterprise Apache Maven Jesse McConnell -
2006 Adobe Systems Incorporated. All Rights Reserved. Designing & Building Structured Business Reports with ColdFusion MX 7 Adam Lehman ColdFusion Specialist.
July 2011CMSC 341 CVS/Ant 1 CMSC 341 Java Packages Ant CVS Project Submission.
1 dec 20, 2007 Maven project automation for dummies Aino Andriessen AMIS.
1 may 31, 2007 Build, test and deploy ADF applications without effort with the use of Maven2 Aino Andriessen AMIS.
14th Oct 2005CERN AB Controls Development Process of Accelerator Controls Software G.Kruk L.Mestre, V.Paris, S.Oglaza, V. Baggiolini, E.Roux and Application.
Maven 2.0 Improve your build patterns Vincent Massol CTO Pivolis.
Software Engineering Overview DTI International Technology Service-Global Watch Mission “Mission to CERN in Distributed IT Applications” June 2004.
Making Software Executable by Others Varun Ratnakar USC/ISI April 17, 2015
Build Systems Presentation December 14, 2015 Noon-1pm Kathy Lee Simunich Bldg. 203/ D120 Brought to you by: Argonne Java.
Software Deployment & Release 26/03/2015 1EN-ICE.
8/29/10 Maven Repository Management with Nexus Jim McMahon.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Maven. Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM.
CERN IT Department CH-1211 Genève 23 Switzerland t Bamboo users meeting IT-CS-CT.
CS520 Web Programming Introduction to Maven Chengyu Sun California State University, Los Angeles.
Platform & Maven2 David Šimonek. Certified Engineer Course Agenda What is Maven? Why Maven? NB IDE & Maven NB Platform & Maven.
NB UML takeover by community Sergey B. Petrov Former NetBeans UML Developer Jiří Kovalský NetBeans Community Manager August 16 th, 2010.
Open-O Integration Project Introduction
with Some Eclipse Tricks included Safa Bacanlı Fall 16
Maven 04 March
CS520 Web Programming Introduction to Maven
Build Automation with Gradle
Plan What is Maven ? Links : mvn command line tool
DataGrid Quality Assurance
Software Tango Meeting - May 2011 N. Leclercq on behalf of the SOLEIL Computing Team.
External Web Services Quick Start Guide
Maven 2 The Maven Apache.
Bhavana Sudharshan Jaydeep Patel
Automatic RElease Service
SPI Software Process & Infrastructure
Document & Web Content Management
Open-O O-Parent Project Proposal
prepared by hasan.we4tech.com
UAB Development Status
Project management and comprehension tool
CS427: Software Engineering I
Chengyu Sun California State University, Los Angeles
Using Maven2.
Maven IIB9 Plug-in Version 9.0
With Some Eclipse Tricks included.
Mark Dönszelmann Stanford Linear Accelerator Center
eSciDoc – Service infrastructure and solutions development
JENKINS TIPS Ideas for making your life with Jenkins easier
Maven IIB9 Plug-in Version 9.0
CONTINUOUS INTEGRATION –WHY WE DO IT?
Rapid Deployment Models for uPortal -or- "Fast Times at Portal High"
Rapid Deployment Models for uPortal -or- "Fast Times at Portal High"
Continuous Integration
Java Code Review with CheckStyle
Práctica 1.
Software Engineering and Architecture
Presentation transcript:

Escidoc build and development environment

Content Overview of the new build infrastructure A closer look on maven Workshop 22.02.2019 Seite 2

Goals to achieve Code traceability through a Version Control System QA improvements: Nightly builds and tests, available code documentation, automatic code analysis etc. Standardised project layout (File structure, documentation etc.) 22.02.2019 Seite 3

Escidoc build infrastructure internet ARCHIVA Holds and fetches ext. Libraries; holds binary releases Source code repositories Deploy server (dev-[project])‏ MAVEN CORE WORKSTATIONS CONTINUUM Nightly builds, continous testing, releases Development, local testing

manages dependencies between repositories Repository layout Common services Solutions common pubman faces manages dependencies between repositories MAVEN CORE 22.02.2019 Seite 5

Continuum A continuous integration server for building java projects Supports automatic nightly builds and testing Automatic deploy of binary artifacts to various target systems 22.02.2019 Seite 6

Archiva A build artifact repository manager Manages external artifact dependencies on its own Downloads needed libraries automatically from repository servers in the internet 22.02.2019 Seite 7

A typical release time period 1.2 1.3-SNAPSHOT 2006 2007 2008 1.4-SNAPSHOT 1.2-SNAPSHOT 1.3 1.1 22.02.2019 Seite 8

Maven

What is Maven? A build tool! A dependency management tool! A documentation tool! 22.02.2019 Seite 10

Common projects metadata format POM = Project Object Model = pom.xml Contains metadata about the project Location of directories, Developers/Contributors, Issue tracking system, Dependencies, Repositories to use, etc Example: <project> <modelVersion>4.0.0</modelVersion> <groupId>de.mpg.escidoc.service</groupId> <artifactId>framework_access</artifactId> <name>Access to the framework</name> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <dependencies/> <build/> […] 22.02.2019 Seite 11

Common directory organization src/ main/ java/ resources/ webapp/ application/ test/ site/ 4 nested projects Other projects 22.02.2019 Seite 12

Build lifecycle Web Server M2 user Well-known phases generate- sources plugin compile plugin test plugin package integration- test user plugin install plugin deploy Well-known phases 22.02.2019 Seite 13

Dependency management Maven uses binary dependencies « use only version 2.1.1 » A B <dependencies> <dependency> <groupId>de.mpg</groupId> <artifactId>B</artifactId> <version>2.1.1</version> <scope>compile</scope> </dependency> </dependencies> C ARCHIVA Build C Look for A & B 22.02.2019 Seite 14

Site and reports Lots of reports Project information (mailing lists, SCM, dependencies, etc)‏ PMD, Checkstyle, Javadoc, etc Auto deploy to webserver <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> </plugin> […] </plugins> </reporting> 22.02.2019 Seite 15

Questions? 22.02.2019 Seite 16