fleet/ee/bulk-operations-dashboard/api/controllers/scripts/delete-script.js
Eric debb2d1790
Add app to manage scripts and profiles. (#21450)
Related to: #20296 

Changes:
- Added `ee/bulk-operations-dashboard`, a Sails.js app that lets users
manage configuration profiles and scripts across multiple teams on a
Fleet instance.
- Added a Github workflow to deploy the app to Heroku
- Added a Github workflow to test changes to the bulk operations
dashboard.
2024-08-22 14:59:15 -06:00

46 lines
910 B
JavaScript

module.exports = {
friendlyName: 'Delete script',
description: '',
inputs: {
script: {
type: {},
description: 'The script that will be deleted.',
required: true,
}
},
exits: {
},
fn: async function ({script}) {
// If the provided script does not have a teams array and has an ID, it is an undeployed script that will be deleted.
if(script.id && !script.teams){
await UndeployedScript.destroy({id: script.id});
} else {
for(let teamScript of script.teams){
await sails.helpers.http.sendHttpRequest.with({
method: 'DELETE',
baseUrl: sails.config.custom.fleetBaseUrl,
url: `/api/v1/fleet/scripts/${teamScript.scriptFleetApid}`,
headers: {
Authorization: `Bearer ${sails.config.custom.fleetApiToken}`,
}
});
}
}
// All done.
return;
}
};