Introduction of Application Packaging


by DevOpsSchool.com

Rajesh Kumar

(Senior DevOps Manager & Principal Architect)


Rajesh Kumar — an award-winning academician and consultant trainer, with 15+ years’ experience in diverse skill management, who has more than a decade of experience in training large and diverse groups across multiple industry sectors.

What is Package?


A package is a namespace that organizes a set of related files, classes and interfaces. Conceptually you can think of packages as being similar to different folders on your computer. In Java world, Packages (sometimes called namespaces) are used to give a separate identity (name) to a group of classes.

What is a Application Package?


Application package software, or simply an application package, is a collection of software programs that have been developed for the purpose of being licensed to third-party organizations.

Why to do Package Management?


  • Package Versioning
  • Easy Deployment
  • Manage the package
  • Build package
  • Distribute the package
  • Avoid Complexity
  • Package Dependency Management
  • To Store the artifact
  • Standard Process and Directory Layout
  • Saving time
  • Integrity of the package
  • Availability is time consuming
  • Security
  • Enforces for Standard Process
  • Maintenance & Cleanup
  • Schedule the maintenance
  • Backup
  • Mirror

Types of Package?


  • Source file Package – This package contains a file which is human readable. The javadoc tool generates output that originates from the following types of source files: Java language source files for classes (.java)

  • Binary file Package – This package contains a file which is machine readable in binary format. For example, A Java jar package organizes Java classes into namespaces. or .exe file

Types of Package?



Benefits of Application Packaging?



  • Hiding the complexity of the software config
  • Having the proper versioning
  • Having the name of the software
  • Remove it, Upgrade it, Install it

System Based Packaging


  • Windows
  • — EXE – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE

    — MSI – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE

  • Linux – CENTOS / RHEL
  • — RPM – Developed using RPMBUILD

  • LINUX – UBUNTU
  • — DEB – DEBIAN

  • LINUX – DEB
  • DEB – DEBIAN

  • MAC
  • — DMG – DMG

Application Based Packaging


  • JAVA
  • — EAR – Developed using MAVEN, ANT, JAVA

    — JAR – Developed using MAVEN, ANT, JAVA

    — WAR – Developed using MAVEN, ANT, JAVA

    — BIN – Developed using EJB

    — TAR – Developed using WINTAR,, TARBALL,

    — ZIP – Developed using WINZIP

  • DOT NET
  • — MSI – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE

    — EXE – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE

    — DLL – Developed using VSS, COMMANDS,

  • Other Language
  • — RUBY – RVM

    — GROVY – gvm

    — PYTHON – pip

    — PERL – ppm

Repository Management System


CENTRAL –> PRIVATE –> LOCAL

CENTRAL

- repo.apache.org

- yum reposittory

- Maven Repo

- apt repostiry

- Nuget Gallery

- Google Play

- Apple Store

- Docker hub

PRIVATE

- Sonatype NEXUS

- Jfrog ARTIFACTORY

- Apache ARCHIVA

Application Packaging Tools & Software


  • WiseStudio
  • Installanywhere
  • Installshild
  • Wix
  • Visual Studio
  • Android Studio
  • Winzip
  • Zip
  • tar
  • rpmbuild

DevOpsSchool Community Networks


These platforms provide you the opportunity to connect with peers and industry DevOps leaders, where you can share, discuss or get information on latest topics or happenings in DevOps culture and grow your DevOps professionals network.

DevOps
Build & Release
DevOps
Build & Release
DevOpsSchool
DevOps Group
BestDevOps.com
      

Any Questions?


Thank You!


DevOpsSchool — Lets Learn, Share & Practice DevOps

www.devopsschool.com

Connect with us on
contact@devopsschool.com | +91 7004 215 841 | 1800 889 7977
     

Next up:


Nexus

Introduction-SonaType-Nexus