Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more output formats (Docker, conda-pack) #730

Open
2 tasks done
jaimergp opened this issue Nov 10, 2023 · 2 comments
Open
2 tasks done

Add more output formats (Docker, conda-pack) #730

jaimergp opened this issue Nov 10, 2023 · 2 comments
Labels
stale::recovered [bot] recovered after being marked as stale type::feature request for a new feature or capability

Comments

@jaimergp
Copy link
Contributor

Checklist

  • I added a descriptive title
  • I searched open requests and couldn't find a duplicate

What is the idea?

constructor is able to generate installers for Linux, macOS, and Windows, using an array of formats (SH, PKG, EXE, respectively). However, there's nothing special about these "installers" they are just "artifacts" that "pack" a number of conda packages.

The idea here would be to teach constructor how to generate additional artifact formats, like:

  • Docker containers via conda-docker
  • Tarballs via conda-pack

Why is this needed?

constructor would slowly become an interface for packaging and distributing conda environments. There is plenty of duplicated logic across this projects and we would benefit from a single maintenance hub for all of them. There are bits of conda-pack internals that would be lovely to have in constructor's code (like the Environment abstraction).

What should happen?

Users could just have a construct.yml like this:

name: Scripts
version: X
# installer_type: all
artifacts:
  - container  # via conda-docker
  - conda-pack
channels:
  - http://repo.anaconda.com/pkgs/main/
specs:
  - python

Additional Context

This is the other side of conda/conda-pack#294.

We could take a look and see how feasible this is. constructor was always built with the "installer" idea in mind, so some concepts in the config file and code base might be too coupled. In that case, a separate tool that encompasses all these usages with their nuances could be better welcome (e.g. conda-bundle).

Copy link

Hi there, thank you for your contribution!

This issue has been automatically marked as stale because it has not had recent activity. It will be closed automatically if no further activity occurs.

If you would like this issue to remain open please:

  1. Verify that you can still reproduce the issue at hand
  2. Comment that the issue is still reproducible and include:
    - What OS and version you reproduced the issue on
    - What steps you followed to reproduce the issue

NOTE: If this issue was closed prematurely, please leave a comment.

Thanks!

@github-actions github-actions bot added the stale [bot] marked as stale due to inactivity label Nov 10, 2024
@jaimergp
Copy link
Contributor Author

Not stale.

@github-actions github-actions bot added stale::recovered [bot] recovered after being marked as stale and removed stale [bot] marked as stale due to inactivity labels Nov 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale::recovered [bot] recovered after being marked as stale type::feature request for a new feature or capability
Projects
Status: 🆕 New
Development

No branches or pull requests

1 participant