Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana Deadline Cloud memilih file yang akan diunggah
File dan direktori yang dipertimbangkan lampiran pekerjaan untuk diunggah ke Amazon S3 sebagai input ke pekerjaan Anda adalah:
-
Nilai dari semua parameter pekerjaan
PATH-type yang ditentukan dalam template pekerjaan bundel pekerjaan dengandataFlownilaiINatauINOUT. -
File dan direktori terdaftar sebagai input dalam file referensi aset bundel pekerjaan.
Jika Anda mengirimkan pekerjaan tanpa profil penyimpanan, semua file yang dipertimbangkan untuk diunggah akan diunggah. Jika Anda mengirimkan pekerjaan dengan profil penyimpanan, file tidak diunggah ke Amazon S3 jika berada di lokasi sistem file SHARED tipe profil penyimpanan yang juga merupakan lokasi sistem file yang diperlukan untuk antrian. Lokasi ini diharapkan tersedia di host pekerja yang menjalankan pekerjaan, jadi tidak perlu mengunggahnya ke S3.
Dalam contoh ini, Anda membuat lokasi sistem SHARED file WSAll di CloudShell lingkungan AWS Anda dan kemudian menambahkan file ke lokasi sistem file tersebut. Gunakan perintah berikut ini.
# Change the value of WSALL_ID to the identifier of the WSAll storage profile WSALL_ID=sp-00112233445566778899aabbccddeeffsudo mkdir -p /shared/common /shared/projects/project1 /shared/projects/project2 sudo chown -R cloudshell-user:cloudshell-user /shared for d in /shared/common /shared/projects/project1 /shared/projects/project2; do echo "File contents for $d" > ${d}/file.txt done
Selanjutnya, tambahkan file referensi aset ke bundel pekerjaan yang mencakup semua file yang Anda buat sebagai input untuk pekerjaan. Gunakan perintah berikut ini.
cat > ${HOME}/job_attachments_devguide/asset_references.yaml << EOF assetReferences: inputs: filenames: - /shared/common/file.txt directories: - /shared/projects/project1 - /shared/projects/project2 EOF
Selanjutnya, konfigurasikan Deadline Cloud CLI untuk mengirimkan pekerjaan dengan profil WSAll penyimpanan, lalu kirimkan bundel pekerjaan:
# Change the value of FARM_ID to your farm's identifier FARM_ID=farm-00112233445566778899aabbccddeeff# Change the value of QUEUE1_ID to queue Q1's identifier QUEUE1_ID=queue-00112233445566778899aabbccddeeff# Change the value of WSALL_ID to the identifier of the WSAll storage profile WSALL_ID=sp-00112233445566778899aabbccddeeffdeadline config set settings.storage_profile_id $WSALL_ID deadline bundle submit --farm-id $FARM_ID --queue-id $QUEUE1_ID job_attachments_devguide/
Deadline Cloud mengunggah dua file ke Amazon S3 saat Anda mengirimkan pekerjaan. Anda dapat mengunduh objek manifes untuk pekerjaan dari S3 untuk melihat file yang diunggah:
for manifest in $( \ aws deadline get-job --farm-id $FARM_ID --queue-id $QUEUE1_ID --job-id $JOB_ID \ --query 'attachments.manifests[].inputManifestPath' \ | jq -r '.[]' ); do echo "Manifest object: $manifest" aws s3 cp --quiet s3://$Q1_S3_BUCKET/DeadlineCloud/Manifests/$manifest /dev/stdout | jq . done
Dalam contoh ini, ada satu file manifes dengan konten berikut:
{
"hashAlg": "xxh128",
"manifestVersion": "2023-03-03",
"paths": [
{
"hash": "87cb19095dd5d78fcaf56384ef0e6241",
"mtime": 1721147454416085,
"path": "home/cloudshell-user/job_attachments_devguide/script.sh",
"size": 39
},
{
"hash": "af5a605a3a4e86ce7be7ac5237b51b79",
"mtime": 1721163773582362,
"path": "shared/projects/project2/file.txt",
"size": 44
}
],
"totalSize": 83
} Gunakan GetJob operasi untuk manifes untuk melihat bahwa itu rootPath adalah “/”.
aws deadline get-job --farm-id $FARM_ID --queue-id $QUEUE1_ID --job-id $JOB_ID --query 'attachments.manifests[*]'
Jalur root untuk set file input selalu merupakan subpath umum terpanjang dari file-file tersebut. Jika pekerjaan Anda dikirim dari sebagai Windows gantinya dan ada file input tanpa subpath umum karena berada di drive yang berbeda, Anda akan melihat jalur root terpisah pada setiap drive. Jalur dalam manifes selalu relatif terhadap jalur root manifes, sehingga file input yang diunggah adalah:
-
/home/cloudshell-user/job_attachments_devguide/script.sh— File skrip dalam bundel pekerjaan. -
/shared/projects/project2/file.txt- File di lokasi sistemSHAREDfile di profilWSAllpenyimpanan yang tidak ada dalam daftar lokasi sistem file yang diperlukan untuk antrianQ1.
File di lokasi sistem file FSCommon (/shared/common/file.txt) dan FS1 (/shared/projects/project1/file.txt) tidak ada dalam daftar. Alasannya adalah bahwa lokasi sistem file tersebut berada SHARED di profil WSAll penyimpanan dan keduanya berada dalam daftar lokasi sistem file yang diperlukan dalam antrianQ1.
Anda dapat melihat lokasi sistem file yang dipertimbangkan SHARED untuk pekerjaan yang dikirimkan dengan profil penyimpanan tertentu dengan GetStorageProfileForQueue operasi. Untuk menanyakan profil penyimpanan WSAll untuk antrian Q1 gunakan perintah berikut:
aws deadline get-storage-profile --farm-id $FARM_ID --storage-profile-id $WSALL_ID aws deadline get-storage-profile-for-queue --farm-id $FARM_ID --queue-id $QUEUE1_ID --storage-profile-id $WSALL_ID