- collections defined by name per archive - can update collections with additional metadata (currently just description) - crawl config api accepts a list of collections by name, resolved to collection uids and stored in config - finished crawls also associated with collection list - /archives/{aid}/collections/{name} can list all crawl artifacts (wacz files) from a named collection (in frictionless data package-ish format) - /archives/{aid}/collections/$all lists all crawled artifacts for the archive readiness check: add /healthz endpoints for app and nginx ingress: add /data/ route to local bucket storage improvements: - for default storages, store path only, and prepend default storage access endpoint - collections api returns the paths using the storage access endpoint - define default storages as secrets in k8s (can support multiple), hard-coded in docker (only one for now)
76 lines
1.8 KiB
YAML
76 lines
1.8 KiB
YAML
{{- if .Values.ingress.host }}
|
|
|
|
---
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: ingress-main
|
|
namespace: {{ .Release.Namespace }}
|
|
annotations:
|
|
kubernetes.io/ingress.class: "nginx"
|
|
nginx.ingress.kubernetes.io/rewrite-target: /$1
|
|
nginx.ingress.kubernetes.io/enable-cors: "true"
|
|
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
|
|
{{- if .Values.ingress.tls }}
|
|
cert-manager.io/cluster-issuer: "cert-main"
|
|
{{- end }}
|
|
nginx.ingress.kubernetes.io/upstream-vhost: "{{ .Values.ingress.host }}"
|
|
nginx.ingress.kubernetes.io/configuration-snippet: |
|
|
proxy_set_header X-Forwarded-Proto {{ .Values.ingress.scheme | default "https" }};
|
|
|
|
spec:
|
|
{{- if .Values.ingress.tls }}
|
|
tls:
|
|
- hosts:
|
|
- {{ .Values.ingress.host }}
|
|
secretName: cert-main
|
|
{{- end }}
|
|
|
|
rules:
|
|
- host: {{ .Values.ingress.host }}
|
|
http:
|
|
{{- if .Values.minio_local }}
|
|
paths:
|
|
- path: /data/(.*)
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: local-minio
|
|
port:
|
|
number: 9000
|
|
{{- end }}
|
|
|
|
- path: /(.*)
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: browsertrix-cloud
|
|
port:
|
|
number: 80
|
|
|
|
{{ if .Values.ingress.tls }}
|
|
---
|
|
|
|
apiVersion: cert-manager.io/v1alpha2
|
|
kind: ClusterIssuer
|
|
metadata:
|
|
name: cert-main
|
|
namespace: cert-manager
|
|
spec:
|
|
acme:
|
|
# The ACME server URL
|
|
server: https://acme-v02.api.letsencrypt.org/directory
|
|
# Email address used for ACME registration
|
|
email: {{ .Values.ingress.cert_email }}
|
|
# Name of a secret used to store the ACME account private key
|
|
privateKeySecretRef:
|
|
name: cert-main
|
|
# Enable the HTTP-01 challenge provider
|
|
solvers:
|
|
- http01:
|
|
ingress:
|
|
class: nginx
|
|
|
|
{{ end }}
|
|
{{ end }}
|