Plex-Meta-Manager/docs/home/environmental.md
2022-04-01 02:42:04 -04:00

20 KiB

Run Commands & Environment Variables

This table outlines the run commands and environment variables that can be utilized to customize the running of Plex Meta Manager to the user's requirements. Environment Variable values are used over Shell Command values.

If you run into a race condition where you have set an Environment Variable within your system and also use a Shell Command for the same attribute, then the Environment Variable will take priority.

These docs are assuming you have a basic understanding of Docker concepts. One place to get familiar with Docker would be the official tutorial.

Attribute Shell Command Environment Variable
Config -c or --config PMM_CONFIG
Time to Run -t or --time PMM_TIME
Run -r or --run PMM_RUN
Run Tests -rt, --tests, or --run-tests PMM_TEST
Collections Only -co or --collections-only PMM_COLLECTIONS_ONLY
Libraries Only -lo or --libraries-only PMM_LIBRARIES_ONLY
Run Collections -rc or --run-collections PMM_COLLECTIONS
Run Libraries -rl or --run-libraries PMM_LIBRARIES
Run Metadata Files -rm or --run-metadata-files PMM_METADATA_FILES
Libraries First -lf or --libraries-first PMM_LIBRARIES_FIRST
Ignore Schedules -is or --ignore-schedules PMM_IGNORE_SCHEDULES
Ignore Ghost -ig or --ignore-ghost PMM_IGNORE_GHOST
Delete Collections -dc or --delete-collections PMM_DELETE_COLLECTIONS
Resume Run -re or --resume PMM_RESUME
No Countdown -nc or --no-countdown PMM_NO_COUNTDOWN
No Missing -nm or --no-missing PMM_NO_MISSING
Read Only Config -ro or --read-only-config PMM_READ_ONLY_CONFIG
Divider Character -d or --divider PMM_DIVIDER
Screen Width -w or --width PMM_WIDTH

Further explanation and examples of each command can be found below.

Run Command Attribute Examples

Environment variables are expressed as KEY=VALUE Depending on the context where you are specifying them, you may enter those two things in two different fields, or some other way. The examples below show how you would specify the environment variable in a script or a docker run command. Things like Portainer or a NAS Docker UI will have different ways to specify these things.

Config

Specify the location of the configuration YAML file.

Shell Environment
Flags -c or --config PMM_CONFIG
Example --config /data/config.yml PMM_CONFIG=/data/config.yml
Default config/config.yml
Values Path to YAML config file
Local Environment
python plex_meta_manager.py --config <path_to_config>
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --config <path_to_config>

Time to Run

Specify the time of day that Plex Meta Manager will run.

Shell Environment
Flags -t or --time PMM_TIME
Example --time 06:00,18:00 PMM_TIME=06:00,18:00
Default Value 03:00
Available Values comma-separated list in HH:MM format
Local Environment
python plex_meta_manager.py --time 22:00,03:00
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --time 22:00,03:00

Run

Perform a run immediately, bypassing the time to run flag.

Shell Environment
Flags -r or --run PMM_RUN
Example --run PMM_RUN=true
Local Environment
python plex_meta_manager.py --run
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --run

Run Tests

Run Plex Meta Manager in test/debug mode

Shell Environment
Flags -rt, --tests, or --run-tests PMM_TEST
Example --run-tests PMM_TEST=true
  • Only collections with test: true enabled will be run
Local Environment
python plex_meta_manager.py --run-tests
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --run-tests

Collections Only

Only run collection metadata/YAML files, skip library operations.

Shell Environment
Flags -co or --collections-only PMM_COLLECTIONS_ONLY
Example --collections-only PMM_COLLECTIONS_ONLY=true
Local Environment
python plex_meta_manager.py --collections-only
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --collections-only

Libraries Only

Only run library operations, skip collections.

Shell Environment
Flags -lo or --libraries-only PMM_LIBRARIES_ONLY
Example --libraries-only PMM_LIBRARIES_ONLY=true
Local Environment
python plex_meta_manager.py --libraries-only
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --libraries-only

Run Collections

Run only the pre-defined collections

Shell Environment
Flags -rc or --run-collections PMM_COLLECTIONS
Example --run-collections "Harry Potter, Star Wars" PMM_COLLECTIONS=Harry Potter, Star Wars
Values Comma-separated list of Collection Names to run
Local Environment
python plex_meta_manager.py --run-collections "Harry Potter, Star Wars"
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --run-collections "Harry Potter, Star Wars"

