Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengatur variabel lingkungan dalam lingkungan antrian
Banyak aplikasi dan kerangka kerja menggunakan variabel lingkungan untuk mengontrol pengaturan fitur, level logging, dan konfigurasi tampilan. Anda dapat menggunakan lingkungan Open Job Description (OpenJD)
Lingkup variabel lingkungan
AWS Deadline Cloud menerapkan variabel lingkungan dari lingkungan antrian yang Anda lampirkan ke antrian. Dalam template pekerjaan, Anda juga dapat menentukan variabel lingkungan pada tingkat pekerjaan dan langkah menggunakan lingkungan https://github.com/OpenJobDescription/openjd-specifications/wiki/2023-09-Template-Schemas#4-environment
-
Lingkungan antrian — Template yang Anda lampirkan ke antrian di Deadline Cloud. Variabel berlaku untuk semua pekerjaan yang dikirimkan ke antrian. Anda dapat mengatur variabel dengan
variablespeta untuk nilai tetap, atau menggunakan skrip untuk nilai dinamis. -
Lingkungan pekerjaan - Ditetapkan
jobEnvironmentsdi bawah dalam template pekerjaan. Variabel berlaku untuk semua langkah dan tugas dalam pekerjaan. Variabel tingkat pekerjaan menggantikan variabel tingkat antrian dengan nama yang sama. -
Lingkungan langkah - Ditetapkan
stepEnvironmentsdi bawah dalam template pekerjaan. Variabel hanya berlaku untuk tugas dalam langkah itu. Variabel tingkat langkah menggantikan variabel tingkat pekerjaan atau tingkat antrian dengan nama yang sama.
Mengatur variabel dalam lingkungan antrian
Anda dapat mengatur variabel lingkungan dalam lingkungan antrian menggunakan variables peta untuk nilai tetap, atau menggunakan script dengan onEnter tindakan untuk nilai dinamis.
Template lingkungan antrian berikut menggunakan variables peta untuk mengatur QT_QPA_PLATFORM variabeloffscreen, yang memungkinkan aplikasi yang menggunakan Qt Framework
specificationVersion: 'environment-2023-09'
environment:
name: QtOffscreen
variables:
QT_QPA_PLATFORM: offscreen
Untuk nilai dinamis, seperti memodifikasi PATH atau mengaktifkan lingkungan virtual, gunakan skrip yang mencetak baris dalam format openjd_env: untuk stdout. A VAR=valueopenjd_env: walan diperlukan. Menggunakanecho,export, atau mekanisme shell lainnya tanpa awalan tidak menyebarkan variabel ke pekerjaan dan tugas.
Template lingkungan antrian berikut menetapkan QT_QPA_PLATFORM variabel menggunakan skrip.
specificationVersion: 'environment-2023-09'
environment:
name: QtOffscreen
script:
actions:
onEnter:
command: bash
args:
- "{{Env.File.Enter}}"
embeddedFiles:
- name: Enter
type: TEXT
data: |
#!/bin/env bash
set -euo pipefail
echo "openjd_env: QT_QPA_PLATFORM=offscreen"
Untuk melampirkan lingkungan antrian ke antrian Anda, gunakan konsol Deadline Cloud atau AWS CLI. Untuk informasi selengkapnya, lihat Membuat lingkungan antrian di Panduan Pengguna Dead AWS line Cloud. Per AWS CLI intah berikut membuat lingkungan antrian dari file template.
aws deadline create-queue-environment \ --farm-idFARM_ID\ --queue-idQUEUE_ID\ --priority 1 \ --template-type YAML \ --template file://my-queue-env.yaml
Untuk contoh yang lebih kompleks, seperti membuat dan mengaktifkan lingkungan virtual conda, lihat contoh lingkungan antrian Dead line Cloud
Mengatur variabel dalam template pekerjaan
Dalam template pekerjaan, tambahkan variables peta ke stepEnvironments entri jobEnvironments atau. Setiap entri adalah pasangan kunci-nilai di mana kunci adalah nama variabel dan nilainya adalah nilai variabel.
Template pekerjaan berikut menetapkan variabel QT_QPA_PLATFORM lingkungan keoffscreen, yang memungkinkan aplikasi yang menggunakan Qt Framework
specificationVersion: 'jobtemplate-2023-09'
name: MyJob
jobEnvironments:
- name: JobEnv
variables:
QT_QPA_PLATFORM: offscreen
Anda dapat mengatur beberapa variabel dalam definisi lingkungan tunggal.
jobEnvironments:
- name: JobEnv
variables:
JOB_VERBOSITY: MEDIUM
JOB_PROJECT_ID: my-project-id
JOB_ENDPOINT_URL: https://my-host-name/my/path
QT_QPA_PLATFORM: offscreen
Anda dapat mereferensikan parameter pekerjaan dalam nilai variabel dengan menggunakan sin {{Param. taks.ParameterName}}
jobEnvironments:
- name: JobEnv
variables:
JOB_EXAMPLE_PARAM: "{{Param.ExampleParam}}"
Untuk mengganti variabel tingkat pekerjaan untuk langkah tertentu, tentukan stepEnvironments entri dengan nama variabel yang sama. Contoh berikut mendefinisikan JOB_PROJECT_ID pada tingkat pekerjaan dengan nilaiproject-12, dan kemudian mengganti nilai pada tingkat langkah denganstep-project-12. Tugas dalam langkah menggunakan nilai tingkat langkah.
specificationVersion: 'jobtemplate-2023-09'
name: MyJob
jobEnvironments:
- name: JobEnv
variables:
JOB_PROJECT_ID: project-12
steps:
- name: MyStep
stepEnvironments:
- name: StepEnv
variables:
JOB_PROJECT_ID: step-project-12
Cobalah: Menjalankan sampel variabel lingkungan
Repositori sampel Deadline Cloud menyer takan bundel pekerjaan yang menunjukkan pengaturan dan tampilan variabel lingkungan
Prasyarat
-
Jika Anda tidak memiliki farm Deadline Cloud dengan antrian dan armada Linux terkait, ikuti pengalaman orientasi terpandu di konsol Deadline Cloud
untuk membuatnya dengan pengaturan default. -
Jika Anda tidak memiliki monitor Deadline Cloud CLI dan Dead AWS line Cloud di workstation Anda, ikuti langkah-langkah di Menyiapkan pengi rim Deadline Cloud.
-
Gunakan
gituntuk mengkloning GitHub repositori sampel Dead line Cloud. git clone https://github.com/aws-deadline/deadline-cloud-samples.git cd deadline-cloud-samples/job_bundles
Menjalankan sampel
-
Gunakan Deadline Cloud CLI untuk mengirimkan
job_env_varssampel.deadline bundle submit job_env_vars -
Di monitor Deadline Cloud, pilih pekerjaan baru untuk memantau kemajuannya. Setelah Linux armada yang terkait dengan antrian memiliki pekerja yang tersedia, pekerjaan selesai dalam beberapa detik. Pilih tugas, lalu pilih Lihat log di menu kanan atas panel tugas.
Membandingkan tindakan sesi dengan definisi mereka
Tampilan log menunjukkan tiga tindakan sesi. Buka berkas job_env_vars/template .yaml
-
Pilih tindakan Luncur JobEnv kan sesi. Output log menunjukkan variabel lingkungan tingkat pekerjaan yang sedang diatur.
Setting: JOB_VERBOSITY=MEDIUM Setting: JOB_EXAMPLE_PARAM=An example parameter value Setting: JOB_PROJECT_ID=project-12 Setting: JOB_ENDPOINT_URL=https://internal-host-name/some/path Setting: QT_QPA_PLATFORM=offscreenBaris berikut dari template pekerjaan mendefinisikan lingkungan ini.
jobEnvironments: - name: JobEnv variables: JOB_VERBOSITY: MEDIUM JOB_EXAMPLE_PARAM: "{{Param.ExampleParam}}" JOB_PROJECT_ID: project-12 JOB_ENDPOINT_URL: https://internal-host-name/some/path QT_QPA_PLATFORM: offscreen -
Pilih tindakan Luncur StepEnv kan sesi. Output log menunjukkan variabel tingkat langkah, termasuk yang diganti.
JOB_PROJECT_IDSetting: STEP_VERBOSITY=HIGH Setting: JOB_PROJECT_ID=step-project-12Baris berikut dari template pekerjaan mendefinisikan lingkungan ini.
stepEnvironments: - name: StepEnv variables: STEP_VERBOSITY: HIGH JOB_PROJECT_ID: step-project-12 -
Pilih tindakan sesi jalankan tugas. Output log menunjukkan variabel lingkungan gabungan yang tersedia untuk tugas. Perhatikan bahwa
JOB_PROJECT_IDmenggunakan nilaistep-project-12tingkat langkah.Environment variables starting with JOB_*: JOB_ENDPOINT_URL=https://internal-host-name/some/path JOB_EXAMPLE_PARAM='An example parameter value' JOB_PROJECT_ID=step-project-12 JOB_VERBOSITY=MEDIUM Environment variables starting with STEP_*: STEP_VERBOSITY=HIGH