-
-
Notifications
You must be signed in to change notification settings - Fork 20
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 app contents to Dockerfile.dev to enable use in remote environments #599
Conversation
63955b4
to
3ff94ea
Compare
3ff94ea
to
a60b934
Compare
Terraform plan in terraform/dev in the hushline-dev-dev-data workspace With variablesbranch = "dev-data"
name = "dev-dev-data" Plan: 1 to add, 0 to change, 1 to destroy. Changes to Outputs.Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
-/+ destroy and then create replacement
Terraform will perform the following actions:
# module.app.digitalocean_app.app must be replaced
-/+ resource "digitalocean_app" "app" {
+ active_deployment_id = (known after apply)
!~ created_at = "2024-09-24 16:12:37 +0000 UTC" -> (known after apply)
+ default_ingress = (known after apply)
!~ id = "************************************" -> (known after apply)
+ live_url = (known after apply)
!~ updated_at = "2024-09-24 16:37:03 +0000 UTC" -> (known after apply)
!~ urn = "do:app:addb53f5-59bb-4003-b906-e484d669ecbe" -> (known after apply)
# (1 unchanged attribute hidden)
!~ dedicated_ips (known after apply)
!~ spec {
!~ domains = [] -> (known after apply)
name = "dev-dev-data"
# (2 unchanged attributes hidden)
!~ domain (known after apply)
!~ ingress (known after apply)
- ingress {
- rule {
- component {
- name = "app" -> null
- preserve_path_prefix = false -> null
# (1 unchanged attribute hidden)
}
- match {
- path {
- prefix = "/" -> null
}
}
}
}
!~ job {
!~ dockerfile_path = "./Dockerfile.prod" -> "./Dockerfile.dev"
name = "dev-data"
# (7 unchanged attributes hidden)
# (1 unchanged block hidden)
}
!~ service {
!~ internal_ports = [] -> (known after apply)
name = "app"
+ run_command = (known after apply)
# (7 unchanged attributes hidden)
!~ health_check {
- failure_threshold = 0 -> null
- initial_delay_seconds = 0 -> null
- period_seconds = 0 -> null
- port = 0 -> null
- success_threshold = 0 -> null
- timeout_seconds = 0 -> null
# (1 unchanged attribute hidden)
}
!~ routes (known after apply)
# (1 unchanged block hidden)
}
!~ service {
!~ http_port = 0 -> (known after apply)
name = "db"
+ run_command = (known after apply)
# (7 unchanged attributes hidden)
!~ image {
- registry_credentials = (sensitive value) -> null
# (4 unchanged attributes hidden)
!~ deploy_on_push (known after apply)
}
!~ routes (known after apply)
}
# (1 unchanged block hidden)
}
}
Plan: 1 to add, 0 to change, 1 to destroy.
Changes to Outputs:
+ app_live_url = (known after apply) ✅ Plan applied in Deploy/Destroy Branch Dev Environment #301 Outputsapp_live_url = "https://dev-dev-data-knkuz.ondigitalocean.app" |
🚀 App successfully deployed to https://dev-dev-data-knkuz.ondigitalocean.app! |
975f771
to
71a7368
Compare
Alternatively, we could update |
71a7368
to
9c62992
Compare
I'm lost again on this PR. We mentioned some bug, but I can't find discussion of it. What was this trying to fix? |
@brassy-endomorph no worries, this PR is intended to support running the dev_data.py script in the context of remote dev deployments. The image built by Dockerfile.dev in its current form isn't suitable because it doesn't contain the project source (the script or hushline app source). The image built by Dockerfile.prod isn't suitable as it doesn't install hushline into the venv, only its dependency (--no-root). The two options are 1) Add the source to the Dockerfile.dev or 2) install the application without the Alternatively, we could make the change presented in #619 and run the dev_data script from an image build from |
Both of these feel like kluges and if we're going to include Should we just make it a command then? Can do the same with the |
This PR adds the contents of the hushline repo to Dockerfile.dev to facilitate running tools/scripts in remove dev environments where we don't have volume mounts.