-
Notifications
You must be signed in to change notification settings - Fork 881
Change agent startup script behavior from being never-ending to indicating the workspace is ready on end #5749
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
Comments
Will agents still have
Hmm, perhaps the default behavior should wait until its ready? |
This would break most existing deployments that fork off our templates. Since we launch code-server, it would never let anyone SSH in. |
At first I thought we would combine the status as one field. But on second thought, we should supports states like I think renaming the current The new functionality could be put under
I would prefer this as well, I was thinking about potential breakage for current users, which is why I proposed |
@mafredri all this sounds good to me. I think we should add a |
This seems to be a complex change to introduce, affecting many places. Did you have a chance to analyze the task complexity? I'm curious how safe it is to implement without getting you lost for a month... |
This issue is becoming stale. In order to keep the tracker readable and actionable, I'm going close to this issue in 7 days if there isn't more activity. |
A new requirement came up in relation to #2957. We need a way to discern between a workspace being ready and not. This is also relevant for
vscode-coder
where we might start a workspace for a user and want to wait for it to become ready.This requirement has also come up in #5171.
After discussing with @kylecarbs potential implementation, we came up with the following proposal:
WorkspaceAgentLifecycle
: (created
,)starting
,start_timeout
,start_error
,ready
, (stopping
,stop_timeout
,stop_error
,stopped
)feat: Add workspace agent lifecycle state reporting #5785
created
state could be added to indicate an initial state of the agent, before it has reported it's initial statestarting
, keep users waiting e.g. duringssh coder.workspace
(loading indicator)start_timeout
, show users a warningstart_error
state lets us direct users towards inspecting the startup log (Add startup logs to build log UI #2957)coder_agent.startup_script_timeout
with a default value (say 5min) (shutdown_script_timeout
for feat: Add support for shutdown_script #5171)feat: Add
startup_script_timeout
anddelay_login_until_ready
terraform-provider-coder#84refactor(site): update agent status to include the lifecycle #5835
fix(site): Hide agent lifecycle unless opted in via
delay_login_until_ready
#5850NOTE: Not applicable until Final steps
Partially handled by: feat(cli): Add support for
delay_login_until_ready
#5851coder_agent.delay_login_until_ready
feat: Add
startup_script_timeout
anddelay_login_until_ready
terraform-provider-coder#84coder ssh
feat(cli): Add support for
delay_login_until_ready
#5851ssh
(coder config-ssh
)feat(cli): Add support for
delay_login_until_ready
#5851--skip-delay-login-until-ready
flagfeat(cli): Add support for
delay_login_until_ready
#5851chore(examples): Add
login_before_ready
andstartup_script_timeout
#5880/etc/init.d/svc start
,nohup /path/to/svc &
, "fake systemd", etc.docs: Document agent readiness issues (startup script) #5877
Final steps:
delay_login_until_ready
#5850 to show agents with timed out startup scripts by defaultWe will focus on implementing the start-states first, stop will come later.
The text was updated successfully, but these errors were encountered: