mirror of
https://github.com/lucky-sideburn/kubeinvaders.git
synced 2026-05-09 18:26:37 +00:00
added delete button for chaos programs
This commit is contained in:
@@ -106,7 +106,8 @@
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-light" onclick="savePreset('apply')">Save and apply</button>
|
||||
<button type="button" class="btn btn-light" onclick="savePreset('save')">Save</button>
|
||||
<button type="button" id="resetToDefaultButton" class="btn btn-light-saved" onclick="resetPreset('reset')">Reset to default</button>
|
||||
<button type="button" id="resetToDefaultButton" class="btn btn-light-saved" onclick="resetPreset('preset')">Reset to default</button>
|
||||
<button type="button" id="deleteChaosProgramButton" class="btn btn-dark" onclick="resetPreset('k-inv')">Delete</button>
|
||||
<button type="button" class="btn btn-dark" data-dismiss="modal" onclick="closeSetLoadTestModal()">Close</button>
|
||||
</div>
|
||||
</form>
|
||||
@@ -222,6 +223,7 @@
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="btn-group" id="loadButtonGroup" role="group" aria-label="Basic example" style="overflow-x: scroll; width: 100%; padding-bottom: 2%; padding-top: 2%; scrollbar-color: dark;">
|
||||
<button type="button" id="loadCassandra" class="btn btn-light btn-sm" onclick="loadPreset('default', 'k-inv')">Default</button>
|
||||
<button type="button" id="loadCassandra" class="btn btn-light btn-sm" onclick="loadPreset('cassandra', 'python')">Cassandra</button>
|
||||
<button type="button" id="loadConsul" class="btn btn-light btn-sm" onclick="loadPreset('consul', 'python')">Consul</button>
|
||||
<button type="button" id="loadElasticsearch" class="btn btn-light btn-sm" onclick="loadPreset('elasticsearch', 'python')">Elasticsearch</button>
|
||||
|
||||
@@ -146,6 +146,11 @@ function createChaosProgramButton(name, lang) {
|
||||
document.getElementById("loadButtonGroup").scrollLeft = document.getElementById("loadButtonGroup").scrollWidth;
|
||||
}
|
||||
|
||||
function deleteChaosProgramButton(name) {
|
||||
let capitalizedName = name.charAt(0).toUpperCase() + name.slice(1);
|
||||
document.getElementById("loadButtonGroup").removeChild(document.getElementById("load" + capitalizedName));
|
||||
}
|
||||
|
||||
function getSavedPresets() {
|
||||
var oReq = new XMLHttpRequest();
|
||||
oReq.onreadystatechange = function () {
|
||||
@@ -196,7 +201,7 @@ function loadSavedPreset(tool, lang, defaultpreset) {
|
||||
//$('#alert_placeholder').replaceWith(alert_div + '[' + now + '] Open preset for ' + tool + '</div>');
|
||||
}
|
||||
|
||||
function resetPreset() {
|
||||
function resetPreset(kind) {
|
||||
var oReq = new XMLHttpRequest();
|
||||
oReq.onreadystatechange = function () {
|
||||
if (this.readyState === XMLHttpRequest.DONE && this.status === 200) {
|
||||
@@ -206,13 +211,22 @@ function resetPreset() {
|
||||
// document.getElementById(buttonId).classList.add('btn-light');
|
||||
closeSetLoadTestModal();
|
||||
getSavedPresets();
|
||||
console.log("[RESET-PRESETS] " + latest_preset_name + " restored with default preset");
|
||||
if (kind == 'k-inv') {
|
||||
console.log("[DELETE-K-INV-PROGRAM] " + latest_preset_name + " deleted");
|
||||
deleteChaosProgramButton(latest_preset_name);
|
||||
}
|
||||
else {
|
||||
console.log("[RESET-PRESETS] " + latest_preset_name + " restored with default preset");
|
||||
}
|
||||
var now = new Date().toLocaleString().replace(',','')
|
||||
$('#alert_placeholder_programming_mode').replaceWith(alert_div + '[' + now + '] ' + latest_preset_name + ' preset has been restored with default code</div>');
|
||||
//$('#alert_placeholder').replaceWith(alert_div + '[' + now + '] ' + latest_preset_name + ' preset has been restored with default code</div>');
|
||||
}
|
||||
};;
|
||||
oReq.open("POST", k8s_url + "/chaos/loadpreset/reset?name="+ latest_preset_name + "&lang="+ latest_preset_lang);
|
||||
if (kind == 'k-inv') {
|
||||
console.log("[RESET-PRESETS] Deleting " + latest_preset_name + " lang " + latest_preset_lang);
|
||||
}
|
||||
oReq.open("POST", k8s_url + "/chaos/loadpreset/reset?name="+ latest_preset_name.toLowerCase() + "&lang="+ latest_preset_lang);
|
||||
oReq.send({});
|
||||
}
|
||||
|
||||
@@ -229,6 +243,7 @@ function savePreset(action) {
|
||||
console.log("[SAVE-PRESET-CHAOSPROGRAM] lang: " + presetLang + " name:" + presetName);
|
||||
presetBody = $('#chaosProgramTextArea').val();
|
||||
document.getElementById("resetToDefaultButton").style.display = "none";
|
||||
document.getElementById("deleteChaosProgramButton").style.display = "block";
|
||||
}
|
||||
else if (latest_preset_lang == "k-inv") {
|
||||
presetLang = "k-inv";
|
||||
@@ -237,11 +252,13 @@ function savePreset(action) {
|
||||
console.log("[SAVE-PRESET-CHAOSPROGRAM] lang: " + presetLang + " name:" + codename);
|
||||
presetBody = $('#currentLoadTest').val();
|
||||
document.getElementById("resetToDefaultButton").style.display = "none";
|
||||
document.getElementById("deleteChaosProgramButton").style.display = "block";
|
||||
}
|
||||
else {
|
||||
presetLang = latest_preset_lang;
|
||||
presetName = latest_preset_name;
|
||||
document.getElementById("resetToDefaultButton").style.display = "block";
|
||||
document.getElementById("deleteChaosProgramButton").style.display = "none";
|
||||
}
|
||||
|
||||
//console.log("Saving preset. name:" + presetName + ", lang:" + presetName + ", body: " + presetBody);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
loadPresetsCodeJson = `{
|
||||
"default": "Y2hhb3MtY29kZW5hbWU6IGxpdGhpdW0Kam9iczoKICBjcHUtYXR0YWNrLWpvYjoKICAgIGFkZGl0aW9uYWwtbGFiZWxzOgogICAgICBjaGFvcy1jb250cm9sbGVyOiBrdWJlaW52YWRlcnMKICAgICAgY2hhb3MtdHlwZTogc3RyZXNzLW5nCiAgICAgIGNoYW9zLWNvZGVuYW1lOiBsaXRoaXVtCiAgICBpbWFnZTogZG9ja2VyLmlvL2x1Y2t5c2lkZWJ1cm4va3ViZWludmFkZXJzLXN0cmVzcy1uZzpsYXRlc3QKICAgIGNvbW1hbmQ6ICJzdHJlc3MtbmciCiAgICBhcmdzOgogICAgICAtIC0taGVscAoKICBtZW0tYXR0YWNrLWpvYjoKICAgIGFkZGl0aW9uYWwtbGFiZWxzOgogICAgICBjaGFvcy1jb250cm9sbGVyOiBrdWJlaW52YWRlcnMKICAgICAgY2hhb3MtdHlwZTogc3RyZXNzLW5nCiAgICAgIGNoYW9zLWNvZGVuYW1lOiBsaXRoaXVtCiAgICBpbWFnZTogZG9ja2VyLmlvL2x1Y2t5c2lkZWJ1cm4va3ViZWludmFkZXJzLXN0cmVzcy1uZzpsYXRlc3QKICAgIGNvbW1hbmQ6ICJzdHJlc3MtbmciCiAgICBhcmdzOgogICAgICAtIC0taGVscAoKZXhwZXJpbWVudHM6CiAgLSBuYW1lOiBjcHUtYXR0YWNrLWV4cAogICAgam9iOiBjcHUtYXR0YWNrLWpvYgogICAgbG9vcDogNQoKICAtIG5hbWU6IG1lbS1hdHRhY2stZXhwCiAgICBqb2I6IG1lbS1hdHRhY2stam9iCiAgICBsb29wOiA1CiAK",
|
||||
"cassandra": "ZnJvbSBjYXNzYW5kcmEuY2x1c3RlciBpbXBvcnQgQ2x1c3Rlcgpmcm9tIHJhbmRvbSBpbXBvcnQgcmFuZGludAppbXBvcnQgdGltZQoKZGVmIG1haW4oKToKICAgIGNsdXN0ZXIgPSBDbHVzdGVyKFsnMTI3LjAuMC4xJ10pCiAgICBzZXNzaW9uID0gY2x1c3Rlci5jb25uZWN0KCkKCiAgICBzZXNzaW9uLmV4ZWN1dGUoIkNSRUFURSBLRVlTUEFDRSBJRiBOT1QgRVhJU1RTIHRlc3QgV0lUSCBSRVBMSUNBVElPTiA9IHsgJ2NsYXNzJzogJ1NpbXBsZVN0cmF0ZWd5JywgJ3JlcGxpY2F0aW9uX2ZhY3Rvcic6IDEgfSIpCiAgICBzZXNzaW9uLmV4ZWN1dGUoIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIHRlc3QubWVzc2FnZXMgKGlkIGludCBQUklNQVJZIEtFWSwgbWVzc2FnZSB0ZXh0KSIpCgogICAgZm9yIGkgaW4gcmFuZ2UoMTAwMCk6CiAgICAgICAgc2Vzc2lvbi5leGVjdXRlKCJJTlNFUlQgSU5UTyB0ZXN0Lm1lc3NhZ2VzIChpZCwgbWVzc2FnZSkgVkFMVUVTICglcywgJyVzJykiICUgKGksIHN0cihyYW5kaW50KDAsIDEwMDApKSkpCiAgICAgICAgdGltZS5zbGVlcCgwLjAwMSkKCiAgICBjbHVzdGVyLnNodXRkb3duKCkKCmlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICBtYWluKCk=",
|
||||
"consul": "aW1wb3J0IHRpbWUKaW1wb3J0IGNvbnN1bAoKIyBDb25uZWN0IHRvIHRoZSBDb25zdWwgY2x1c3RlcgpjbGllbnQgPSBjb25zdWwuQ29uc3VsKCkKCiMgQ29udGludW91c2x5IHJlZ2lzdGVyIGFuZCBkZXJlZ2lzdGVyIGEgc2VydmljZQp3aGlsZSBUcnVlOgogICAgIyBSZWdpc3RlciB0aGUgc2VydmljZQogICAgY2xpZW50LmFnZW50LnNlcnZpY2UucmVnaXN0ZXIoCiAgICAgICAgInN0cmVzcy10ZXN0LXNlcnZpY2UiLAogICAgICAgIHBvcnQ9ODA4MCwKICAgICAgICB0YWdzPVsic3RyZXNzLXRlc3QiXSwKICAgICAgICBjaGVjaz1jb25zdWwuQ2hlY2soKS50Y3AoImxvY2FsaG9zdCIsIDgwODAsICIxMHMiKQogICAgKQoKICAgICMgRGVyZWdpc3RlciB0aGUgc2VydmljZQogICAgY2xpZW50LmFnZW50LnNlcnZpY2UuZGVyZWdpc3Rlcigic3RyZXNzLXRlc3Qtc2VydmljZSIpCgogICAgdGltZS5zbGVlcCgxKQoK",
|
||||
"elasticsearch": "aW1wb3J0IHRpbWUKZnJvbSBlbGFzdGljc2VhcmNoIGltcG9ydCBFbGFzdGljc2VhcmNoCgojIENvbm5lY3QgdG8gdGhlIEVsYXN0aWNzZWFyY2ggY2x1c3RlcgplcyA9IEVsYXN0aWNzZWFyY2goWyJsb2NhbGhvc3QiXSkKCiMgQ29udGludW91c2x5IGluZGV4IGFuZCBkZWxldGUgZG9jdW1lbnRzCndoaWxlIFRydWU6CiAgICAjIEluZGV4IGEgZG9jdW1lbnQKICAgIGVzLmluZGV4KGluZGV4PSJ0ZXN0LWluZGV4IiwgZG9jX3R5cGU9InRlc3QtdHlwZSIsIGlkPTEsIGJvZHk9eyJ0ZXN0IjogInRlc3QifSkKCiAgICAjIERlbGV0ZSB0aGUgZG9jdW1lbnQKICAgIGVzLmRlbGV0ZShpbmRleD0idGVzdC1pbmRleCIsIGRvY190eXBlPSJ0ZXN0LXR5cGUiLCBpZD0xKQoKICAgIHRpbWUuc2xlZXAoMSkKCg==",
|
||||
@@ -33,7 +34,13 @@ loadPresetsCodeJson = `{
|
||||
|
||||
if (lang == "k-inv") {
|
||||
loadSavedPreset(tool, lang, $('#chaosProgramTextArea').text());
|
||||
document.getElementById("resetToDefaultButton").style.display = "none";
|
||||
if (tool.toLowerCase() == "default") {
|
||||
document.getElementById("resetToDefaultButton").style.display = "none";
|
||||
document.getElementById("deleteChaosProgramButton").style.display = "none";
|
||||
} else {
|
||||
document.getElementById("resetToDefaultButton").style.display = "none";
|
||||
document.getElementById("deleteChaosProgramButton").style.display = "block";
|
||||
}
|
||||
} else {
|
||||
console.log("[GET-PRESETS] foo Loaded preset for " + tool + " with lang " + lang);
|
||||
console.log("[GET-PRESET] loadPresetsCodeJson " +loadPresetsCodeJson);
|
||||
@@ -41,6 +48,7 @@ loadPresetsCodeJson = `{
|
||||
decodedStringAtoB = atob(loadPresetsCodeParsed[tool]);
|
||||
loadSavedPreset(tool, lang, decodedStringAtoB);
|
||||
document.getElementById("resetToDefaultButton").style.display = "block";
|
||||
document.getElementById("deleteChaosProgramButton").style.display = "none";
|
||||
}
|
||||
$("#presetLang").val(lang);
|
||||
$("#presetName").val(tool);
|
||||
|
||||
Reference in New Issue
Block a user