Run Libraries

Run only the pre-defined libraries

Shell Environment
Flags -rl or --run-libraries PMM_LIBRARIES
Example --run-libraries "Movies - 4K, TV Shows - 4K" PMM_LIBRARIES=Movies - 4K, TV Shows - 4K
Values Comma-separated list of Library Names to run
Local Environment
python plex_meta_manager.py --run-libraries "TV Shows"
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --run-libraries "TV Shows"

Run Metadata Files

Run only the pre-defined metadata files

Shell Environment
Flags -rm or --run-metadata-files PMM_METADATA_FILES
Example --run-metadata-files "Movies.yml, MovieCharts" PMM_METADATA_FILES=Movies.yml, MovieCharts
Available Values Comma-separated list of Metadata Filenames to run
  • This works for all different metadata paths i.e. git, url, file, or repo.
Local Environment
python plex_meta_manager.py --run-metadata-files "Movies"
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --run-metadata-files "Movies"

Libraries First

Run library operations prior to running collections.

Shell Environment
Flags -lf or --libraries-first PMM_LIBRARIES_FIRST
Example --libraries-first PMM_LIBRARIES_FIRST=true
Local Environment
python plex_meta_manager.py --libraries-first
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --libraries-first

Ignore Schedules

Ignore all schedules for the run.

Shell Environment
Flags -is or --ignore-schedules PMM_IGNORE_SCHEDULES
Example --ignore-schedules PMM_IGNORE_SCHEDULES=true
  • Range Scheduled collections (such as Christmas movies) will still be ignored.
Local Environment
python plex_meta_manager.py --ignore-schedules
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --ignore-schedules

Ignore Ghost

Ignore all ghost logging for the run. A ghost log is what's printed to the console to show progress during steps.

Shell Environment
Flags -ig or --ignore-ghost PMM_IGNORE_GHOST
Example --ignore-ghost PMM_IGNORE_GHOST=true
Local Environment
python plex_meta_manager.py --ignore-ghost
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --ignore-ghost

Delete Collections

Delete all collections in a Library prior to running collections/operations.

Shell Environment
Flags -dc or --delete-collections PMM_DELETE_COLLECTIONS
Example --delete-collections PMM_DELETE_COLLECTIONS=true
Local Environment
python plex_meta_manager.py --delete-collections
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --delete-collections

Resume Run

Resume a run from a specific collection use the --resume option.

Shell Environment
Flags -re or --resume PMM_RESUME
Example --resume "Star Wars" PMM_RESUME=Star Wars
Available Values Name of collection to resume from
Local Environment
python plex_meta_manager.py --resume "Star Wars"
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --resume "Star Wars"

No Countdown

Run without displaying a countdown to the next scheduled run.

Shell Environment
Flags -nc or --no-countdown PMM_NO_COUNTDOWN
Example --no-countdown PMM_NO_COUNTDOWN=true
Local Environment
python plex_meta_manager.py --no-countdown
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --no-countdown

No Missing

Run without utilizing the missing movie/show functions.

Shell Environment
Flags -nm or --no-missing PMM_NO_MISSING
Example --no-missing PMM_NO_MISSING=true
Local Environment
python plex_meta_manager.py --no-missing
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --no-missing

Read Only Config

Run without writing to the configuration file

Shell Environment
Flags -ro or --read-only-config PMM_READ_ONLY_CONFIG
Example --read-only-config PMM_READ_ONLY_CONFIG=true
Local Environment
python plex_meta_manager.py --read-only-config
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --read-only-config

Divider Character & Screen Width

Change the terminal output divider character or width

Divider Character

Shell Environment
Flags -d or --divider PMM_DIVIDER
Example --divider * PMM_DIVIDER=*
Default =
Values A character

Screen Width

Shell Environment
Flags -w or --width PMM_WIDTH
Example --width 150 PMM_WIDTH=150
Default Integer between 90 and 300
Values A character
Local Environment
python plex_meta_manager.py --divider * --width 200
Docker Environment
docker run -it -v "X:\Media\Plex Meta Manager\config:/config:rw" meisnate12/plex-meta-manager --divider * --width 200