-
-
Notifications
You must be signed in to change notification settings - Fork 21
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 Verified URLs #529
Add Verified URLs #529
Conversation
Co-authored-by: Jeremy Moore <[email protected]>
Co-authored-by: Jeremy Moore <[email protected]>
Co-authored-by: Jeremy Moore <[email protected]>
Co-authored-by: Jeremy Moore <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, we will need a change in our infra repo to set the SERVER_NAME
variable before this will work.
Terraform plan in terraform/dev in the hushline-dev-me workspace With variablesbranch = "me"
name = "dev-me" Plan: 2 to add, 0 to change, 0 to destroy. Changes to Outputs.Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
+ create
Terraform will perform the following actions:
# digitalocean_project.hush_line_dev will be created
+ resource "digitalocean_project" "hush_line_dev" {
+ created_at = (known after apply)
+ description = "Development instance based on the me branch"
+ environment = "Development"
+ id = (known after apply)
+ is_default = false
+ name = "dev-me"
+ owner_id = (known after apply)
+ owner_uuid = (known after apply)
+ purpose = "Web Application"
+ resources = (known after apply)
+ updated_at = (known after apply)
}
# module.app.digitalocean_app.app will be created
+ resource "digitalocean_app" "app" {
+ active_deployment_id = (known after apply)
+ created_at = (known after apply)
+ default_ingress = (known after apply)
+ id = (known after apply)
+ live_url = (known after apply)
+ project_id = (known after apply)
+ updated_at = (known after apply)
+ urn = (known after apply)
+ dedicated_ips (known after apply)
+ spec {
+ domains = (known after apply)
+ features = [
+ "buildpack-stack=ubuntu-22",
]
+ name = "dev-me"
+ region = "sfo"
+ alert {
+ disabled = false
+ rule = "DEPLOYMENT_FAILED"
}
+ domain (known after apply)
+ ingress (known after apply)
+ service {
+ dockerfile_path = "Dockerfile"
+ http_port = 8080
+ instance_count = 1
+ instance_size_slug = "apps-s-1vcpu-0.5gb"
+ internal_ports = (known after apply)
+ name = "app"
+ run_command = (known after apply)
+ github {
+ branch = "me"
+ deploy_on_push = true
+ repo = "scidsg/hushline"
}
+ health_check {
+ http_path = "/health.json"
}
+ routes (known after apply)
}
}
}
Plan: 2 to add, 0 to change, 0 to destroy.
Changes to Outputs:
+ app_live_url = (known after apply) ✅ Plan applied in Deploy/Destroy Branch Dev Environment #245 Outputsapp_live_url = "https://dev-me-n3eol.ondigitalocean.app" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested it and it looks great, but I think this should include one small change.
Our extra fields links themselves should include rel="me"
! Right now it's rel="noopener noreferrer"
but we should add a me
to that so that people can e.g. link to their Hush Line profile from Mastodon or other services that use it, and those will be marked as verified links on those services.
And of course, the whole SERVER_NAME thing. I tried to deploy a test server and it broke because of this. So the infra side needs to be fixed first. And the dev deploys in particular could tricky... @jeremywmoore ?
Added in 9d030d3 |
I'm working on this, DO can inject the domain name into the app via magic envelope var. |
…urls are created using the right domain and scheme
DRAFT: Me dev
🚀 App successfully deployed to https://dev-me-n3eol.ondigitalocean.app! |
When a user adds a link back to their Hush Line profile with the
rel="me"
attribute, a verified badge is added to the appropriate URL.Example shown on my personal portfolio. In this screenshot you see a test link to my admin test account
https://tips.hushline.app/to/admin
.On the server-side, we validate address submissions for URLs, and limit them to checking against
tips.hushline.app
addresses.When the conditions validate, a new non-emoji icon appears in the website's fields in Settings and the Profile:
We also add new fields to the DB to track verification status per field: