Using the V2P Package Manager Utility

Total Page:16

File Type:pdf, Size:1020Kb

Using the V2P Package Manager Utility CHAPTER 6 Using the V2P Package Manager Utility The V2P Package Manager Utility (v2pPkgMgr) enables the import of an application package to the V2P repository VM containing one or more node package manager (NPM) or RPM package manager (RPM) modules. This utility also enables import of an application upgrade bundle, a package that combines all of the lower-level application packages needed for an upgrade into one or more compressed .tar files. Note In this document, all descriptions of a “package format” refer the format of an application package and not the format of an application upgrade bundle. After importing the application, v2pPkgMgr publishes NPM modules to the NPM registry server of the Sinopia V2P repository VM. If the application is an AIC, v2pPkgMgr also creates the corresponding YUM application repository to allow installation or upgrade scripts running on the worker VM to directly perform YUM installations or upgrades from the V2P repository VM. Note Always log in to the V2P repository VM as v2pc (password = v2pc) prior to running v2pPkgMgr. Package Requirements • The application package for a specific application version must contain the following components: – Application NPM controller (AIC/MFC/PIC) .tgz package – For AIC controllers, optional application role(s) RPM sets • The application package for a given application version must be present locally on the repository VM prior to import. • The application package must have the following format on the local file system: Source Folder /tmp/ApplicationPackageFolder/ .tgz Application NPM AIC/MFC/PIC controller AIC Roles (Required for AIC Controllers, Optional for AICs) role1/<role1Version1>/*.rpm role1's RPM set (for role1Version1) role1/<role1Version2>/*.rpm role1's RPM set (for role1Version2) role2/<role2Version1>/*.rpm role2's RPM set (for role2Version1) … roleN/<roleNVersion1>/*.rpm roleN's RPM set (for roleNVersion1) Cisco Virtualized Video Processing Controller Deployment Guide 6-1 Chapter 6 Using the V2P Package Manager Utility Package Requirements • The .tgz file for the application must be located at the root of the application package folder and must be created using the npm pack command. For example, given an AIC application “MyApp"/v1.0.0 having two roles. "role1"/v1.0.0 and "role2" (having versions v1.0.0 & v1.0.1), the following local directory structure should be created: /tmp/MyApp/ .tgz MyApp AIC controller role1/1.0.0/*.rpm role1's v1.0.0 RPM set role2/1.0.0/*.rpm role2's v1.0.0 RPM set role2/1.0.1/*.rpm role2's v1.0.1 RPM set • To import an application package, v2pPkgMgr must be invoked from the repository VM as follows: /opt/cisco/v2p/v2pc/python/v2pPkgMgr.py --import --pkgtype [aic | mfc | pic] --sourcepath </path/to/application/package/directory> • The application's corresponding package.json file must provide metadata describing the application package, and specifically, must include a v2pc-packageinfo object. The following example below shows a package.json file for vendor "MyVendor" with application "MyApp"/v1.0.0 having two roles, "role1"/v1.0.0 and "role2" (having versions v1.0.0 & v1.0.1): { "name": "MyApp", "version": "1.0.0", "v2pcPackageInfo": { "vendorId": "MyVendor", "pkgType": ["aic | mfc | pic"], "roles" : [ // Relevant for pkgtype = aic (OPTIONAL) { "roleId" : "role1", "version" : "1.0.0" }, { "roleId" : "role2", "version" : "1.0.0" }, { "roleId" : "role2", "version" : "1.0.1" } ] } } Note • After adding the v2pcPackageInfo object to the application package.json file, issue npm pack to create the corresponding .tgz file. • The roleId names must match the corresponding role names in the application template.json file. Any versions specified in template.json are ignored. Only those contained in the package.json file are enforced. Cisco Virtualized Video Processing Controller Deployment Guide 6-2 Chapter 6 Using the V2P Package Manager Utility Importing an Application Package Importing an Application Package Complete the following steps to import the AIC package (all examples use cisco-vmr as the AIC): Step 1 Log in to the V2P Repository node using SSH. Step 2 Create a top-level directory folder for the application package. Example $ mkdir MyApp Step 3 Move the AIC Package .tgz file to the directory just created. Example $ mv cisco-vmr-1.0.300202.tgz MyApp/ Step 4 Use the import command to import the NPM package from VMR to the directory just created. $ /opt/cisco/v2p/v2pc/python/v2pPkgMgr.py --import --pkgtype [aic | mfc | pic] --sourcepath MyApp Importing NPM package from vmr ... Publishing /home/v2pc/v2pc-apps/npm/cisco-vmr-1.0.300202.tgz ... npm WARN using --force I sure hope you know what you are doing. + [email protected] Successfully imported NPM package from vmr Archiving application package cisco-vmr version 1.0.300202 ... Archived application package to baseurl --> http://25.52.5.42/cisco/aic/cisco-vmr/1.0.300202 Step 5 SSH into the Master Node as user v2pc. Example $ ssh v2pc@myMaster Step 6 Use npm show to query the repository for the application version(s): Example $ npm show cisco-vmr versions npm http GET http://100.10.50.11:4873/cisco-vmrnpm http 200 http://100.10.50.11:4873/cisco-vmr 1.0.300202 Cisco Virtualized Video Processing Controller Deployment Guide 6-3 Chapter 6 Using the V2P Package Manager Utility Importing and Publishing an NPM Module Importing and Publishing an NPM Module The v2pPkgMgr utility imports the .tgz controller and publishes it to the Sinopia NPM repository server running on the V2P Repository VM. Thereafter, the application's .tgz module can be installed from any Master node as follows (example shown for MyApp/v1.0.0): Example npm install [email protected] If the .tgz version specified by the version field in the package.json file is imported, v2pPkgMgr first deletes the old version and then publishes (or re-publishes) the imported version. Importing RPM Modules If "pkgtype" = "aic" is specified in the package.json file, the v2pPkgMgr imports the RPM sets for all of the specified application roles. The v2pPkgMgr also validates package.json against the application folder role directory hierarchy and reports any missing roles as warnings. In addition, any roles found in the local application folder but not present in package.json are ignored (that is, not imported). After v2pPkgMgr imports them, the RPM set(s) are available on the Repository VM at the following URL locations: http://$repoVmIp/$vendorId/aic/$appId/$version/$roleId/$roleVersion Deleting an Application Package To delete an existing application package, issue the following command: /opt/cisco/v2p/v2pc/python/v2pPkgMgr.py --delete –-pkgtype [aic | mfc | pic] --vendorid <VendorId> --appid <AppId> [--appversion <AppVersion>] For example, to delete version 3.1.100 of cisco-ce, issue the following command and confirm that it reports successful deletion: $ /opt/cisco/v2p/v2pc/python/v2pPkgMgr.py --delete --pkgtype aic --vendorid cisco --appid cisco-ce --appversion 3.1.100 Deleting application package cisco-ce version 3.1.100 ... Unpublishing [email protected] ... npm WARN using --force I sure hope you know what you are doing. ... ... Successfully deleted application package cisco-ce version 3.1.100 Worker Node Installation and Upgrade Scripts Each worker node has separate application install.sh and upgrade.sh scripts provided on a per-role basis. Both install.sh and upgrade.sh scripts are invoked identically. The only difference is that the upgrade.sh script must perform graceful cleanup of the current application prior to initiating the upgrade. Cisco Virtualized Video Processing Controller Deployment Guide 6-4 Chapter 6 Using the V2P Package Manager Utility Worker Node Installation and Upgrade Scripts The application upgrade.sh script must be structured as follows (the example is sampleaic master-role): Note The install.sh script is identical, except that it need not perform graceful shutdown. Example #!/bin/sh # # Application upgrade script template. # # Command line arguements: # # --apprepourls <Application URLs list> (Comma-separated list of URLs) # --sysrepoids <System Repo ID list> (Comma-separated list of IDs) # --appver <Application version> # --rolever <Role version> # # Validate parameters V2PPATH="/opt/cisco/v2p/v2pc/script/v2p-vm-mgr" ${V2PPATH}/v2pValidateWorkerParams.py $@ if [ $? -ne 0 ]; then echo "ERROR: Invalid command line arguements; exiting ..." exit 1 fi # Pickup params VENDORID=sampleVendor APPID=sampleaic ROLEID=master-role appver=$(${V2PPATH}/v2pGetWorkerParam.py "appver") rolever=$(${V2PPATH}/v2pGetWorkerParam.py "rolever") # Extract application repo URLs. # Application URLs are formatted as follows: # http://$repoVmIp/$VENDORID/aic/$APPID/$appver/$ROLEID/$rolever # declare -a appRepoUrls=$(${V2PPATH}/v2pGetWorkerParam.py "apprepourls") # Extract system repo IDs. # Each system repo ID corresponds to the worker node's # "imageTag" system repo list (e.g., third-party RPM list). # declare -a sysRepoIds=$(${V2PPATH}/v2pGetWorkerParam.py "sysrepoids") # Configure yum to point to $APPID-$ROLEID repo sudo cat << app-install-repo > /tmp/$APPID-$ROLEID-install.repo [$APPID-$ROLEID] name=$APPID-$ROLEID baseurl=${appRepoUrls[0]} enabled=1 gpgcheck=0 app-install-repo sudo cp -f /tmp/$APPID-$ROLEID-install.repo /etc/yum.repos.d/ # Clean yum caches sudo yum clean all # # Perform graceful shutdown of application. # e.g., systemctl stop <sampleworker-masterService> # # Upgrade sampleaic RPMs. # (NOTE: yum install will actually upgrade existing RPMs, # as well as installing new RPMs.) # sudo yum -y -v --disablerepo=* \
Recommended publications
  • Linux Systems Administration and Security
    City University of New York (CUNY) CUNY Academic Works Open Educational Resources John Jay College of Criminal Justice 2020 Lecture - CSCI 275: Linux Systems Administration and Security Moe Hassan CUNY John Jay College NYC Tech-in-Residence Corps How does access to this work benefit ou?y Let us know! More information about this work at: https://academicworks.cuny.edu/jj_oers/27 Discover additional works at: https://academicworks.cuny.edu This work is made publicly available by the City University of New York (CUNY). Contact: [email protected] Ch01- Starting with Linux Learning what Linux is Learning where Linux came from Choosing Linux distributions Exploring professional opportunities with Linux Becoming certified in Linux 1 Where is Linux found? • Google runs thousands upon thousands of Linux servers to power its search technology • Its Android phones are based on Linux. • Facebook builds and deploys its site using what is referred to as a LAMP stack (Linux, Apache web server, MySQL database, and PHP web scripting language)—all open source projects. • Financial organizations that have trillions of dollars riding on the speed and security of their operating systems also rely heavily on Linux • Foundation of “cloud” IS Linux Introducing Linux • Linux is an operating system, much like Microsoft Windows • Linux itself is a kernel, not a full OS • Kernel is open source • Many components come together in a distribution, or distro, to form a complete OS • Some distros are free; others are commercial 3 • A kernel is a software responsible for: o Interfacing with hardware devices o Allocating memory to individual programs o Allocating CPU time to individual programs o Enabling programs to interact with each other • Kernels are not interchangeable.
    [Show full text]
  • Oracle Berkeley DB Installation and Build Guide Release 18.1
    Oracle Berkeley DB Installation and Build Guide Release 18.1 Library Version 18.1.32 Legal Notice Copyright © 2002 - 2019 Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. Berkeley DB, and Sleepycat are trademarks or registered trademarks of Oracle. All rights to these marks are reserved. No third- party use is permitted without the express prior written consent of Oracle. Other names may be trademarks of their respective owners. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.
    [Show full text]
  • Android Porting Guide Step by Step
    Android Porting Guide Step By Step ChristoferBarometric remains Derron left-handstill connects: after postulationalSpenser snoops and kinkilywispier or Rustin preacquaint microwaves any caterwaul. quite menacingly Hewie graze but intubated connectedly. her visionaries hereditarily. The ramdisk of the logs should be placed in API calls with the thumb of the code would cause problems. ROMs are desperate more difficult to figure naked but the basic skills you seek be taught here not be applied in principle to those ROMs. Find what catch the prescribed procedures to retrieve taken. Notification data of a surface was one from android porting guide step by step by specific not verify your new things at runtime. Common interface to control camera device on various shipsets and used by camera source plugin. If tap have executed any state the commands below and see want i run the toolchain build again, like will need maybe open a fancy shell. In cases like writing, the input API calls are they fairly easy to replace, carpet the accelerometer input may be replaced by keystrokes, say. Sometimes replacing works and some times editing. These cookies do not except any personally identifiable information. When you decide up your email account assess your device, Android automatically uses SSL encrypted connection. No custom ROM developed for team yet. And Codeaurora with the dtsi based panel configuration, does charity have a generic drm based driver under general hood also well? Means describe a lolipop kernel anyone can port Marshmallow ROMs? Fi and these a rain boot. After flashing protocol. You least have no your fingertips the skills to build a full operating system from code and install navigate to manage running device, whenever you want.
    [Show full text]
  • Table of Contents
    Table of Contents Package Developer Guide 1.1 Release Notes 1.2 Breaking Changes 1.3 Getting Started 1.4 System Requirements 1.4.1 Prepare Envrionment 1.4.2 Your First Package 1.4.3 Synology Toolkit 1.5 Build Stage 1.5.1 Pack Stage 1.5.2 Sign Package (only for DSM6.X) 1.5.3 References 1.5.4 Synology Package 1.6 INFO 1.6.1 Necessary Fields 1.6.1.1 Optional Fields 1.6.1.2 package.tgz 1.6.2 scripts 1.6.3 Script Environment Variables 1.6.3.1 Script Messages 1.6.3.2 conf 1.6.4 privilege 1.6.4.1 resource 1.6.4.2 PKG_DEPS 1.6.4.3 PKG_CONX 1.6.4.4 LICENSE 1.6.5 Synology DSM Integration 1.7 FHS 1.7.1 Desktop Application 1.7.2 Application Config 1.7.2.1 Application Help 1.7.2.2 Application I18N 1.7.2.3 Application Authentication 1.7.2.4 Privilege 1.7.3 Privilege Config 1.7.3.1 Resource 1.7.4 Resource Config 1.7.4.1 Resource Timing 1.7.4.2 Resource Update 1.7.4.3 2 Resource List 1.7.4.4 /usr/local linker 1.7.4.4.1 Apache 2.2 Config 1.7.4.4.2 Data Share 1.7.4.4.3 Docker 1.7.4.4.4 Index DB 1.7.4.4.5 Maria DB 1.7.4.4.6 PHP INI 1.7.4.4.7 Port Config 1.7.4.4.8 Systemd User Unit 1.7.4.4.9 Syslog Config 1.7.4.4.10 Web Service 1.7.4.4.11 Port 1.7.5 Monitor 1.7.6 Package Examples 1.8 Open Source Tool: tmux 1.8.1 Open Source Tool: nmap 1.8.2 Docker package 1.8.3 Web Package: WordPress 1.8.4 Publish Synology Packages 1.9 Get Started with Publishing 1.9.1 Submitting the Package for Approval 1.9.2 Responding to User Issues 1.9.3 Appendix A: Platform and Arch Value Mapping Table 1.10 Appendix B: Compile Applications Manually 1.11 Download DSM Tool Chain 1.11.1 Compile 1.11.2 Compile Open Source Projects 1.11.3 Appendix C: Publication Review & Verification 1.12 3 Package Developer Guide Synology DSM 7.0 Developer Guide Synology offers this developer guide with instructions on how to develop packages on Synology NAS products.
    [Show full text]
  • Demystifying Internet of Things Security Successful Iot Device/Edge and Platform Security Deployment — Sunil Cheruvu Anil Kumar Ned Smith David M
    Demystifying Internet of Things Security Successful IoT Device/Edge and Platform Security Deployment — Sunil Cheruvu Anil Kumar Ned Smith David M. Wheeler Demystifying Internet of Things Security Successful IoT Device/Edge and Platform Security Deployment Sunil Cheruvu Anil Kumar Ned Smith David M. Wheeler Demystifying Internet of Things Security: Successful IoT Device/Edge and Platform Security Deployment Sunil Cheruvu Anil Kumar Chandler, AZ, USA Chandler, AZ, USA Ned Smith David M. Wheeler Beaverton, OR, USA Gilbert, AZ, USA ISBN-13 (pbk): 978-1-4842-2895-1 ISBN-13 (electronic): 978-1-4842-2896-8 https://doi.org/10.1007/978-1-4842-2896-8 Copyright © 2020 by The Editor(s) (if applicable) and The Author(s) This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Open Access This book is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made. The images or other third party material in this book are included in the book’s Creative Commons license, unless indicated otherwise in a credit line to the material.
    [Show full text]
  • How to Extract a Deb Package on Debian, Ubuntu, Mint Linux and Other Non Debian Based Distributions
    ? Walking in Light with Christ - Faith, Computers, Freedom Free Software GNU Linux, FreeBSD, Unix, Windows, Mac OS - Hacks, Goodies, Tips and Tricks and The True Meaning of life http://www.pc-freak.net/blog How to extract a deb package on Debian, Ubuntu, Mint Linux and other non debian based distributions Author : admin How to extract a deb package? Have you ever had a debian .deb package which contains image files you need, but the dependencies doesn't allow you to install it on your Debian / Ubuntu / Mint Linux release? I had just recently downloaded the ultimate-edition-themes latest release v 0.0.7 a large pack of GNOME Themes and wanted to install it on my Debian Stretch Linux but I faced problems because of dependencies when trying to install with dpkg. That is why I took another appoarch and decided to only extract the necessery themes from the archive only with dpkg. Here is how I have extracted ultimate-edition-themes-.0.0.7_all.deb ; dpkg -x ultimate-edition-themes-.0.0.7_all.deb /tmp/ultimate-edition-themes 1 / 3 ? Walking in Light with Christ - Faith, Computers, Freedom Free Software GNU Linux, FreeBSD, Unix, Windows, Mac OS - Hacks, Goodies, Tips and Tricks and The True Meaning of life http://www.pc-freak.net/blog So how dpkg extracts the .deb file? Debian .deb packages are a regular more in Wikipedia - Unix archive files (ar) . The structure of a deb file consists of another 3 files (2 tar.gzs and one binary) as follows: debian-binary: regular text file, contains the version of the deb package format control.tar.gz: compressed file, contains file md5sums and control directory for the deb package data.tar.gz: compressed file, contains all the files which will be installed Basicly if you're on a Linux distribution that lacks dpkg you can easily extract .deb binary using GNU AR command (used to create, modify extract Unix ar files and is the GNU / Linux equivallent of the UNIX ar command).
    [Show full text]
  • Idiomatic and Reproducible Software Builds Using Containers for Reliable Computing
    Master’s Thesis Idiomatic and Reproducible Software Builds using Containers for Reliable Computing Jonas Weber April 18, 2016 arXiv:1702.02999v1 [cs.SE] 9 Feb 2017 Albert-Ludwigs-Universität Freiburg Faculty of Engineering Department of Computer Science Bioinformatics Eingereichte Masterarbeit gemäß den Bestimmungen der Prüfungsordnung der Albert-Ludwidgs-Universität Freiburg für den Studiengang Master of Science (M.Sc.) Informatik vom 19. August 2005. Bearbeitungszeitraum 12. Januar 2016 - 12. Juli 2016 Gutachter Prof. Dr. Rolf Backofen Head of the Group Chair for Bioinformatics Zweitgutachter Prof. Dr. Christoph Scholl Director Chair of Operating Systems Betreuer Dr. Björn Grüning Abstract Containers as the unit of application delivery are the ‘next big thing’ in the software development world. They enable developers to create an executable image containing an application bundled with all its dependencies which a user can run inside a controlled environment with virtualized resources. Complex workflows for business-critical applications and research environments require a high degree of reproducibility which can be accomplished using uniquely identified images as units of computation. It will be shown in this thesis that the most widely used approaches to create an image from pre-existing software or from source code lack the ability to provide idiomaticity in their use of the technology as well as proper reproducibility safe-guards. In the first part, existing approaches are formalized and discussed and a new approach is introduced. The approaches are then evaluated using a suite of three different examples. This thesis provides a framework for formalizing operations involving a layered file system, containers and images, and a novel approach to the creation of images using utility containers and layer donning fulfilling the idiomaticity and reproducibility criteria.
    [Show full text]
  • Enhanced Test Administration Package Format Smarter Balanced Assessment Consortium Test Delivery System
    SmarterApp Interface Specification: Enhanced Test Administration Package Format Smarter Balanced Assessment Consortium Test Delivery System SMARTERAPP SPECIFICATION for ENHANCED TEST ADMINISTSRATION PACKAGE FORMAT Authored by Fairway Technologies, Inc. Updated 14 May 2014 Page 1 of 78 SmarterApp Interface Specification: Enhanced Test Administration Package Format Smarter Balanced Assessment Consortium Test Delivery System Revision History Version Revision Description Author/Modifier Date 0.1 Draft Release Greg Stoike (Fairway) May 14, 2018 Page 2 of 78 SmarterApp Interface Specification: Enhanced Test Administration Package Format Smarter Balanced Assessment Consortium Test Delivery System Table of Contents Purpose ......................................................................................................................................................... 4 Package Usage ............................................................................................................................................. 4 Enhanced Administration Test Package Format Specification – Table 1 ................................................ 5 Sample XML Files ...................................................................................................................................... 28 IAB Fixed Form Sample XML File 29 ICA Fixed Form Sample XML File 36 Enhanced Test Administration XSD File 64 Page 3 of 78 SmarterApp Interface Specification: Enhanced Test Administration Package Format Smarter Balanced Assessment Consortium Test Delivery
    [Show full text]
  • Debian Packaging Tutorial
    Debian Packaging Tutorial Lucas Nussbaum [email protected] version 0.27 – 2021-01-08 Debian Packaging Tutorial 1 / 89 About this tutorial I Goal: tell you what you really need to know about Debian packaging I Modify existing packages I Create your own packages I Interact with the Debian community I Become a Debian power-user I Covers the most important points, but is not complete I You will need to read more documentation I Most of the content also applies to Debian derivative distributions I That includes Ubuntu Debian Packaging Tutorial 2 / 89 Outline 1 Introduction 2 Creating source packages 3 Building and testing packages 4 Practical session 1: modifying the grep package 5 Advanced packaging topics 6 Maintaining packages in Debian 7 Conclusions 8 Additional practical sessions 9 Answers to practical sessions Debian Packaging Tutorial 3 / 89 Outline 1 Introduction 2 Creating source packages 3 Building and testing packages 4 Practical session 1: modifying the grep package 5 Advanced packaging topics 6 Maintaining packages in Debian 7 Conclusions 8 Additional practical sessions 9 Answers to practical sessions Debian Packaging Tutorial 4 / 89 Debian I GNU/Linux distribution I 1st major distro developed “openly in the spirit of GNU” I Non-commercial, built collaboratively by over 1,000 volunteers I 3 main features: I Quality – culture of technical excellence We release when it’s ready I Freedom – devs and users bound by the Social Contract Promoting the culture of Free Software since 1993 I Independence – no (single)
    [Show full text]
  • Package 'Mvbutils'
    Package ‘mvbutils’ December 12, 2018 Version 2.8.232 Author Mark V. Bravington <[email protected]> Maintainer Mark V. Bravington <[email protected]> Depends R (>= 3.3) Imports utils, tools, stats, graphics Date 2018-12-11 Title Workspace Organization, Code and Documentation Editing, Package Prep and Editing, Etc NeedsCompilation no ByteCompile no Description Hierarchical workspace tree, code editing and backup, easy package prep, edit- ing of packages while loaded, per-object lazy-loading, easy documentation, macro func- tions, and miscellaneous utilities. Needed by debug package. License GPL (>= 2) Repository CRAN Date/Publication 2018-12-12 15:30:03 UTC R topics documented: mvbutils-package . .3 cd ..............................................6 cdfind . 10 cdprompt . 12 changed.funs . 13 check.patch.versions . 13 ditto.list . 14 do.in.envir . 15 do.on . 16 doc2Rd . 17 dochelp . 23 dont.lock.me . 24 dont.lockBindings . 25 1 2 R topics documented: extract.named . 26 fast.read.fwf . 27 find.documented . 27 fix.order . 29 fixr.............................................. 30 flatdoc . 36 foodweb . 38 generic.dll.loader . 41 get.backup . 43 hack............................................. 45 help ............................................. 46 help2flatdoc . 49 install.pkg . 50 library.dynam.reg . 54 local.on.exit . 55 local.return . 56 lsize . 56 maintain.packages . 57 make.NAMESPACE . 60 make_dull . 61 max_pkg_ver . 62 mcut............................................. 62 mlazy . 64 mlocal . 68 move............................................. 70 multirep . 71 mvb.sys.parent . 73 mvbutils.operators . 74 mvbutils.packaging.tools . 77 mvbutils.utils . 83 my.index . 89 NEG............................................. 91 noice . 92 pre.install . 93 print . 101 rbdf ............................................. 104 readLines.mvb . 108 rm.pkg . 109 Save............................................. 110 search.for.regexpr . 112 set.finalizer . 113 setup.mcache . 115 sleuth .
    [Show full text]
  • An Implementation of the Linux Software Repository Model for Other Operating Systems
    An Implementation of the Linux Software Repository Model for other Operating Systems Neil McNab Anthony Bryan Appupdater Project Metalink Project [email protected] [email protected] Abstract Installing the latest version of software is more critical Year after year, the frequency of updated releases of soft- than ever. There is a race between hackers and users to obtain ware continues to increase. Without an automated install software updates [Johansen 2008]. The availability of auto- process, the result is either that a system installs software mated exploit generation is increasing the frequency of zero with known defects and/or vulnerabilities, or systems require day exploits [Brumley 2008]. Time is critical in deploying new software versions. Mozilla Firefox 3.0.0 was released increased manual labor to maintain up-to-date software in- 1 stallations. Linux packages, in conjunction with repositories, in June 2008 . The current release in June 2009 was Firefox fill this need for automation to reduce both undesirable situa- 3.0.11. That is nearly a new security or bug fix release ev- tions. This model can be modified to a generic operating sys- ery month. Keeping up with this update pace on unmanaged tem environment, such as Windows, which currently lacks systems is extremely difficult, especially when considering the capability to update arbitrary software applications. Our other installed software requires updating as well. A pack- application, Appupdater, demonstrates this concept of de- age deployment tool is the best choice for this task [Jansen 2005]. To test this concept, we have implemented a program tecting, downloading, and installing upgrades automatically.
    [Show full text]
  • Docker Anti-Patterns | Docker Anti-Patterns
    CONTINUOUS DEPLOYMENT / DELIVERY Docker Anti-Patterns | Docker Anti-Patterns Table of Contents ANTI-PATTERN 1 Treating Docker containers as Virtual Machines 4 ANTI-PATTERN 2 Creating Docker images that are not transparent 6 ANTI-PATTERN 3 Creating Dockerfiles that have side effects 8 ANTI-PATTERN 4 Confusing images that are used for development with those that are used for deployment 11 ANTI-PATTERN 5 Using different images for each environment (qa, stage, production) 12 ANTI-PATTERN 6 Creating Docker images on production servers 14 ANTI-PATTERN 7 Working with git hashes instead of Docker images 16 ANTI-PATTERN 8 Hardcoding secrets and configuration into container images 18 ANTI-PATTERN 9 Creating Docker files that do too much 19 ANTI-PATTERN 10 Creating Docker files that do too little 21 www.codefresh.io | © 2019 Codefresh. All rights reserved 2 | Docker Anti-Patterns Codefresh is the only Continuous Integration/Delivery platform designed specifically for microservices and containers running on Kubernetes. Codefresh includes comprehensive built-in support for Helm charts and deployments and even ofers a private free Helm repository with each account. Combined with the private Docker registry and dedicated Kubernetes dashboards, Codefresh is an one-stop-shop for microservice development. www.codefresh.io | © 2019 Codefresh. All rights reserved 3 | Docker Anti-Patterns Container usage is exploding. Even if you are not yet convinced that Kubernetes is the way forward, it is very easy to add value just by using Docker on its own. Containers can now simplify both deployments and CI/CD pipelines. The official Docker best practices page is highly technical and focuses more on the structure of the Dockerfile instead of generic information on how to use containers in general.
    [Show full text]