pdownyq/schema.yaml

60 lines
1.7 KiB
YAML
Raw Permalink Normal View History

2022-12-24 21:25:01 -05:00
$schema: http://json-schema.org/draft/2020-12/schema
type: object
properties:
2023-02-14 23:19:52 -05:00
proxy:
description: Proxy for curl. No proxy by default
type: string
base_dir:
description: Base directory for content
type: string
default: .
cache_dir:
description: Directory in which files are kept while downloading
type: string
default: <base_dir>/cache
state_dir:
description: Directory where downloaded urls are recorded to avoid re-downloading
type: string
default: <base_dir>/state
podcasts_dir:
description: Directory of the actual downloaded episodes
type: string
default: <base_dir>/podcasts
2022-12-24 21:25:01 -05:00
entries:
2023-01-09 20:46:08 -05:00
description: Array of feeds to download
2022-12-24 21:25:01 -05:00
type: array
items:
type: object
properties:
name:
type: string
2023-02-14 23:19:52 -05:00
description: Name of the feed. Used as filenames. Avoid spaces or special characters
2022-12-24 21:25:01 -05:00
url:
type: string
description: Rss feed url of the podcast
limit:
type: integer
description: Number of entries to download
2023-01-09 20:46:08 -05:00
default: 1
2022-12-24 21:25:01 -05:00
filename_type:
type: string
2023-02-14 23:19:52 -05:00
description: |
Decides how the files are named
default -> curl decides the filename (see curl's -O flag)
title -> Feed entries' title sanitized to remove special characters and spaces replaced with -
date -> feedname-<date>.<ext> e.g. linuxunplugged-2023-02-14.mp3
2023-01-09 20:46:08 -05:00
default: default
2022-12-24 21:25:01 -05:00
enum:
2022-12-24 21:35:34 -05:00
- default
2022-12-24 21:25:01 -05:00
- title
- date
filter:
type: string
2023-01-09 20:46:08 -05:00
default: "true"
2022-12-24 21:25:01 -05:00
description: yq filter expression
required:
- name
- url
required:
- entries