-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: detect changes in sources #460
Conversation
9d294db
to
e8a6ad8
Compare
@MDr164 I just made one small change - when the
|
No to toot my own horn, but I like that this is actually much faster than Fully checked out |
Signed-off-by: AtomicFS <[email protected]>
- should not make difference, but since we have verification running over the values, and directories must end with slash, this should better match our actual use-case Signed-off-by: AtomicFS <[email protected]>
- not sure how or why, but we were checking for existing artifacts, instead of just checking if the output directory exists - this fixes the problem Signed-off-by: AtomicFS <[email protected]>
- it can easily happen that the output directory will be empty, for example when build succeeds but the output files are not found - with this patch, to skip the build the directory can exists, but must not be empty Signed-off-by: AtomicFS <[email protected]>
- replace Walk with WalkDir Signed-off-by: AtomicFS <[email protected]>
- add new filesystem functions which can detect changes in files base on time-stamps - since we work with large projects, such as Linux Kernel, this detection should be as fast as possible - to make it fast, we solely rely on time, no hashing - the idea is that firmware-action will create a time-stamp file at the end of each execution (for each target) - at the start of each execution firmware-action will load time-stamp file from previous execution and check if any file in sources is newer that the saved time-stamp - the detection function is lazy, and will return on first positive match - if the no file in sources is newer, target should be considered up-to-date and skipped Signed-off-by: AtomicFS <[email protected]>
- this should add the ability to detect changes in sources - in addition, the dagger setup was moved so now the loop for up-to-date module is much faster Signed-off-by: AtomicFS <[email protected]>
Signed-off-by: AtomicFS <[email protected]>
- we wanted to skip .git directory - submodules contain .git file - returning 'filepath.SkipDir' on '.git' file skips the directory in which the file is Signed-off-by: AtomicFS <[email protected]>
0be9af6
to
0150e37
Compare
@MDr164 do you have time for review? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks mostly fine, just some minor comments
Signed-off-by: AtomicFS <[email protected]>
Summary before:
Summary now:
fixes #441