আমি কয়েকটি রিলিজ অটোমেশন স্ক্রিপ্টগুলিতে কাজ করছি যা বিদ্যমান অ্যাপ্লিকেশন নির্বাহ করে যা নির্ধারিত কার্যগুলি আপডেট করতে পাওয়ারশেল ব্যবহার করে। আমার স্ক্রিপ্টে, আমি অ্যাপ্লিকেশনটির পাথ এবং ওয়ার্কিং ডিরেক্টরি সেট করতে পারি, তবে এটি পরিবর্তনগুলিতে টাস্কে ফিরে আসবে বলে মনে হয় না।
function CreateOrUpdateTaskRunner {
param (
[Parameter(Mandatory = $TRUE, Position = 1)][string]$PackageName,
[Parameter(Mandatory = $TRUE, Position = 2)][Version]$Version,
[Parameter(Mandatory = $TRUE, Position = 3)][string]$ReleaseDirectory
)
$taskScheduler = New-Object -ComObject Schedule.Service
$taskScheduler.Connect("localhost")
$taskFolder = $taskScheduler.GetFolder('\')
foreach ($task in $taskFolder.GetTasks(0)) {
# Check each action to see if it references the current package
foreach ($action in $task.Definition.Actions) {
# Ignore actions that do not execute code (e.g. send email, show message)
if ($action.Type -ne 0) {
continue
}
# Ignore actions that do not execute the specified task runner
if ($action.WorkingDirectory -NotMatch $application) {
continue
}
# Find the executable
$path = Join-Path $ReleaseDirectory -ChildPath $application | Join-Path -ChildPath $Version
$exe = Get-ChildItem $path -Filter "*.exe" | Select -First 1
# Update the action with the new working directory and executable
$action.WorkingDirectory = $exe.DirectoryName
$action.Path = $exe.FullName
}
}
}
আমি এখন পর্যন্ত ডকুমেন্টেশনে ( https://msdn.microsoft.com/en-us/library/windows/desktop/aa383607(v=vs.85).aspx ) তে একটি সুস্পষ্ট সংরক্ষণের ফাংশনটি খুঁজে পেতে অক্ষম । আমি কি এখানে ভুল পন্থা নিচ্ছি, এবং এক্সএমএল টাস্কটি নিয়ে গণ্ডগোলের দরকার আছে?
সংস্করণ ২.০ ( আমার ভার্সন-সম্পর্কিত দুর্দশাগুলির জন্য সার্ভারফল্ট / প্রশ্ন / 6666671১/২ দেখুন )) আপনার সমাধান যদি সার্ভার ২০০৮ আর 2 দ্বারা সমর্থিত পাওয়ারশেলের পরবর্তী সংস্করণে কাজ করে তবে সার্ভারগুলি আপগ্রেড করার জন্য এটি আমাকে অতিরিক্ত "ধাক্কা" দেবে :-)
—
ডেভিড কেভেনি
সার্ভার ২০০৮ আর ২ বর্তমানে ৪.০ পর্যন্ত সমর্থন করে। উইন্ডোজ পাওয়ারশেলের প্রয়োজনীয়তাগুলি দেখুন: টেকনেট.মাইক্রোসফট.ফেন
—
লিবেরি
Get-Host
খুঁজে পেতে ব্যবহার করুন ।