aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * use oidctoken executable to generate auth (#336)Dan Engelbrecht2025-04-027-18/+161
| | | | | | - Feature: `zen builds` auth option `--oidctoken-exe-path` to let zen run the OidcToken executable to get and refresh authentication token
| * Merge branch 'main' of https://github.ol.epicgames.net/ue-foundation/zenzousar2025-04-022-11/+18
| |\
| | * upload fail mac linux (#338)Dan Engelbrecht2025-04-021-11/+17
| | | | | | | | | * fix macos/linux path resolving
| | * Merge branch 'main' into fd-fix-binary-jsonFlorent Devillechabrol2025-04-0281-1991/+7345
| | |\
| | * | Fixed missing trailing quote when converting binary data from compact binary ↵Florent Devillechabrol2025-03-241-0/+1
| | | | | | | | | | | | | | | | to json
| * | | Merge branch 'main' of https://github.ol.epicgames.net/ue-foundation/zenzousar2025-04-028-13/+33
| |\ \ \ | | | |/ | | |/|
| | * | added --find-max-block-count option to builds upload (#337)Dan Engelbrecht2025-04-028-13/+33
| | | |
| * | | Updating frontend archivezousar2025-04-011-0/+0
| |/ /
| * | builds url discovery (#334)Dan Engelbrecht2025-04-0115-77/+345
| | | | | | | | | | | | | | | - Feature: Added `--host` option to use Jupiters list of cloud host and zen servers to resolve best hosts - Feature: Use local zenserver as builds cache if it has the `builds` service enabled and `--cloud-discovery-host` is provided and no remote zenserver cache hosts can be found - Improvement: Added `--override-host` option as a replacement for `--url` (`--url` still works, but `--override-host` is preferred)
| * | reduce disk io during gc (#335)Dan Engelbrecht2025-04-011-20/+8
| | | | | | | | | * do cache bucket flush/write snapshot as part of compact to reduce disk I/O
| * | verify that we can read input files that are only hashed (#333)Dan Engelbrecht2025-04-012-7/+122
| | | | | | | | | | | | | | | * output build and part details by default * output executable and version at start of builds command * verify that we can read files we do not chunk
| * | logging improvement (#332)Dan Engelbrecht2025-03-311-17/+20
| | | | | | | | | | | | * Cache -> Download cache * cleaned up info regarding local cache/state and remote cache
| * | multithreaded clean (#331)Dan Engelbrecht2025-03-313-92/+393
| | | | | | | | | | | | - Improvement: Faster cleaning of directories - Improvement: Faster initial scanning of local state
| * | long filename support (#330)Dan Engelbrecht2025-03-3141-519/+1270
| | | | | | | | | - Bugfix: Long file paths now works correctly on Windows
| * | check file from local track state during download (#329)Dan Engelbrecht2025-03-301-118/+147
| | |
| * | temp path options and reduced scanning of target folder (#328)Dan Engelbrecht2025-03-283-252/+580
| | | | | | | | | | | | | | | | | | - Feature: zen: `--zen-folder-path` added to `builds` command, `list`, `upload`, `download`, `fetch-blob`, `validate-part` to control where `.zen` folder is placed and named - Improvement: Only check known files from remote state when downloading to a target folder with no local state file - Improvement: Don't move existing local to cache and back if they are untouched
| * | build cache prime (#327)Dan Engelbrecht2025-03-276-454/+722
| | | | | | | | | | | | - Feature: zen `--boost-workers` option to builds `upload`, `download` and `validate-part` that will increase the number of worker threads, may cause computer to be less responsive - Feature: zen `--cache-prime-only` that uploads referenced data from a part to `--zen-cache-host` if it is not already present. Target folder will be untouched.
| * | Merge branch 'main' into zs/ui-show-cook-artifactsZousar Shaker2025-03-277-66/+216
| |\ \
| | * | optional compress of block chunks (#326)Dan Engelbrecht2025-03-277-66/+216
| | | | | | | | | | | | | | | | | | | | | | | | - Feature: zenserver: Add command line option `--gc-buildstore-duration-seconds` to control GC life time of build store data - Improvement: ELF and MachO executable files are no longer chunked - Improvement: Compress chunks in blocks that encloses a full file (such as small executables) - Bugfix: Strip path delimiter at end of string in StringToPath
| * | | Merge branch 'main' into zs/ui-show-cook-artifactsZousar Shaker2025-03-2633-947/+3984
| |\| |
| | * | zen build cache service (#318)Dan Engelbrecht2025-03-2633-947/+3984
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | - **EXPERIMENTAL** `zen builds` - Feature: `--zen-cache-host` option for `upload` and `download` operations to use a zenserver host `/builds` endpoint for storing build blob and blob metadata - Feature: New `/builds` endpoint for caching build blobs and blob metadata - `/builds/{namespace}/{bucket}/{buildid}/blobs/{hash}` `GET` and `PUT` method for storing and fetching blobs - `/builds/{namespace}/{bucket}/{buildid}/blobs/putBlobMetadata` `POST` method for storing metadata about blobs - `/builds/{namespace}/{bucket}/{buildid}/blobs/getBlobMetadata` `POST` method for fetching metadata about blobs - `/builds/{namespace}/{bucket}/{buildid}/blobs/exists` `POST` method for checking existance of blobs
| * | Descriptive type conversion messageszousar2025-03-261-15/+39
| | | | | | | | | | | | Handling decompression or validation errors with more descriptive messages
| * | Removed do_nothing from entry.jszousar2025-03-251-2/+0
| | |
| * | Moved AcceptType Handling From ProjectStore To HttpProjectStorezousar2025-03-253-61/+35
| | |
| * | Add CookPackageArtifacts attachment to web uizousar2025-03-212-6/+106
| |/
| * don't let auth env argument block other auth options (#316)Dan Engelbrecht2025-03-191-8/+12
| | | | | | * prioritize actual options over implicit env variable for auth token
| * jupiter builds stats upload (#315)Dan Engelbrecht2025-03-196-15/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | - Improvement: At end of build upload we post statistics to the Jupiter build stats endpoint: - `totalSize` - `reusedRatio` - `reusedBlockCount` - `reusedBlockByteCount` - `newBlockCount` - `newBlockByteCount` - `uploadedCount` - `uploadedByteCount` - `elapsedTimeSec` - `uploadedBytesPerSec`
| * build list filters (#313)Dan Engelbrecht2025-03-195-35/+96
| | | | | | | | | | - Feature: `zen builds list` command has new options - `--query-path` - path to a .json (json format) or .cbo (compact binary object format) with the search query to use - `--result-path` - path to a .json (json format) or .cbo (compact binary object format) to write output result to, if omitted json format will be output to console
| * Missing import statment on dashboard's start page (#314)Martin Ridgers2025-03-192-0/+1
| |
| * improved reporting on async error (#312)Dan Engelbrecht2025-03-182-8/+17
| | | | | | * report async errors as individual errors
| * If a chunk or block write operation results in more than one completed chunk ↵Dan Engelbrecht2025-03-181-88/+155
| | | | | | | | sequence, do the additional verifications as async work (#311)
| * collapse local writes (#310)Dan Engelbrecht2025-03-182-156/+199
| | | | | | * collapse read/writes during local data copy
| * Reduced disk I/O when writing out chunk blocks during download (#309)Dan Engelbrecht2025-03-181-70/+81
| |
| * improved post upload/download summary (#308)Dan Engelbrecht2025-03-183-420/+690
| | | | | | | | | | | | | | | | | | * added ValidateStatistics and improved post upload summary * improved download statistics * smoother stats update when compressing * better feedback during stream compresss/decompress * don't capture TotalPartWriteCount by reference * disk stats cleanup * multi-test-download overall timer
| * fix quoted command lines arguments (#306)Dan Engelbrecht2025-03-1215-182/+391
| | | | | | Handling of quotes and quotes with leading backslash for command line parsing - UE-231677
| * Remove spurious '4' in conditional code blockStefan Boberg2025-03-121-12/+12
| |
| * ProgressBar improvements (#305)Stefan Boberg2025-03-122-2/+42
| | | | | | | | | | * changed ProgressBar so it doesn't use printf. printf by default is very slow on Windows due to weird buffering behaviour. During a 2 minute build download I profiled 35 CPU seconds inside printf * changed so ProgressBar uses plain output mode if stdout is not a console/tty
| * fixes for log timestamps (#304)Stefan Boberg2025-03-125-3/+26
| | | | | | | | | | | | * add GetTimeSinceProcessStart returning time since process start. implemented using https://github.com/maxliani/GetTimeSinceProcessStart/tree/main * fix fractions when using epoch mode. Previously it would show the fraction from the absolute time stamp and not relative to epoch * used GetTimeSinceProcessStart to offset the epoch so that it represents the process spawn time
| * fix mac/linux builds command (#303)Dan Engelbrecht2025-03-121-15/+20
| | | | | | * fix linux/mac version of GetModificationTickFromPath and CopyFile
| * improved block gen logic (#302)Dan Engelbrecht2025-03-127-457/+599
| | | | | | | | | | | | | | - Improvement: Reduced memory usage during upload and part upload validation - Improvement: Reduced I/O usage during upload and download - Improvement: Faster block regeneration when uploading in response to PutBuild/FinalizeBuild - Improvement: More trace scopes for build upload operations - Bugfix: Fixed crash during download when trying to write outside a file range
| * async find blocks (#300)Dan Engelbrecht2025-03-111-42/+80
| | | | | | | | | | | | | | * put/get build and find blocks while scanning local folder when uploading * changelog * remove redundant move
| * Build command tweaks (#301)Stefan Boberg2025-03-117-59/+83
| | | | | | | | | | | | - Improvement: Don't chunk up .mp4 files as they generally won't benefit from deduplication or partial in-place-updates - Improvement: Emit build name to console output when downloading a build - Improvement: Added some debug logging - Bugfix: Logging setup would previously not function correctly when not logging to file
| * pick up existing cache (#299)Dan Engelbrecht2025-03-109-887/+1651
| | | | | | | | | | | | - Improvement: Scavenge .zen temp folders for existing data (downloaded, decompressed or written) from previous failed run - Improvement: Faster abort during stream compression - Improvement: Try to move downloaded blobs with rename if possible avoiding an extra disk write - Improvement: Only clean temp folders on successful or cancelled build - keep it if download fails
| * partial block fetch (#298)Dan Engelbrecht2025-03-078-402/+907
| | | | | | | | | | - Improvement: Do partial requests of blocks if not all of the block is needed - Improvement: Better progress/statistics on download - Bugfix: Ensure that temporary folder for Jupiter downloads exists during verify phase
| * reduced memory churn using fixed_xxx containers (#236)Stefan Boberg2025-03-0626-199/+377
| | | | | | | | | | | | * Added EASTL to help with eliminating memory allocations * Applied EASTL to eliminate memory allocations, primarily by using `fixed_vector` et al to use stack allocations / inline struct allocations Reduces memory events in traces by close to a factor of 10 in test scenario (starting editor for project F)
| * Add trace support for zen CLI command (#296)Stefan Boberg2025-03-054-37/+210
| | | | | | | | - This change adds support for `--trace`, `--tracehost` and `--tracefile` command arguments to enable and control tracing to Insights - It also adds profiling scopes primarily to build download command related code
| * streaming compress (#295)Dan Engelbrecht2025-03-053-37/+289
| | | | | | | | - Improvement: Validate hash of decompressed data inline with streaming decompression - Improvement: Do streaming compression of large blobs to improve memory and I/O performance
| * do direct update of stats numbers (#294)Dan Engelbrecht2025-03-041-24/+13
| |
| * stream decompress (#293)Dan Engelbrecht2025-03-043-57/+337
| | | | | | | | * clean up latency parameters and slow down rate updates * add DecompressToStream
| * limit and validate responses before logging the text (#292)Stefan Boberg2025-03-044-1/+110
| | | | | | Improvement: When logging HTTP responses, the body is now sanity checked to ensure it is human readable, and the length of the output is capped to prevent inadvertent log bloat