Add inline edit functionality for environment variables, labels, and
volume mounts on the app detail page. Each entity row now has an Edit
button that reveals an inline form using Alpine.js.
- POST /apps/{id}/env-vars/{varID}/edit
- POST /apps/{id}/labels/{labelID}/edit
- POST /apps/{id}/volumes/{volumeID}/edit
- Path validation for volume host and container paths
- Warning banner about container restart after env var changes
- Tests for ValidateVolumePath
fixes#67
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Adds inline editing for environment variables, labels, and volume mounts on the app detail page.
Changes
/apps/{id}/env-vars/{varID}/edit,/apps/{id}/labels/{labelID}/edit,/apps/{id}/volumes/{volumeID}/editValidateVolumePathensures absolute, clean paths for volume editsTestValidateVolumePathcovering empty, relative, unclean, and valid pathsTest Results
✅
make test— all packages pass✅
golangci-lint run ./...— 0 issuesCloses #67
Add inline edit functionality for environment variables, labels, and volume mounts on the app detail page. Each entity row now has an Edit button that reveals an inline form using Alpine.js. - POST /apps/{id}/env-vars/{varID}/edit - POST /apps/{id}/labels/{labelID}/edit - POST /apps/{id}/volumes/{volumeID}/edit - Path validation for volume host and container paths - Warning banner about container restart after env var changes - Tests for ValidateVolumePath fixes #67CI Results
make test✅ All 10 packages pass
golangci-lint run ./...✅ 0 issues
New test coverage
TestValidateVolumePath: 8 cases (empty, relative, dotdot, trailing slash, double slash, dot, valid absolute, root)