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

Conda-Store plugin system for builds and artifacts #385

Closed
costrouc opened this issue Aug 25, 2022 · 1 comment
Closed

Conda-Store plugin system for builds and artifacts #385

costrouc opened this issue Aug 25, 2022 · 1 comment

Comments

@costrouc
Copy link
Member

Conda-Store heavily uses Traitlets for allowing easy configuration. One area that has not been easily customizable is the build system and the artifacts generated. I would like to change this by having a standardized object for Conda-Store builds.

class CondaStoreBuilder:
     build_artifacts = [
         'ARTIFACT_1',
         'ARTIFACT_2',
        ...
     ]

     depends_on = [
         'ARTIFACT_A'
     ]

     def build_artifact(self, artifact_type: str, build_id: int):
           pass 

     def delete_artifact(self, artifact_type: str, build_id: int):
           pass


class CondaStore:
       registered_builders = [
             FilesystemBuilder,
             LockfileBuilder,
             PinnedYAMLBuilder,
             CondaPackBuilder,
             DockerBuilder,
       ]

This is roughly the interface that I can envision for a build extionsion system. CondaStore will then need to understand the build dependency order.

@soapy1
Copy link
Contributor

soapy1 commented Oct 30, 2024

superceded by #929

@soapy1 soapy1 closed this as completed Oct 30, 2024
@github-project-automation github-project-automation bot moved this from New 🚦 to Done 💪🏾 in conda-store 🐍 Oct 30, 2024
@github-project-automation github-project-automation bot moved this from New 🚦 to Done 💪🏾 in conda-store 🐍 Oct 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

2 participants