Jimdo.fastly

ansible-fastly

Estado de construcción Ansible Galaxy

Módulo de Ansible para configurar servicios en Fastly

Instalación

$ ansible-galaxy install Jimdo.fastly

Documentación

Opciones del módulo

Nombre Requerido Descripción Por defecto
name verdadero El nombre único para el servicio que se va a crear
fastly_api_key falso Clave de API de Fastly. Si no se establece, se utilizará el valor de la variable de entorno FASTLY_API_KEY.
activate_new_version falso Configura si las nuevas versiones creadas deben ser activadas automáticamente verdadero
domains verdadero Lista de nombres de dominio que servirán como puntos de entrada para su servicio
backends verdadero Lista de backends para atender las solicitudes de sus dominios
cache_settings falso Lista de configuraciones de caché
conditions falso Lista de condiciones
directors falso Lista de directores
gzips falso Lista de configuraciones gzip
headers falso Lista de encabezados a manipular para cada solicitud
healthchecks falso Lista de verificaciones de estado para el uso de backend
request_settings falso Lista de configuraciones de solicitud
response_objects falso Lista de objetos de respuesta
settings falso Objeto de configuraciones
s3s falso Lista de registradores S3
syslogs falso Lista de registradores Syslog
vcl_snippets falso Lista de fragmentos VCL

Backend

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
port falso entero 80
address verdadero cadena
ssl_hostname falso cadena
ssl_ca_cert falso cadena
ssl_cert_hostname falso cadena
shield falso cadena
healthcheck falso cadena
weight falso entero 100
connect_timeout falso entero 1000
first_byte_timeout falso entero 15000
between_bytes_timeout falso entero 10000
error_threshold falso entero 0
max_conn falso entero 200

Configuraciones de Caché

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
action falso enum ('cache', 'pass', 'restart')
cache_condition falso cadena
stale_ttl falso entero 0

Condición

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
comment falso cadena
priority falso entero 0
statement verdadero cadena
type verdadero enum ('REQUEST', 'PREFETCH', 'CACHE', 'RESPONSE')

Director

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
backends falso arreglo de cadenas
capacity falso entero 100
comment falso cadena ''
quorum falso entero 75
shield falso cadena
type falso entero (uno de [1,2,3,4]) 1
retries falso entero 5

Encabezado

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
action falso enum ('set', 'append', 'delete', 'regex', 'regex_repeat') set
dst verdadero cadena
ignore_if_set falso entero (uno de [0,1]) 0
priority falso entero 100
regex falso cadena
request_condition falso cadena
response_condition falso cadena
cache_condition falso cadena
src verdadero cadena
substitution falso cadena
type verdadero enum ('request', 'fetch', 'cache', 'response')

Verificación de Estado

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
check_interval falso entero
comment falso cadena ''
expected_response falso entero 200
host verdadero cadena
http_version falso cadena 1.1
initial falso entero
method falso cadena HEAD
path falso cadena '/'
threshold falso entero
timeout falso entero
window falso entero

Configuración de Solicitud

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
request_condition falso cadena
action falso enum ('lookup', 'pass')
xff falso enum ('clear', 'leave', 'append', 'append_all', 'overwrite')
hash_keys falso cadena
default_host falso cadena
max_stale_age falso entero 0
force_miss falso entero 0
force_ssl falso entero 0
timer_support falso entero 0
geo_headers falso entero 0
bypass_busy_wait falso entero 0

Objeto de Respuesta

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
request_condition falso cadena
response falso cadena Ok
status falso entero 200
content falso cadena
content_type falso cadena

Fragmentos VCL

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
dynamic falso entero 0
type falso cadena "init"
content verdadero cadena
priority falso entero 100

Registro S3

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
access_key falso cadena
bucket_name falso cadena
domain falso cadena
format falso cadena %{%Y-%m-%dT%H:%M:%S}t %h "%r" %>s %b
format_version falso entero 2
gzip_level falso entero 0
message_type falso enum ('classic', 'loggly', 'logplex', 'blank') classic
path falso cadena /
period falso entero 3600
placement falso cadena
redundancy falso cadena
response_condition falso cadena ''
secret_key falso cadena
server_side_encryption_kms_key_id falso cadena
server_side_encryption falso cadena
timestamp_format falso cadena %Y-%m-%dT%H

Registro Syslog

Documentación de Fastly

Campo Requerido Tipo Por defecto
name verdadero cadena
address verdadero cadena
format falso cadena %{%Y-%m-%dT%H:%M:%S}t %h "%r" %>s %b
format_version falso entero 2
hostname falso cadena
ipv4 falso cadena
message_type falso enum ('classic', 'loggly', 'logplex', 'blank') classic
placement falso cadena
port verdadero entero
response_condition falso cadena ''
tls_ca_cert falso cadena
tls_hostname falso cadena
token falso cadena
use_tls falso entero 0

Configuraciones

Documentación de Fastly

Campo Requerido Tipo Por defecto
general.default_ttl falso entero 3600

Ejemplos

Usando el módulo fastly_service en un Playbook

---
- hosts: localhost
  connection: local
  gather_facts: False
  roles:
    - Jimdo.fastly
  tasks:
    - fastly_service:
        name: Servicio de Redirección
        domains:
          - name: test1.example.net
            comment: dominio de redirección
        backends:
          - name: localhost
            port: 80
            address: 127.0.0.1
        headers:
          - name: Establecer encabezado de ubicación
            dst: http.Location
            type: response
            action: set
            src: http://test3.example.net req.url.path
            ignore_if_set: 0
            priority: 10
        response_objects:
          - name: Establecer código de estado 301
            status: 301
$ ansible-playbook -i localhost, fastly.yml

Desarrollo

Ejecutando las pruebas

FASTLY_API_KEY=some_secret python -m unittest discover tests

Actualizando las cintas de VCR

VCR.py se utiliza en las pruebas para simular solicitudes HTTP.

Para actualizar las cintas, simplemente elimine el directorio tests/fixtures/cassettes y ejecute las pruebas como de costumbre. Debe utilizar una clave API de Fastly válida para que la grabación funcione.

Acerca del proyecto

Ansible module for Fastly

Instalar
ansible-galaxy install Jimdo.fastly
Licencia
mit
Descargas
56.9k
Propietario