-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
Description
Title:
Add Push To Deploy Button Feature
Description:
I propose adding a "Push To Deploy" feature to the Knackline Laravel Deploy package. This feature would allow developers to include a deployment button directly in their Laravel application's Blade views, enabling anyone with access to trigger a deployment with a single click.
Feature Requirements:
-
Blade Component:
- Create a Blade component (
<x-deploy-button />) that can be easily added to any Blade view. - The button should trigger the deployment process when clicked.
- Create a Blade component (
-
Security:
- Ensure the deployment action is secure and only accessible to authorized users. This could be implemented using middleware, role checks, or a signed URL.
- Optionally, add a confirmation step before initiating the deployment to prevent accidental deployments.
-
AJAX Integration:
- Use AJAX to handle the deployment request without refreshing the page.
- Provide real-time feedback on the deployment status, such as a loading spinner, progress updates, and a success/failure message.
-
Customizable Button:
- Allow users to customize the appearance and text of the button via component attributes.
- Support for different themes, colors, and icons.
-
Deployment Logs:
- Display the output/logs of the deployment process in the browser after the deployment is complete.
- Optionally, store the logs for future reference.
-
Configuration:
- Provide configuration options to control which environments or branches the "Push To Deploy" button should work with.
- Ensure the button is only displayed in environments where deployment is permitted (e.g., staging, production).
Use Cases:
- Staging Deployments: Enable non-technical team members to deploy to a staging environment for review.
- Production Deployments: Allow authorized users to quickly push updates to production without needing terminal access.
Benefits:
- User-Friendly: Simplifies the deployment process, especially for non-technical users.
- Time-Saving: Reduces the need for manual deployment commands, speeding up the workflow.
- Flexible: Can be customized and integrated into any Laravel project.
Additional Notes:
- Consider the impact of allowing in-browser deployments and ensure the process is secure and reliable.
- Provide clear documentation for integrating and customizing the deployment button.
You can use this template to create a new issue on your GitHub repository for this feature request. This will help track the development and discussion around the "Push To Deploy" feature.
Metadata
Metadata
Assignees
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request