Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/klahap/fraploy
A Gradle plugin to deploy Frappe app updates to Frappe Cloud.
https://github.com/klahap/fraploy
deployment frappe-cloud gradle-plugin kotlin
Last synced: 18 days ago
JSON representation
A Gradle plugin to deploy Frappe app updates to Frappe Cloud.
- Host: GitHub
- URL: https://github.com/klahap/fraploy
- Owner: klahap
- License: mit
- Created: 2024-08-14T07:50:18.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-15T09:13:04.000Z (6 months ago)
- Last Synced: 2024-11-20T17:43:29.991Z (3 months ago)
- Topics: deployment, frappe-cloud, gradle-plugin, kotlin
- Language: Kotlin
- Homepage:
- Size: 69.3 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fraploy - Frappe App Deployer
Fraploy is a Gradle plugin designed to streamline the deployment of Frappe app updates to Frappe Cloud. With easy
configuration and seamless integration into your build pipeline, you can automate the deployment process, reducing
manual steps and potential errors.## Features
- Deploy updates to Frappe apps on Frappe Cloud.
- Configurable via Gradle Kotlin DSL.
- Supports credentials management through environment variables.
- Blocking mode with configurable polling delay.## Installation
Add the `fraploy` plugin to your `build.gradle.kts`:
```kotlin
plugins {
id("io.github.klahap.fraploy") version "$VERSION"
}
```## Usage
To configure the plugin, add the following configuration block to your `build.gradle.kts`:
```kotlin
fraploy {
credentials {
token = System.getenv("FRAPPE_CLOUD_TOKEN")
team = System.getenv("FRAPPE_CLOUD_TEAM")
}
source {
releaseGroupTitle = System.getenv("FRAPPE_CLOUD_RELEASE_GROUP_TITLE")
addAppUpdate(appName = "frappe", version = "v15.37.0")
addAppUpdate(appName = "erpnext", version = "v15.32.1")
}
blocking {
enable = true
pollDelay = 5.seconds
}
}
```- **credentials**
- `token`: Your Frappe Cloud API token.
- `team`: Your Frappe Cloud team name.- **source**
- `releaseGroupTitle`: The title for the release group in Frappe Cloud.
- `addAppUpdate(appName, version)`: Add an app update to the release. Specify the `appName` and the `version`.- **blocking**
- `enable`: Enables or disables blocking mode (default is `false).
- `pollDelay`: The delay between polls to check the deployment status. Default is 5 seconds.### Running the Deployment
After configuring the plugin, you can deploy your Frappe app updates with the following command:
```bash
gradle fraployDeploy
```This command will trigger the deployment process, and the plugin will handle the rest.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contributing
Contributions are welcome! Please open an issue or submit a pull request.