J'essaie d'invalider un site Web statique complet. La commande suivante ne semble pas invalider /index.html
et donne une étrange sortie d'éléments à invalider, comme indiqué ci-dessous. Ce comportement de l'AWS CLI est-il normal ou manque-t-il quelque chose? Merci!
aws cloudfront create-invalidation --distribution-id $DISTRIBUTION_ID --paths /*
Production:
{
"Invalidation": {
"Status": "InProgress",
"InvalidationBatch": {
"Paths": {
"Items": [
"/lib32",
"/home",
"/vmlinuz",
"/core",
"/proc",
"/var",
"/dev",
"/usr",
"/etc",
"/initrd.img",
"/cdrom",
"/lost+found",
"/root",
"/tmp",
"/lib",
"/dead.letter",
"/lib64",
"/boot",
"/sys",
"/run",
"/bin",
"/sbin",
"/mnt",
"/opt",
"/snap",
"/media",
"/copyright",
"/srv"
],
"Quantity": 28
},
C'est votre Shell qui fait expansion des noms de fichiers locaux .
C'est ce que vous demandez essentiellement depuis le *
n'est pas cité.
Soit En précisant --paths '*'
ou--paths '/*'
¹ fera ce que vous voulez. La citation du caractère générique le conserve sous la forme d'une chaîne littérale plutôt que de ce que vous voyez.
¹La console CloudFront vous permet de spécifier soit *
ou /*
pour invalider la distribution entière; en revanche, la CLI attend /*
. Cela est dû au fait que l'API sous-jacente attend également /*
. Lorsque vous utilisez *
dans la console, la barre oblique principale est ajoutée silencieusement par la console avant que la console ne fasse la demande à l'API CloudFront.