Jimdo.fastly

ansible-fastly

État du Build Ansible Galaxy

Module Ansible pour configurer des services dans Fastly

Installation

$ ansible-galaxy install Jimdo.fastly

Documentation

Options du module

Nom Requis Description Par défaut
name vrai Le nom unique du service à créer
fastly_api_key faux Clé API Fastly. Si elle n'est pas définie, la valeur de la variable d'environnement FASTLY_API_KEY est utilisée.
activate_new_version faux Configure si les nouvelles versions créées doivent être activées automatiquement vrai
domains vrai Liste des noms de domaine à servir comme points d'entrée pour votre service
backends vrai Liste des backends pour gérer les demandes de vos domaines
cache_settings faux Liste des paramètres de cache
conditions faux Liste des conditions
directors faux Liste des directeurs
gzips faux Liste des configurations gzip
headers faux Liste des en-têtes à manipuler pour chaque demande
healthchecks faux Liste des vérifications de santé pour l'usage des backends
request_settings faux Liste des paramètres de demande
response_objects faux Liste des objets de réponse
settings faux Objet de paramètres
s3s faux Liste des journaux S3
syslogs faux Liste des journaux Syslog
vcl_snippets faux Liste des extraits VCL

Backend

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
port faux entier 80
address vrai chaîne
ssl_hostname faux chaîne
ssl_ca_cert faux chaîne
ssl_cert_hostname faux chaîne
shield faux chaîne
healthcheck faux chaîne
weight faux entier 100
connect_timeout faux entier 1000
first_byte_timeout faux entier 15000
between_bytes_timeout faux entier 10000
error_threshold faux entier 0
max_conn faux entier 200

Paramètres de cache

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
action faux enum ('cache', 'pass', 'restart')
cache_condition faux chaîne
stale_ttl faux entier 0

Condition

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
comment faux chaîne
priority faux entier 0
statement vrai chaîne
type vrai enum ('REQUEST', 'PREFETCH', 'CACHE', 'RESPONSE')

Directeur

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
backends faux tableau de chaînes
capacity faux entier 100
comment faux chaîne ''
quorum faux entier 75
shield faux chaîne
type faux entier (un des [1,2,3,4]) 1
retries faux entier 5

En-tête

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
action faux enum ('set', 'append', 'delete', 'regex', 'regex_repeat') set
dst vrai chaîne
ignore_if_set faux entier (un des [0,1]) 0
priority faux entier 100
regex faux chaîne
request_condition faux chaîne
response_condition faux chaîne
cache_condition faux chaîne
src vrai chaîne
substitution faux chaîne
type vrai enum ('request', 'fetch', 'cache', 'response')

Vérification de santé

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
check_interval faux entier
comment faux chaîne ''
expected_response faux entier 200
host vrai chaîne
http_version faux chaîne 1.1
initial faux entier
method faux chaîne HEAD
path faux chaîne '/'
threshold faux entier
timeout faux entier
window faux entier

Paramètres de demande

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
request_condition faux chaîne
action faux enum ('lookup', 'pass')
xff faux enum ('clear', 'leave', 'append', 'append_all', 'overwrite')
hash_keys faux chaîne
default_host faux chaîne
max_stale_age faux entier 0
force_miss faux entier 0
force_ssl faux entier 0
timer_support faux entier 0
geo_headers faux entier 0
bypass_busy_wait faux entier 0

Objet de réponse

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
request_condition faux chaîne
response faux chaîne Ok
status faux entier 200
content faux chaîne
content_type faux chaîne

Extraits VCL

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
dynamic faux entier 0
type faux chaîne "init"
content vrai chaîne
priority faux entier 100

Journalisation S3

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
access_key faux chaîne
bucket_name faux chaîne
domain faux chaîne
format faux chaîne %{%Y-%m-%dT%H:%M:%S}t %h "%r" %>s %b
format_version faux entier 2
gzip_level faux entier 0
message_type faux enum ('classic', 'loggly', 'logplex', 'blank') classic
path faux chaîne /
period faux entier 3600
placement faux chaîne
redundancy faux chaîne
response_condition faux chaîne ''
secret_key faux chaîne
server_side_encryption_kms_key_id faux chaîne
server_side_encryption faux chaîne
timestamp_format faux chaîne %Y-%m-%dT%H

Journalisation Syslog

Documentation Fastly

Champ Requis Type Par défaut
name vrai chaîne
address vrai chaîne
format faux chaîne %{%Y-%m-%dT%H:%M:%S}t %h "%r" %>s %b
format_version faux entier 2
hostname faux chaîne
ipv4 faux chaîne
message_type faux enum ('classic', 'loggly', 'logplex', 'blank') classic
placement faux chaîne
port vrai int
response_condition faux chaîne ''
tls_ca_cert faux chaîne
tls_hostname faux chaîne
token faux chaîne
use_tls faux int 0

Paramètres

Documentation Fastly

Champ Requis Type Par défaut
general.default_ttl faux entier 3600

Exemples

Utilisation du module fastly_service dans un Playbook

---
- hosts: localhost
  connection: local
  gather_facts: False
  roles:
    - Jimdo.fastly
  tasks:
    - fastly_service:
        name: Service de redirection
        domains:
          - name: test1.example.net
            comment: domaine de redirection
        backends:
          - name: localhost
            port: 80
            address: 127.0.0.1
        headers:
          - name: Définir l'en-tête Location
            dst: http.Location
            type: response
            action: set
            src: http://test3.example.net req.url.path
            ignore_if_set: 0
            priority: 10
        response_objects:
          - name: Définir le code d'état 301
            status: 301
$ ansible-playbook -i localhost, fastly.yml

Développement

Exécution des tests

FASTLY_API_KEY=some_secret python -m unittest discover tests

Mise à jour des cassettes VCR

VCR.py est utilisé dans les tests pour simuler les requêtes HTTP.

Pour mettre à jour les cassettes, il suffit de supprimer le répertoire tests/fixtures/cassettes et d'exécuter les tests comme d'habitude. Vous devez utiliser une clé API Fastly valide pour l'enregistrement.

À propos du projet

Ansible module for Fastly

Installer
ansible-galaxy install Jimdo.fastly
Licence
mit
Téléchargements
56.9k
Propriétaire