万本电子书0元读

万本电子书0元读

顶部广告

The PEAR Installer Manifesto电子书

售       价:¥

2人正在读 | 0人评论 9.8

作       者:Gregory Beaver

出  版  社:Packt Publishing

出版时间:2006-10-30

字       数:360.7万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
This book is a comprehensive and well structured tutorial on using PEAR Installer, but it is also much more than that. As the creator of the latest versions of the PEAR Installer (1.4.0+) , the author is passionate about the benefits of a well managed development and deployment process. The book shows how the PEAR Installer works in detail, and then takes you through a comprehensive tour of how you can apply it all stages of the development lifecycle, with practical examples and advice throughout. It will build your technical skills and understanding, and also widen your perspective on managing an effective development process. The book is not just for PHP developers who want to understand how the PEAR Installer works, and what it can do for them, but more generally for PHP developers seeking a better way to deploy their applications and manage updates. It does assume that you have a good working knowledge of PHP development, and are dealing with projects of a sufficient scale and complexity to warrant an investment in a structure process.
目录展开

The PEAR Installer Manifesto

Table of Contents

The PEAR Installer Manifesto

Credits

About the Author

About the Reviewers

Preface

What This Book Covers

Conventions

Reader Feedback

Customer Support

Downloading the Example Code for the Book

Errata

Questions

1. Acquiring PEAR: What is it and How do I Get It?

A Democratic Innovation for PHP: PEAR Channels

What is PEAR? A Code Repository or an Installer?

PEAR Package Repository and PEAR Channel

PEAR Installer

Installing the PEAR Installer

PEAR Bundled with PHP

Installation for PHP Versions Older than 5.1.0

Other Unofficial Sources

Synchronizing to a Server with no Shell Access Using PEAR_RemoteInstaller

Summary

2. Mastering PHP Software Management with the PEAR Installer

Distributing Libraries and Applications

Differences between Libraries and Applications from the Installer's Point of View

Using Versioning and Dependencies to Help Track and Eliminate Bugs

Versioning

PEAR Packaging and Strict Version Validation

Enterprise-Level Dependency Management

Distribution and Upgrades for the End User

An Overview of package.xml Structure

Tags Shared between package.xml 1.0 and 2.0

Package Metadata

Package Name/Channel

Maintainers (Authors)

Package Description and Summary

Basic Release Metadata

Package Version

Package Stability

External Dependencies

Simplifying XML Validation of package.xml

Managing Trust of Dependencies

Reliably Depending on PECL Packages

Release Notes

Release License

Changelog

File List, or Contents of the Package

New Tags in package.xml

File/Directory Attributes: name, role, and baseinstalldir

Summary

3. Leveraging Full Application Support with the PEAR Installer

package.xml Version 2.0: Your Sexy New Friend

PEAR Channels: A Revolution in PHP Installation

Application Support

Introduction to Custom File Roles

Creating PEAR_Installer_Role_Chiaramdb2schema Custom Role

Full Range of Possible Custom File Roles

Introduction to Custom File Tasks

Creating the PEAR_Task_Chiara_Managedb Custom Task

The Full Range of Possible Custom File Tasks

validXml($pkg, $xml, &$config, $fileXml)

init($xml, $fileAttributes, $lastVersion)

startSession($pkg, $contents, $dest)

run($tasks)

Post-Installation Scripts for Ultimate Customization

Components of a Post-Install Script

Bundling Several Packages into a Single Archive

Backwards Compatibility: Using package.xml 1.0 and 2.0

Why Support Old and Crusty package.xml 1.0?

Case Study: The PEAR Package

PEAR_PackageFileManager

Obtaining PEAR_PackageFileManager

PEAR_PackageFileManager Script and the package.xml Files it Generates

How PEAR_PackageFileManager Makes a Hard Life Easy

Globbing Files for package.xml

Managing Changelog

Synchronizing package.xml Version 1.0 and package.xml Version 2.0

Creating a Package for Installation with the PEAR Installer

Summary

4. Clever Website Coordination Using the PEAR Installer

Overview of the Problem

Understanding the Problem

Managing Code Breakage and Reverting to Previous Versions

Managing Missing or Extraneous Files

Coordinating Development with a Team of Developers

Backing Up Code: Redundancy as a Necessary Precaution

The Solution, Part I: All-Important Source Control

Providing Redundancy and Revision History

Installing CVS or Subversion

Concurrent Versions System

Setting Up a CVS Repository

Subversion

Setting Up a Subversion Repository

Intelligent Source Control

Maintaining Branches for Complex Versioning Support

Using Tags to Mark Point Releases

The Solution, Part II: Using the PEAR Installer to Update the Website

Generating package.xml from the Source Control Checkout

Packaging: Coordinating Release Versions with Tags and Branches

Testing the Release before Uploading

Upgrading the Live Server

Using the pear upgrade Command

The Real Beauty of Using Pear to Fix Problems

Summary

5. Releasing to the World: PEAR Channels

Distributing a package.xml-Based Package

Distributing Packages through a Channel Server

The channel.xml File

channel.xml Tag Summary

Obtaining Chiara_PEAR_Server

Configuring the Server; Obtaining a Front End for End Users

Adding a Package and Releasing Packages

Installing a Public Channel Front End

Distributing Pay-For-Use PHP Applications through a Channel

Distributing Packages through Static tarballs for Single-Client Installations

Who Needs this Feature?

Differences in package.xml and Dependencies

Releasing Equals Uploading

Security Issues Inherent in Remote Installation

How do PEAR Installer and Chiara_PEAR_Server Provide Security?

Extra Security beyond what PEAR Provides

Specific Security Principles Applied in Designing the PEAR Installer and Chiara_PEAR_Server

Summary

6. Embedding the PEAR Installer: Designing a Custom Plug-In System

Why Embed PEAR?

Simplify User Choices for Installation

Eliminate Chances for Error

Other Plug-In Systems

Bundling Plug-Ins Directly in the Source Code

Subpackages - PEAR Dependencies

Case Study: MDB2

Custom Plug-In Systems: Remote Server

Case Study: Serendipity Blog's Spartacus Plug-In Manager

Case Study: Seagull Framework's Embedded PEAR Installer

Designing a Custom PEAR Channel-Based Plug-In System

Reusing Existing Functionality

PEAR Installer Infrastructure: REST and PEAR Installer Classes

PEAR_Config

PEAR_Dependency2

PEAR_REST and PEAR_REST_10/PEAR_REST_11

PEAR_Downloader and PEAR_Downloader_Package

PEAR_Installer

Extending REST with Custom Information

Designing a Lightweight Installer Plug-In: The Code At Last

MyBlog_Template_IConfig and MyBlog_Template_Config

MyBlog_Template_REST

MyBlog_Template_Lister

MyBlog_Template_Fetcher

The MyBlog Post-Install Script

The Rest of the Fake MyBlog Package

Improvements for the Ambitious

Summary

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部