Comments (4)
Got it, thanks!
Yeah, v2 does away with the "feature" that temporarily saves the current event "edit state" in localStorage (browser), and restores it when you come back to the page. It was a stupid idea that should have never been released.
v2 is scheduled for release sometime in 2024, but OMG life keeps getting in the way 😊
How could it be the end of April already??? GAH!
from cronicle.
Hey Mark! I'm so glad you are using the plugin parameter system so heavily!
That's a great idea. It might be difficult to retrofit this onto Cronicle v1, which is in maintenance mode, but I will absolutely take a look at it for v2.
Building a UI "editor" for these things is always tricky, when you get into groups and nesting. It almost seems like a JSON file would actually work better, on the admin side I mean (for creating the plugin parameter "definitions"). Would you be into that? (You would edit the JSON right in the UI of course). Something like this:
[
{
"type": "select",
"id": "method",
"title": "Method",
"value": "GET, HEAD, POST"
},
{
"type": "text",
"id": "url",
"title": "URL",
"value": "http://"
},
{
"type": "textarea",
"id": "headers",
"title": "Request Headers",
"value": "User-Agent: Orchestra/1.0"
},
{
"type": "textarea",
"id": "data",
"title": "POST Data",
"value": ""
},
{
"type": "section",
"title": "Advanced",
"state": "closed",
"contents": [
{
"type": "text",
"id": "timeout",
"title": "Timeout (Seconds)",
"value": "30"
},
{
"type": "text",
"id": "success_match",
"title": "Success Match",
"value": ""
},
{
"type": "text",
"id": "error_match",
"title": "Error Match",
"value": ""
},
{
"type": "checkbox",
"id": "follow",
"title": "Follow Redirects",
"value": false
},
{
"type": "checkbox",
"id": "ssl_cert_bypass",
"title": "SSL Cert Bypass",
"value": false
}
]
}
]
Notice the section
which has nested controls inside it, which also has a state that starts closed, but can be toggled (hide / show). These sections could go inside each other, any number of levels deep.
And then that JSON would produce a pleasant, nested UI for your users on the event / job side for configuring events and running jobs.
So the only time you ever need to edit raw JSON is when you are defining or updating the Plugin Parameters themselves (admin work).
Thoughts on this?
from cronicle.
Perfect. That proposed approach would be much faster for setting up the twenty-plus parameters we had to put in manually. Making UI to make UI is time-consuming and the audience for this plugin is very comfortable with JSON editing.
Also, when do you plan to release version 2? I assume you will have an upgrade tool for migration.
One other item that you may have dealt with in the upcoming version. When you edit an event, change parameter(s), and use 'Run Now' it saves those parameters. That can be a scary situation. For example, we are running an event that imports data using a menu parameter with the values of Standard and Override. Standard does data integrity checks but if there are errors, it halts the import job and alerts us by email.
Override ignores the data check and imports the data. Normally the event is scheduled using the Standard parameter and performs the data check. Sometimes we get a call from the data stakeholders and they ask us to override the checks to force an update to the data. So then we edit the event to run it manually with the Override parameter. Since you are saving the current parameter state with the 'Run Now' and if we don't remember to switch the parameter back to Standard and save it, the scheduled event runs with the Override parameter set. It is such a worry, that we have created two events, a Standard scheduled one and an Override one on demand.
from cronicle.
I've also disabled that awful feature in Cronicle v0.9.47, which just dropped.
from cronicle.
Related Issues (20)
- Not able to change IP of server on my AWS Ubuntu 22.04 server HOT 2
- Cronicle mails fall to spam
- Build Error: Error: Could not locate match in HTML source: undefined: COMBINE_SCRIPT HOT 7
- Build Error: Error: Could not locate match in HTML source: undefined: COMBINE_SCRIPT HOT 1
- Agent instead of SSH
- Feature Request - Workflow HOT 1
- Cronicle - V2 Timeline HOT 1
- Cronicle showing blank page after machine restart HOT 5
- Error: Failed to load user: Error: Failed to fetch key: users/xxx: File not found HOT 3
- Cronicle install fails if there are limited resources e.g. RAM HOT 5
- Using self-signed certificates on master and peer nodes prevents peers from joining cluster HOT 2
- How to export all the content data and config HOT 2
- missing run once event HOT 1
- Cronicle upgrade doesn't work with a custom installation path HOT 1
- Daily cron for Cronicle data export giving out errors HOT 7
- Cronicle doesn't start on boot HOT 4
- Question About Elapsed Job Time HOT 2
- user with run only privilege can do more with shell plugins HOT 8
- Read-only user unable to view logs of an event for which Category was changed HOT 1
- get_live_job_log doesn't work for detached jobs HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cronicle.