Extended answer for ways deliver a software (#121)

This commit is contained in:
SaleGajic 2020-12-10 07:40:34 +01:00 committed by GitHub
parent b264d466a6
commit aac7da0785
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -196,9 +196,10 @@ which follows the immutable infrastructure paradigm.
<details> <details>
<summary>What ways are you familiar with to deliver a software? What are the advantages and disadvantages of each method?</summary><br><b> <summary>What ways are you familiar with to deliver a software? What are the advantages and disadvantages of each method?</summary><br><b>
* Archive - collect all your app files into one archive (e.g. tar) and deliver it to the user. * Source - Maintain build script within version control system so that user can build your app after cloning repository. Advantage: User can quickly checkout different versions of application. Disadvantage: requires build tools installed on users machine.
* Package - depends on the OS, you can use your OS package format (e.g. in RHEL/Fefodra it's RPM) to deliver your software with a way to install, uninstall and update it using the standard packager commands * Archive - collect all your app files into one archive (e.g. tar) and deliver it to the user. Advantage: Only tool needed is an unarchiver. Disadvantage: Requires repeating the same procedure when updating, not good if there are a lot of dependencies.
* Images - Either VM or container images where your package is included with everything it needs in order to run successfully. * Package - depends on the OS, you can use your OS package format (e.g. in RHEL/Fefodra it's RPM) to deliver your software with a way to install, uninstall and update it using the standard packager commands. Advantages: Package manager takes care of support for installation, uninstallation, updating and dependency management. Disadvantage: Requires managing package repository.
* Images - Either VM or container images where your package is included with everything it needs in order to run successfully. Advantage: everything is preinstalled, it has high degree of environment isolation. Disadvantage: Requires knowledge of building and optimizing images.
</b></details> </b></details>
<details> <details>