dyslexicanaboko / consuela Goto Github PK
View Code? Open in Web Editor NEWService for cleaning out user specified folders on a configurable schedule.
License: MIT License
Service for cleaning out user specified folders on a configurable schedule.
License: MIT License
The audit files need to be purged according to the threshold configuration.
The UI is hideous by design because UI is not a major part of this application:
The profile on save needs to be validated
Need to look for more problems.
Nested folders in the ignore list are still being cleared. I am not sure if this is because I didn't restart my service after making changes to the config or not. I have to investigate, but on more than one occasion now I have witnessed a folder I said to ignore during clean up get completely wiped out.
So for example:
The hold folder is NOT being ignored and is getting wiped out.
Again, this really may just be because I didn't restart the service so it could be my fault. Either way, I should make it so that when the config is updated the necessary objects in memory are updated. I swear I did that already, but I will have to investigate.
I knew it was a crapshoot when I didn't bother testing if what I did was going to work, wishful thinking that it would work outside of development, so I need to figure out why the changes to Host and Port will not save to disk. It does save to memory just fine and it is even recalled from memory in the same run. It just will not save to disk, so I have to figure out how to force that to happen. Not urgent because the appsettings.json can just be edited directly so I don't care too much.
I handled live on demand runs in #17, but I didn't handle dry runs.
Not sure what to do just yet when a file doesn't allow me to delete it. Example:
System.UnauthorizedAccessException: Access to the path 'C:\Dump\code folder\Projects\.git\objects\pack\pack-faef312b4a7a7c422a8ebb5df628ef23ec9cd14f.idx' is denied.
EDIT: 12/30/2022 - It will require some experimentation, but it might have something to do with attributes. Usually it's because the filename is too long. What I am thinking is providing an explicit option for allowing the application to use CMD when it cannot delete the files via dot net. Shell access should be able to delete those files no problem and more often than not it is indeed the .git
folder.
There should be two types of runs:
It's easier to test settings if you can just run things live. This will require UI to make it happen and need to be careful that two clean up services are not running simultaneously. This means the scheduled instance gets priority and button mashing must be prevented.
Every time the service runs, it would be nice if there was a way to visually review this.
Make it an option to export the audit data as a formatted Excel file so that the data can be filtered more quickly.
Besides the audit log which shows everything as a CSV (mostly). It may be more beneficial to export the statistical information and exceptions as a separate file formatted as JSON so that the structure does not have to adhere to a tabular format.
I didn't wire up the Audit toggle or retention because I was trying to get everything to work first before worrying about toggling something like that off. As it is, it will delete everything older than 30 days.
It would be nice to just have a simple way to install the application without having to go through all of the steps of installing the service and setting up other things.
The time for the program does not sync when the system time is changed. Not sure if I can fix this or not. It's also more of an edge case than anything else, but it does matter as the program will be out of sync until restarted.
Example:
If you are using a VM and you sleep it then wake it up a week later - the locked in time is a week old. Not only has the program missed several clean up cycles potentially, but it has the wrong time in memory too.
Show on the console and the UI when the next run is scheduled to happen. Right now it's impossible to know.
Via a simple MVC web interface, provide a way to handle management of the Profile.json
file.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.