| PUPPET-MODULE(8) | OpenVox manual | PUPPET-MODULE(8) |
نام (NAME)
puppet-module - ساخت، نصب و جستجوی ماژولها در Puppet Forge
خلاصه دستور (SYNOPSIS)
puppet module اقدام [--environment production ] [--modulepath ]
توضیحات (DESCRIPTION)
این زیردستور میتواند ماژولها را از Puppet Forge (مخزنی از کدهای پاپت ارائهشده توسط کاربران) پیدا، نصب و مدیریت کند. همچنین میتواند ماژولهای خالی تولید کند و ماژولهای توسعهیافته محلی را برای انتشار در Forge آماده سازد.
گزینهها (OPTIONS)
توجه داشته باشید که هر تنظیمی که در فایل پیکربندی معتبر باشد، به عنوان یک آرگومان بلند نیز معتبر است، هرچند ممکن است به اقدام فعلی مربوط باشد یا نباشد. برای مثال، server و run_mode تنظیمات معتبری هستند، بنابراین میتوانید --server <servername> یا --run_mode <runmode> را به عنوان یک آرگومان مشخص کنید.
برای فهرست کامل پارامترهای قابل قبول، مستندات فایل پیکربندی را در نشانی https://puppet.com/docs/puppet/latest/configuration.html ببینید. فهرستی حاوی توضیحات از تمام گزینههای پیکربندی را نیز میتوان با اجرای puppet به همراه --genconfig تولید کرد.
- --render-as FORMAT
- قالبی که خروجی در آن ارائه میشود. متداولترین قالبها عبارتند از json، s (رشته)، yaml و console، اما گزینههای دیگری مانند dot نیز گاهی در دسترس هستند.
- --verbose
- ثبت وقایع با جزئیات کامل.
- --debug
- ثبت اطلاعات اشکالزدایی.
- --environment production
- محیطی که پاپت در آن اجرا میشود. برای کلاینتها، نظیر puppet agent، این گزینه خود محیط را تعیین میکند که پاپت از آن برای یافتن ماژولها و بسیاری موارد دیگر استفاده میکند. برای سرورها، نظیر puppet server، محیط پیشفرضی را برای گرههایی که پاپت شناختی از آنها ندارد فراهم میسازد.
- هنگام تعریف محیط در بخش [agent]، این به محیطی اشاره دارد که عامل از سرور اصلی درخواست میکند. نیازی نیست که محیط در سیستمفایل محلی وجود داشته باشد زیرا عامل آن را از سرور اصلی دریافت میکند. این تعریف هنگام اجرای puppet agent استفاده میشود.
- هنگام تعریف در بخش [user]، محیط به مسیری اشاره دارد که پاپت برای جستجوی کدها و ماژولهای مربوط به اجرای خود به کار میبرد. این تعریف مستلزم وجود محلی محیط در سیستمفایلی است که puppet در آن اجرا میشود. زیردستورهای پاپت، از جمله puppet module و puppet apply، از این تعریف استفاده میکنند.
- با توجه به اینکه بافتار و اثرات بسته به بخش پیکربندی (https://puppet.com/docs/puppet/latest/config_file_main.html#config-sections) که تنظیم environment در آن تعریف شده متفاوت است، آن را به طور سراسری تنظیم نکنید.
- --modulepath
- مسیر جستجوی ماژولها، به صورت فهرستی از دایرکتوریها که با نویسه جداکننده مسیر سیستم از هم جدا شدهاند. (جداکننده مسیر POSIX علامت ':' و جداکننده مسیر ویندوز ';' است.)
- تنظیم یک مقدار سراسری برای modulepath در puppet.conf مجاز نیست (اما میتوان آن را از خط فرمان بازنویسی کرد). لطفاً در عوض از محیطهای دایرکتوری استفاده کنید. اگر نیاز به استفاده از مقداری غیر از مسیر پیشفرض ماژولها یعنی <ACTIVE ENVIRONMENT'S MODULES DIR>:$basemodulepath دارید، میتوانید modulepath را در environment.conf تنظیم کنید. برای اطلاعات بیشتر پیوند https://puppet.com/docs/puppet/latest/environments_about.html را ببینید.
اقدامات (ACTIONS)
- puppet module changes path
- DESCRIPTION
- نمایش فایلهایی از یک ماژول که پس از نصب تغییر یافتهاند. این اقدام فایلهای روی دیسک را با چکسامهای MD5 موجود در checksums.json یا در صورت عدم وجود آن در metadata.json مقایسه میکند.
- RETURNS
- آرایهای از رشتهها که مسیر فایلهای تغییریافته را نشان میدهند.
- puppet module install [--force | -f] [--target-dir DIR | -i DIR] [--ignore-dependencies] [--version VER | -v VER] name
- DESCRIPTION
- یک ماژول را از Puppet Forge یا از یک فایل آرشیو انتشار نصب میکند. نکته: نصب ماژول از چکسامهای MD5 استفاده میکند که در سیستمهای با FIPS فعال ممنوع است.
- ماژول مشخصشده در دایرکتوری تعیینشده با گزینه --target-dir نصب خواهد شد که به طور پیشفرض اولین دایرکتوری در modulepath است.
- OPTIONS --force | -f - اجبار به بازنویسی ماژول موجود در صورت وجود. این گزینه مستلزم --ignore-dependencies است.
- --ignore-dependencies - عدم تلاش برای نصب وابستگیها. توسط --force اعمال میشود.
- --target-dir DIR | -i DIR - دایرکتوریای که ماژولها در آن نصب میشوند؛ پیشفرض اولین دایرکتوری در modulepath است.
- مشخص کردن این گزینه دایرکتوری نصب را تغییر داده و از modulepath موجود هنگام بررسی وابستگیها استفاده میکند. اگر مایلید مجموعه متفاوتی از دایرکتوریها را برای وابستگیها بررسی کنید، باید از گزینههای --environment یا --modulepath نیز استفاده کنید.
- --version VER | -v VER - نسخه ماژول برای نصب؛ میتواند یک نسخه دقیق یا رشته نیازمندی مانند '>= 1.0.3' باشد. پیشفرض آخرین نسخه است.
- RETURNS
- شیء Pathname که مسیر ماژول نصبشده را نشان میدهد.
- list - فهرست کردن ماژولهای نصبشده
- SYNOPSIS
- puppet module list [--tree]
- DESCRIPTION
- ماژولهای نصبشده پاپت را فهرست میکند. بهطور پیشفرض، این اقدام modulepath را از بلوک [main] فایل puppet.conf پویش میکند؛ از گزینه --modulepath برای تغییر دایرکتوریهای مورد پویش استفاده کنید.
- خروجی این اقدام شامل اطلاعات متادیتای ماژول، از جمله شماره نسخهها و وابستگیهای برآوردهنشده ماژول است.
- OPTIONS --tree - نمایش وابستگیها به صورت نمای درختی
- RETURNS
- جدول درهمسازی (Hash) از مسیرها به اشیاء ماژول
- uninstall - حذف نصب یک ماژول پاپت.
- SYNOPSIS
- puppet module uninstall [--force | -f] [--ignore-changes | -c] [--version=] name
- DESCRIPTION
- یک ماژول پاپت را از modulepath (یا یک دایرکتوری هدف خاص) حذف میکند. نکته: حذف نصب ماژول از چکسامهای MD5 استفاده میکند که در سیستمهای با FIPS فعال ممنوع است.
- OPTIONS --force | -f - اجبار به حذف نصب ماژول نصبشده حتی در صورت وجود تغییرات محلی یا احتمال شکستن وابستگیها.
- --ignore-changes | -c - حذف نصب یک ماژول نصبشده حتی اگر تغییرات محلی در آن ایجاد شده باشد. (توسط --force اعمال میشود.)
- --version= - نسخه ماژول برای حذف نصب. هنگام استفاده از این گزینه، ماژولی مطابق با نسخه مشخصشده باید نصب شده باشد وگرنه خطا رخ میدهد.
- RETURNS
- جدول درهمسازی از اشیاء ماژول که ماژولهای حذفشده و خطاهای مرتبط را نشان میدهد.
- upgrade - ارتقای یک ماژول پاپت.
- SYNOPSIS
- puppet module upgrade [--force | -f] [--ignore-dependencies] [--ignore-changes | -c] [--version=] name
- DESCRIPTION
- یک ماژول پاپت را ارتقا میدهد. نکته: ارتقای ماژول از چکسامهای MD5 استفاده میکند که در سیستمهای با FIPS فعال ممنوع است.
- OPTIONS --force | -f - اجبار به ارتقای یک ماژول نصبشده حتی در صورت وجود تغییرات محلی یا احتمال شکستن وابستگیها. مستلزم --ignore-dependencies است.
- --ignore-changes | -c - ارتقای یک ماژول نصبشده حتی اگر تغییرات محلی در آن وجود داشته باشد. (توسط --force اعمال میشود.)
- --ignore-dependencies - تلاش نکردن برای نصب وابستگیها. توسط --force اعمال میشود.
- --version= - نسخه ماژول برای ارتقا به آن.
- RETURNS
- جدول درهمسازی (Hash)
مثالها (EXAMPLES)
changes
نمایش فایلهای تغییریافته یک ماژول نصبشده:
$ puppet module changes /etc/puppetlabs/code/modules/vcsrepo/ warning: 1 files modified lib/puppet/provider/vcsrepo.rb
install
نصب یک ماژول:
$ puppet module install puppetlabs-vcsrepo Preparing to install into /etc/puppetlabs/code/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)
نصب یک ماژول در محیطی مشخص:
$ puppet module install puppetlabs-vcsrepo --environment development Preparing to install into /etc/puppetlabs/code/environments/development/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /etc/puppetlabs/code/environments/development/modules └── puppetlabs-vcsrepo (v0.0.4)
نصب نسخهای خاص از ماژول:
$ puppet module install puppetlabs-vcsrepo -v 0.0.4 Preparing to install into /etc/puppetlabs/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)
نصب یک ماژول در دایرکتوری مشخص:
$ puppet module install puppetlabs-vcsrepo --target-dir=/opt/puppetlabs/puppet/modules Preparing to install into /opt/puppetlabs/puppet/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /opt/puppetlabs/puppet/modules └── puppetlabs-vcsrepo (v0.0.4)
نصب ماژول در دایرکتوری مشخص و بررسی وابستگیها در سایر دایرکتوریها:
$ puppet module install puppetlabs-vcsrepo --target-dir=/opt/puppetlabs/puppet/modules --modulepath /etc/puppetlabs/code/modules Preparing to install into /opt/puppetlabs/puppet/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /opt/puppetlabs/puppet/modules └── puppetlabs-vcsrepo (v0.0.4)
نصب یک ماژول از یک آرشیو انتشار:
$ puppet module install puppetlabs-vcsrepo-0.0.4.tar.gz Preparing to install into /etc/puppetlabs/code/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)
نصب ماژول از یک آرشیو انتشار و نادیده گرفتن وابستگیها:
$ puppet module install puppetlabs-vcsrepo-0.0.4.tar.gz --ignore-dependencies Preparing to install into /etc/puppetlabs/code/modules .. Downloading from https://forgeapi.puppet.com .. Installing -rrupt .. /etc/puppetlabs/code/modules └── puppetlabs-vcsrepo (v0.0.4)
list
فهرست کردن ماژولهای نصبشده:
$ puppet module list /etc/puppetlabs/code/modules ├── bodepd-create_resources (v0.0.1) ├── puppetlabs-bacula (v0.0.2) ├── puppetlabs-mysql (v0.0.1) ├── puppetlabs-sqlite (v0.0.1) └── puppetlabs-stdlib (v2.2.1) /opt/puppetlabs/puppet/modules (no modules installed)
فهرست کردن ماژولهای نصبشده در نمای درختی:
$ puppet module list --tree /etc/puppetlabs/code/modules └─┬ puppetlabs-bacula (v0.0.2) ├── puppetlabs-stdlib (v2.2.1) ├─┬ puppetlabs-mysql (v0.0.1) │ └── bodepd-create_resources (v0.0.1) └── puppetlabs-sqlite (v0.0.1) /opt/puppetlabs/puppet/modules (no modules installed)
فهرست کردن ماژولهای نصبشده از یک محیط مشخص:
$ puppet module list --environment production /etc/puppetlabs/code/modules ├── bodepd-create_resources (v0.0.1) ├── puppetlabs-bacula (v0.0.2) ├── puppetlabs-mysql (v0.0.1) ├── puppetlabs-sqlite (v0.0.1) └── puppetlabs-stdlib (v2.2.1) /opt/puppetlabs/puppet/modules (no modules installed)
فهرست کردن ماژولهای نصبشده از یک modulepath مشخص:
$ puppet module list --modulepath /opt/puppetlabs/puppet/modules /opt/puppetlabs/puppet/modules (no modules installed)
uninstall
حذف نصب یک ماژول:
$ puppet module uninstall puppetlabs-ssh Removed /etc/puppetlabs/code/modules/ssh (v1.0.0)
حذف نصب یک ماژول از یک دایرکتوری خاص:
$ puppet module uninstall puppetlabs-ssh --modulepath /opt/puppetlabs/puppet/modules Removed /opt/puppetlabs/puppet/modules/ssh (v1.0.0)
حذف نصب یک ماژول از یک محیط خاص:
$ puppet module uninstall puppetlabs-ssh --environment development Removed /etc/puppetlabs/code/environments/development/modules/ssh (v1.0.0)
حذف نصب یک نسخه خاص از ماژول:
$ puppet module uninstall puppetlabs-ssh --version 2.0.0 Removed /etc/puppetlabs/code/modules/ssh (v2.0.0)
upgrade
ارتقای یک ماژول نصبشده به آخرین نسخه:
$ puppet module upgrade puppetlabs-apache /etc/puppetlabs/puppet/modules └── puppetlabs-apache (v1.0.0 -> v2.4.0)
ارتقای یک ماژول نصبشده به یک نسخه مشخص:
$ puppet module upgrade puppetlabs-apache --version 2.1.0 /etc/puppetlabs/puppet/modules └── puppetlabs-apache (v1.0.0 -> v2.1.0)
ارتقای یک ماژول نصبشده برای یک محیط خاص:
$ puppet module upgrade puppetlabs-apache --environment test /etc/puppetlabs/code/environments/test/modules └── puppetlabs-apache (v1.0.0 -> v2.4.0)
حق نشر و مجوز (COPYRIGHT AND LICENSE)
حق نشر ۲۰۱۲ توسط Puppet Inc., Vox Pupuli تحت مجوز Apache 2؛ فایل COPYING را ببینید.
| January 2025 | Vox Pupuli |