getavalon / core

The safe post-production pipeline - https://getavalon.github.io/2.0
MIT License
218 stars 48 forks source link

avalon install <config-name> #398

Open mottosso opened 5 years ago

mottosso commented 5 years ago

Goal

Simplify getting started on your first pipeline.

Motivation

First thing anyone asks when getting started with Avalon is what config to use and how to use it. Turn that into a single command.

Implementation

Like a package registry e.g. pip or scoop or conda, enable the user to install both avalon and a (registered) config via the command-line on first-use.

$ pip install avalon
$ avalon install colorbleed
# Downloading https://github.com/.../...
# Success
$ avalon launcher
# GUI appears

install would be a subcommand of avalon that then looks at e.g. https://github.com/getavalon/packages for things to download, things others can register akin to the Sublime Text package control channel.

tokejepsen commented 5 years ago

I like it :) Though the configs out there like colorbleed and pype aren't self contained atm, but maybe this will encourage it.

mottosso commented 5 years ago

Though the configs out there like colorbleed and pype aren't self contained atm

They are not? :O What do they depend on? Could dependencies be pip-like, e.g. a requirements.txt?

tokejepsen commented 5 years ago

What do they depend on?

Various private or forks of public repos. Maybe colorbleed less, since its more open. There is nothing preventing them from getting isolated though, so as I said maybe this will encourage isolating the configs.

BigRoy commented 5 years ago

If anything required from colorbleed-config isn't open/public let me know. It should be close to having no dependencies outside of the config itself. However our acre branch currently relies on acre being on your pythonpath too.

I've never created pip installables, but I'd be happy to ease the way with colorbleed-config.

E.g. I can put in requirements.txt if that's helpful.

mkolar commented 5 years ago

We have a large cleanup sprint this and next week after which we're releasing current state of pype to github again and hopefully being once again as much avalon-core compatible as possible, but it's hard to say whether it will be fully out. The biggest difference being our tray app probably. we'll put more effort into putting a lot of it back to core.