Aws-cli: Kesalahan penguraian parameter '--targets': Diharapkan: '=', diterima: ''' untuk input: '{"Key":"tag:Name","Nilai":["LDAPHost_env-sandbox"]}'

Dibuat pada 4 Jan 2018  ·  3Komentar  ·  Sumber: aws/aws-cli

Saya menggunakan AWS EC2 SSM untuk melakukan penerapan otomatis dari pipa pembangunan Jenkins. Dokumen SSM untuk menjalankan skrip shell disediakan dalam dokumen SSM. Pipa jenkins membentuk perintah berikut:

aws ssm send-command --document-name "Testdeployment" --targets '{"Key":"tag:Name","Values":["LDAPHost_env-sandbox"]}' --max-concurrency "1" --max-errors "1" --parameters '{"bucketName":["s3://testBucket"],"workingDirectory":["/tmp/"],"releaseName":["sandbox-v1"]}' --timeout-seconds 3600 --output-s3-bucket-name "testBucket" --output-s3-key-prefix "sandbox-v1/test/ssm/log" --region eu-west-1

Pesan eror:

Error parsing parameter '--targets': Expected: '=', received: ''' for input:
'{"Key":"tag:Name","Values":["LDAPHost_env-sandbox"]}'

Konfigurasi:
OS: Ubuntu 16.04.2 LTS
AWS CLI: 1.11.122
Python: 2.7.12
Linux: 4.4.0-1044-aws
botocore: 1.5.85

closing-soon

Komentar yang paling membantu

Ini terlihat seperti masalah kutipan dengan jenkins. Ketika saya menjalankan perintah Anda langsung di terminal, saya tidak mendapatkan kesalahan itu:

$ aws ssm send-command --document-name "Testdeployment" --targets '{"Key":"tag:Name","Values":["LDAPHost_env-sandbox"]}' --max-concurrency "1" --max-errors "1" --parameters '{"bucketName":["s3://testBucket"],"workingDirectory":["/tmp/"],"releaseName":["sandbox-v1"]}' --timeout-seconds 3600 --output-s3-bucket-name "testBucket" --output-s3-key-prefix "sandbox-v1/test/ssm/log" --region eu-west-1

An error occurred (InvalidDocument) when calling the SendCommand operation:

Untuk men-debug masalah ini, jalankan perintah dengan --debug dan Anda akan melihat string persis yang diterima CLI:

2018-01-04 13:27:37,186 - MainThread - awscli.clidriver - DEBUG - CLI version: aws-cli/1.14.18 Python/2.7.14 Darwin/16.7.0 botocore/1.8.22
2018-01-04 13:27:37,186 - MainThread - awscli.clidriver - DEBUG - Arguments entered to CLI: ['ssm', 'send-command', '--document-name', 'Testdeployment', '--targets', '{"Key":"tag:Name","Values":["LDAPHost_env-sandbox"]}', '--max-concurrency', '1', '--max-errors', '1', '--parameters', '{"bucketName":["s3://testBucket"],"workingDirectory":["/tmp/"],"releaseName":["sandbox-v1"]}', '--timeout-seconds', '3600', '--output-s3-bucket-name', 'testBucket', '--output-s3-key-prefix', 'sandbox-v1/test/ssm/log', '--region', 'eu-west-1', '--debug']

Saya menduga apa yang akan Anda lihat adalah bahwa kutipan tunggal diteruskan ke CLI, sedangkan biasanya ketika Anda menjalankan perintah secara interaktif, Anda Shell akan menghapus tanda kutip tunggal sebelum meneruskannya ke python.

Jika Anda masih melihat masalah tersebut, harap posting log debug Anda dengan baris "Arguments into CLI" dan saya akan memeriksanya lagi.

Semua 3 komentar

Ini terlihat seperti masalah kutipan dengan jenkins. Ketika saya menjalankan perintah Anda langsung di terminal, saya tidak mendapatkan kesalahan itu:

$ aws ssm send-command --document-name "Testdeployment" --targets '{"Key":"tag:Name","Values":["LDAPHost_env-sandbox"]}' --max-concurrency "1" --max-errors "1" --parameters '{"bucketName":["s3://testBucket"],"workingDirectory":["/tmp/"],"releaseName":["sandbox-v1"]}' --timeout-seconds 3600 --output-s3-bucket-name "testBucket" --output-s3-key-prefix "sandbox-v1/test/ssm/log" --region eu-west-1

An error occurred (InvalidDocument) when calling the SendCommand operation:

Untuk men-debug masalah ini, jalankan perintah dengan --debug dan Anda akan melihat string persis yang diterima CLI:

2018-01-04 13:27:37,186 - MainThread - awscli.clidriver - DEBUG - CLI version: aws-cli/1.14.18 Python/2.7.14 Darwin/16.7.0 botocore/1.8.22
2018-01-04 13:27:37,186 - MainThread - awscli.clidriver - DEBUG - Arguments entered to CLI: ['ssm', 'send-command', '--document-name', 'Testdeployment', '--targets', '{"Key":"tag:Name","Values":["LDAPHost_env-sandbox"]}', '--max-concurrency', '1', '--max-errors', '1', '--parameters', '{"bucketName":["s3://testBucket"],"workingDirectory":["/tmp/"],"releaseName":["sandbox-v1"]}', '--timeout-seconds', '3600', '--output-s3-bucket-name', 'testBucket', '--output-s3-key-prefix', 'sandbox-v1/test/ssm/log', '--region', 'eu-west-1', '--debug']

Saya menduga apa yang akan Anda lihat adalah bahwa kutipan tunggal diteruskan ke CLI, sedangkan biasanya ketika Anda menjalankan perintah secara interaktif, Anda Shell akan menghapus tanda kutip tunggal sebelum meneruskannya ke python.

Jika Anda masih melihat masalah tersebut, harap posting log debug Anda dengan baris "Arguments into CLI" dan saya akan memeriksanya lagi.

Terima kasih. Itu memecahkan masalah.

Masalah yang sama, ini sudah ketinggalan zaman -

Apakah halaman ini membantu?
0 / 5 - 0 peringkat