0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2025-01-21 00:52:43 -05:00
immich/cli
Daniel Dietzler 59bb727636
feat(web, server): Ability to use config file instead of admin UI (#3836)
* implement method to read config file

* getConfig returns config file if present

* return isConfigFile for http requests

* disable elements if config file is used, show message if config file is set, copy existing config to clipboard

* fix allowing partial configuration files

* add new env variable to docs

* fix tests

* minor refactoring, address review

* adapt config type in frontend

* remove unnecessary imports

* move config file reading to system-config repo

* add documentation

* fix code formatting in system settings page

* add validator for config file

* fix formatting in docs

* update generated files

* throw error when trying to update config. e.g. via cli or api

* switch to feature flags for isConfigFile

* refactoring

* refactor: config file

* chore: open api

* feat: always show copy/export buttons

* fix: default flags

* refactor: copy to clipboard

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-08-25 13:44:52 -04:00
..
src feat(web, server): Ability to use config file instead of admin UI (#3836) 2023-08-25 13:44:52 -04:00
.editorconfig feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
.eslintignore feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
.eslintrc.js feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
.gitignore feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
.prettierignore feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
.prettierrc feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
package-lock.json fix(cli): move runtime dependencies to correct section (#3371) 2023-07-21 23:01:20 -05:00
package.json fix(cli): move runtime dependencies to correct section (#3371) 2023-07-21 23:01:20 -05:00
README.md feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
testSetup.js feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00
tsconfig.build.json feat(cli): add build script and unify tests (#3369) 2023-07-21 13:10:01 -05:00
tsconfig.json feat(cli) Add new CLI (#3066) 2023-07-06 09:37:47 -05:00

A command-line interface for interfacing with Immich

Getting started

$ ts-node cli/src

To start using the CLI, you need to login with an API key first:

$ ts-node cli/src login-key https://your-immich-instance/api your-api-key

NOTE: This will store your api key under ~/.config/immich/auth.yml

Next, you can run commands:

$ ts-node cli/src server-info

When you're done, log out to remove the credentials from your filesystem

$ ts-node cli/src logout

Usage

Usage: immich [options] [command]

Immich command line interface

Options:
  -h, --help                        display help for command

Commands:
  upload [options] [paths...]       Upload assets
  import [options] [paths...]       Import existing assets
  server-info                       Display server information
  login-key [instanceUrl] [apiKey]  Login using an API key
  help [command]                    display help for command

Todo

  • Sidecar should check both .jpg.xmp and .xmp
  • Sidecar check could be case-insensitive

Known issues

  • Upload can't use sdk due to multiple issues