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

feat(POC): allow editing managed environments locally #681

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

ysndr
Copy link
Contributor

@ysndr ysndr commented Dec 20, 2023

  • keep .flox/env/* as source of truth for activations etc.
  • imperative commands update local checkout and create new generation
  • imperative commands abort if local checkout is semantically different from the current generation
  • add flox edit --apply to create a new generation from the current local checkout

@ysndr ysndr self-assigned this Dec 20, 2023
@ysndr ysndr added the enhancement Improvement to existing functionality label Jan 4, 2024
@ghudgins ghudgins removed the enhancement Improvement to existing functionality label Apr 3, 2024
@jennymahmoudi
Copy link
Contributor

Since this is based on an old version of flox, it seems to be using an older version of auth, and I'm not sure how to set up the config to log in to FloxHub to push an environment for testing. Any suggestions for how to get this running?

image

image

@mkenigs
Copy link
Contributor

mkenigs commented May 30, 2024

@ysndr the merge had a bunch of conflicts so you may want to double check it

@ghudgins
Copy link
Contributor

yeah, it's very old. not sure how to get it up and running at this point. forgot it had a service dependency

@mkenigs
Copy link
Contributor

mkenigs commented May 31, 2024

yeah, it's very old. not sure how to get it up and running at this point. forgot it had a service dependency

@ghudgins I merged main so it's at least compiling at this point

@jennymahmoudi
Copy link
Contributor

jennymahmoudi commented May 31, 2024

I can get it running but I'm confused about the scenario to see the different behavior.

managed environments no longer hide the manifest.toml and manifest.lock file

These files doesn't seem to be hidden for remote envs in the current version (1.0.6).

imperative commands abort if local checkout is semantically different from the current generation

How do you get into this state? If I flox push, then make change via flox edit, and then try to flox install, would that be a case where flox would abort?

@ghudgins
Copy link
Contributor

today when you flox push you get a .flox that doesn't have the lock or the manifest. this change would leave those files in place and introduce imperative commands for workflow around edits outside of Flox to those files

a .flox on a remotely managed environment
image

@jennymahmoudi
Copy link
Contributor

That's what I expected to see, but when I did a flox push with 1.0.6 the manifest toml and lock file were still in my .flox

Maybe I can pair with @ysndr to see it in action when he's back

image

@ghudgins
Copy link
Contributor

oh wow, you're right. the manifest is there for me on new environments now too

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants