What's Changed
- Add support for enumerating disks via COM. by @copybara-service[bot] in #362
- Add support for MSFT_Partition. by @copybara-service[bot] in #364
- Support filtering in GetDisks. by @copybara-service[bot] in #363
- Add DiskSet and PartitionSet, and store a handle to each Disk and Partition. by @copybara-service[bot] in #365
- Add Partition.Resize and Partition.Delete. by @copybara-service[bot] in #366
- Add Disk.Clear and Disk.Initialize. by @copybara-service[bot] in #367
- refactor: Remove logic that checks for stopped osquery process(es) by @copybara-service[bot] in #360
- Add Disk.CreatePartition. by @copybara-service[bot] in #372
- Add support for volumes. by @copybara-service[bot] in #370
- Add Volume.Format. by @copybara-service[bot] in #371
- Hold MBR and GPT types inside container structures to avoid name collisions. by @copybara-service[bot] in #373
- Convert DriveLetter from Char16 (Ascii) to String by @copybara-service[bot] in #368
- Make Disk objects individually refreshable and closable. by @copybara-service[bot] in #374
- Make Volume objects individually refreshable and closable. by @copybara-service[bot] in #375
- Make Partition objects individually refreshable and closable. by @copybara-service[bot] in #376
- Type & null fixes for Volume.Format. by @copybara-service[bot] in #377
- Update go.mod by @copybara-service[bot] in #378
- Remove PowerShell-based storage methods. by @copybara-service[bot] in #379
- Add Offline, Online, & Refresh to disk. by @copybara-service[bot] in #380
- Add Offline & Online to partition. by @copybara-service[bot] in #381
- Add Flush & Optimize to Volume. by @copybara-service[bot] in #382
- Add the SetFileSystemLabel method. by @copybara-service[bot] in #383
- Add README files for the bitlocker, dism, googet, & storage packages. by @copybara-service[bot] in #385
- Running mdfmt by @copybara-service[bot] in #384
- Add basic READMEs for googet/power/registry. by @copybara-service[bot] in #386
- Internal Change by @copybara-service[bot] in #388
- feat: Add release_id and stage to title.py by @copybara-service[bot] in #387
- chore: Replace usage of
.format()for f-strings in title.py to improve readability by @copybara-service[bot] in #389 - Add eventlog package with a few type declarations. by @copybara-service[bot] in #390
- Add StringToPtrOrNil helper. by @copybara-service[bot] in #395
- Add Handle and Query. by @copybara-service[bot] in #392
- Add AddAccessPath and RemoveAccessPath functions by @copybara-service[bot] in #391
- Add Next and custom Handle types. by @copybara-service[bot] in #393
- Add CreateRenderContext by @copybara-service[bot] in #394
- Add Render by @copybara-service[bot] in #397
- Add RenderValues by @copybara-service[bot] in #398
- Add CreateBookmark and UpdateBookmark. by @copybara-service[bot] in #399
- Adding build constraints for Windows libraries. by @copybara-service[bot] in #402
- refactor: Remove logic that checks for stopped osquery process(es) by @copybara-service[bot] in #403
- Add OpenPublisherMetadata by @copybara-service[bot] in #400
- In the event of an exec error return any output we can capture as part of the error. by @copybara-service[bot] in #396
- fix err interface by @copybara-service[bot] in #405
- Add ClearLog to Session. Refactor Query to be a member of Session. by @copybara-service[bot] in #406
- Move OpenPublisherMetadata to a Session member. by @copybara-service[bot] in #407
- Borrow AvailableChannels from winlog. by @copybara-service[bot] in #408
- Add Subscribe by @copybara-service[bot] in #409
- Add Subscription.WaitForSignal by @copybara-service[bot] in #411
- Add Event.Format. by @copybara-service[bot] in #410
- Add Session.AvailablePublishers from winlog. by @copybara-service[bot] in #412
- Refactor EvtVariant Handling by @copybara-service[bot] in #414
- Add support for EvtOpenChannelConfig and EvtGetChannelConfigProperty. by @copybara-service[bot] in #415
- refactor: Don't add empty config_root_path to title by @copybara-service[bot] in #417
- Refactor volume.Format and add formatting helpers. by @copybara-service[bot] in #416
- Add the PartitionSupportedSize Method by @copybara-service[bot] in #419
- Add support for disk.ConvertStyle. by @copybara-service[bot] in #420
- Fix or ignore some pytype errors. by @copybara-service[bot] in #421
- Fix typing for AccessPaths; needs to be string array. by @copybara-service[bot] in #423
- Change size and alignment to uint64 based on findings in cl/393119620. by @copybara-service[bot] in #424
- Adjust the type entry for the size param for the Resize method call by @copybara-service[bot] in #422
- Add an Unknown partition style. by @copybara-service[bot] in #429
- Target only inf files with pnputil. by @copybara-service[bot] in #432
- Prevent a panic, by not converting AccessPath values that are empty (
VT_NULL) by @copybara-service[bot] in #433 - Add a table for human readable BusType to its corresponding int value. by @copybara-service[bot] in #434
- Add a table for DriveTypes by @copybara-service[bot] in #435
- default to unattended joins by @copybara-service[bot] in #425
- refactor: Move slic package into oss repo by @copybara-service[bot] in #438
- Add a stub library for glazier/os. Add more ProductTypes. by @copybara-service[bot] in #443
- If stderr or stdout config options are specified pass the interfaces directly to the executed process rather than acting as a buffer. by @copybara-service[bot] in #444
- Refactoring helpers.Exec io handling (again). by @copybara-service[bot] in #445
- chore: Freshness update for setup/about.md by @copybara-service[bot] in #447
- Grab output after Wait() returns by @copybara-service[bot] in #448
- Internal Change by @copybara-service[bot] in #450
- Internal Change by @copybara-service[bot] in #451
- Internal Change by @copybara-service[bot] in #452
- Internal Change by @copybara-service[bot] in #453
- Internal Change by @copybara-service[bot] in #454
- Internal Change by @copybara-service[bot] in #455
- Internal Change by @copybara-service[bot] in #456
- Documentation around new SpliceDomainJoin args. by @copybara-service[bot] in #457
- Adjust helpers with add
exit $LASTEXITCODEso the execresult can consume the exit code set by a script - https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_powershell_exe?view=powershell-5.1 by @copybara-service[bot] in #458 - Internal Change by @copybara-service[bot] in #461
- Internal Change by @copybara-service[bot] in #465
- Fix comparison to literal in abort.py. by @copybara-service[bot] in #466
- Internal Change by @copybara-service[bot] in #467
- feat: Add disk info action by @copybara-service[bot] in #469
- refactor: Rename action/registry key and cast value by @copybara-service[bot] in #473
- Add a table for Operational Status` ref: https://docs.microsoft.com/en-us/previous-versions/windows/desktop/stormgmt/msft-partition by @copybara-service[bot] in #474
- Internal Change by @copybara-service[bot] in #470
- docs: Freshness update by @copybara-service[bot] in #477
- Moving glazier_spec flag definition to buildinfo. by @copybara-service[bot] in #475
- Adjust constant import style in a couple tests. by @copybara-service[bot] in #476
- Internal Change by @copybara-service[bot] in #478
- Move DeviceModel notices inside class for extensibility. by @copybara-service[bot] in #479
- Add _InstallOpeners to download.py for extensibility. by @copybara-service[bot] in #481
- Export functions in errors.py for better extensibility. by @copybara-service[bot] in #482
- Internal Change by @copybara-service[bot] in #483
- Internal Change by @copybara-service[bot] in #484
- docs: Pull Requests are now accepted! by @copybara-service[bot] in #486
- docs: Revert to old contribution guide that notes how to contribute by @copybara-service[bot] in #487
- fix(dism): reload imaging session when needed by @lippertmarkus in #460
- Internal Change by @copybara-service[bot] in #489
- Internal Change by @copybara-service[bot] in #490
- Errors that occur during HTTPS downloads now trigger an exponential backoff. by @copybara-service[bot] in #488
- Internal Change by @copybara-service[bot] in #494
- chore: Freshness update by @copybara-service[bot] in #495
- Fixes some broken links and does some wordsmithing in yaml/index.md by @copybara-service[bot] in #497
- Cleans up the exception re-raising in actions/file_system.py. by @copybara-service[bot] in #498
- Adds the 'from' keyword to all exception re-raises by @copybara-service[bot] in #500
- add name name generation support for splice actions by @copybara-service[bot] in #502
- Allow the helpers library to be imported by projects building against non-Windows. by @copybara-service[bot] in #505
- Add backoff logic for BeyondCorp Signed URL checks by @copybara-service[bot] in #507
- update git requirements to avoid git protocol by @copybara-service[bot] in #509
- Update Glazier tests to Go 1.18. by @copybara-service[bot] in #510
- Add a non-Windows stub to the power package. by @copybara-service[bot] in #508
- Add support for the listrepos command. by @copybara-service[bot] in #513
- Add the StringInSlice helper from cablib. by @copybara-service[bot] in #515
- Have stopService check service state before attempting to control it. by @copybara-service[bot] in #512
- feat: Add functionality (policy) that enables Glazier to check BIOS version by @copybara-service[bot] in #519
- Documentation cleanup by @copybara-service[bot] in #518
- Internal Change by @copybara-service[bot] in #520
- Internal Change by @copybara-service[bot] in #521
- chore: Cleanup references to
glazier_spec=flag, as this is the default and only option. by @copybara-service[bot] in #522 - Refactoring of lib/errors.py before making further improvements. by @copybara-service[bot] in #524
- refactor: Migrate
power.pyto execute lib by @copybara-service[bot] in #525 - refactor: Migrate
bitlocker.pyto execute lib by @copybara-service[bot] in #531 - feat: Add
check_return_codearg toexecute_binaryfunction by @copybara-service[bot] in #546 - Updates remaining 4XXX error codes. by @copybara-service[bot] in #548
- Updates policies/base.py to inherit from GlazierError. by @copybara-service[bot] in #550
- Updates files.Error to inherit from GlazierError. by @copybara-service[bot] in #551
- Updates lib/stage.py to inherit from GlazierError. by @copybara-service[bot] in #552
- Moves UnsupportedModelError. by @copybara-service[bot] in #555
- Deletes an unused Exception subclass. by @copybara-service[bot] in #559
- Moves all BeyondCorp errors into beyondcorp.py. by @copybara-service[bot] in #556
- Moves all "exec" errors into execute.py. by @copybara-service[bot] in #558
- Updates lib/drive_map.py to inherit from GlazierError. by @copybara-service[bot] in #561
- Updates lib/googet.py to inherit from GlazierError. by @copybara-service[bot] in #562
- Updates lib/bitlocker.py to inherit from GlazierError. by @copybara-service[bot] in #564
- Updates lib/title.py to inherit from GlazierError. by @copybara-service[bot] in #565
- Updates lib/ntp.py to inherit from GlazierError. by @copybara-service[bot] in #568
- Moves UnknownActionError out of errors.py. by @copybara-service[bot] in #572
- Moves UnknownPolicyError out of errors.py. by @copybara-service[bot] in #574
- Updates lib/logs.py to inherit from GlazierError. by @copybara-service[bot] in #575
- Deletes two unused Exceptions from errors.py. by @copybara-service[bot] in #579
- Updates lib/file_util.py to inherit from GlazierError. by @copybara-service[bot] in #582
- Updates lib/disk.py to inherit from GlazierError. by @copybara-service[bot] in #583
- Updates lib/registry.py to inherit from GlazierError. by @copybara-service[bot] in #584
- Opportunistic test cleanup in chooser/fields_test.py. by @copybara-service[bot] in #586
- fix: Clear cache before gets to avoid order-dependent failures by @copybara-service[bot] in #590
- Consistency cleanup of remaining unit tests. by @copybara-service[bot] in #595
- Consistency cleanup of remaining unit tests. by @copybara-service[bot] in #593
- Consistency cleanup of remaining unit tests. by @copybara-service[bot] in #594
- Typo fix. by @copybara-service[bot] in #598
- Better cleanup of deprecated error codes. by @copybara-service[bot] in #599
- Merges two redundant error codes, and the associated Exceptions. by @copybara-service[bot] in #601
-
- Add a process timer to helpers.exec by @copybara-service[bot] in #602
- Creates test_utils.py for test-only utility functions. by @copybara-service[bot] in #604
- Glazier test parameterization. by @copybara-service[bot] in #607
- Fixes end-state logging output of the new error code changes. by @copybara-service[bot] in #606
- Deprecates some now-obsolete error codes. by @copybara-service[bot] in #608
- Glazier test parameterization. by @copybara-service[bot] in #611
- Glazier test parameterization. by @copybara-service[bot] in #612
- Glazier test parameterization. by @copybara-service[bot] in #613
- Glazier test parameterization. by @copybara-service[bot] in #614
- cmd.Wait() for a non 0 exit code is filled with metadata (it's assuming any non 0 exit code is bad), by pinning verify on this being nil means we are doing the same by @copybara-service[bot] in #616
- Further refinements to the new Glazier error messaging. by @copybara-service[bot] in #619
- Fix order dependent test. by @copybara-service[bot] in #621
- Moves _get_glazier_error_lineage() into errors.py for easier reuse. by @copybara-service[bot] in #622
- Cleaner path argument usage for registry-related functions and Exceptions. by @copybara-service[bot] in #626
- Adds a new test assertion for verifying that no GlazierErrors contain the DEFAULT error code. by @copybara-service[bot] in #624
- Fixes
ConfigErrorto no longer report as theDEFAULTerror code (7000). by @copybara-service[bot] in #625 - feat: Add PrintFromFile Action by @copybara-service[bot] in #630
- fix: Always get/set timers from registry by @copybara-service[bot] in #632
- refactor: Fall back to
FLAGS.config_serverwhen readingversion-info.yamlby @copybara-service[bot] in #638 - Update the Glazier Python version from 3.7.4 to 3.9.13 by @copybara-service[bot] in #646
- Added battery status function to BuildInfo by @copybara-service[bot] in #652
- chore: Multiple freshness updates by @copybara-service[bot] in #655
- Fix to prevent googet_test.py from using the top-level execute.Error parent class by @copybara-service[bot] in #657
- Adds helper methods to GlazierTestCase by @copybara-service[bot] in #663
- Migrating Glazier logging from logger to deck. by @copybara-service[bot] in #670
- Expose build info data directly outside of Serialize() via GetBuildInfo() by @copybara-service[bot] in #681
- refactor: Export
RegStagesRootvariable by @copybara-service[bot] in #690 - Add Glazier support for logging to a syslog server. by @copybara-service[bot] in #691
- Add ability to autoset beyond corp settings via constants. by @copybara-service[bot] in #698
- implement enable/disable firewall operations within winpe by @copybara-service[bot] in #704
- store syslog variables conditionally by @copybara-service[bot] in #709
- Create flags library beginning with GLAZIER_SPEC. by @copybara-service[bot] in #710
- Move NTP_SERVER to flags. by @copybara-service[bot] in #712
- Rework the behavior of verify_urls. by @copybara-service[bot] in #713
- Reworking handling of buildinfo in logs library. by @copybara-service[bot] in #717
- Don't call this here. by @copybara-service[bot] in #721
- Add support for EvtExportLog by @jfut in #722
- Update actions.md: correct UpdateMSU options by @iamacarpet in #701
- add remove bool flag for googet glazier action (defaults to False) by @copybara-service[bot] in #725
- Adjust googet.py to add validation for removal of googet packages by @copybara-service[bot] in #726
- Change CheckUrl() to raise errors and allow DownloadFailedError to be raised through it. by @copybara-service[bot] in #727
- If Lenovo return
SystemFamilyinstead since its more human readable (e.g.ThinkPad P1 Gen 6) rather than21FWS4...by @copybara-service[bot] in #729 - Use strings.EqualFold to compare manufacturer. by @copybara-service[bot] in #731
- Implement read/connect timeout for file downloads by @iamacarpet in #724
- Internal Change by @copybara-service[bot] in #732
- Swap from the ConvertStyle method during disk initialization to calling the Initialize method and make it so that disks that automatically get initialized during wipe (most flash drives) don't throw an error. by @copybara-service[bot] in #738
- Revert previous change and allow function callers to define their own verifier by @copybara-service[bot] in #740
- Internal changes by @copybara-service[bot] in #741
- Make it so that if a drive that auto formats to MBR is inserted, we convert it to GPT. by @copybara-service[bot] in #744
- Fix a panic when we call close before wmiSVC is set. by @copybara-service[bot] in #746
- Add CPU arch pin to build info so you can pin against CPU type (e.g. ARM64) by @copybara-service[bot] in #749
- Automated Code Change by @copybara-service[bot] in #748
- Set Windows build flag by @copybara-service[bot] in #750
- Add a function to set binary reg values by @copybara-service[bot] in #751
- Internal changes. by @copybara-service[bot] in #753
- pass in the ca_cert_file for unverified downloads to fix basedownloader for new python version. by @copybara-service[bot] in #754
- Attempt downloads again with the machine context if the first failure is an HTTPError. by @copybara-service[bot] in #755
- Add ability to delete registry keys recursively. by @copybara-service[bot] in #757
- Add function to set console window position. Note that this will not work with windows terminal, it will only work with powershell or cmd. by @copybara-service[bot] in #759
- Create helper functions for common network tasks: Get local NIC info, set IP, DNS and forward routes (e.g. default gateway) by @copybara-service[bot] in #760
- Add domain joined function. by @copybara-service[bot] in #761
- Add a function to lookup nic by mac address and unit tests for
NetworkAdapterPropertiesByMacandNetworkAdapterPropertiesby @copybara-service[bot] in #762 - Update glazier go modules. by @copybara-service[bot] in #764
-
- Add helper functions for; by @copybara-service[bot] in #763
- Improve window handle lookup to work with Windows Terminal by @copybara-service[bot] in #766
- Allow users to specify repo priority by @copybara-service[bot] in #768
- This should be cast as 2 separate items. by @copybara-service[bot] in #769
- Add a function to allow setting/reading REG_MULTI_SZ by @copybara-service[bot] in #770
- Add a Go package for Windows domain joining. by @copybara-service[bot] in #771
- Var consolidation and make joinOU optional to match win32 api call. by @copybara-service[bot] in #772
- Updated glazier/lib to comply with Pytype None checks by @copybara-service[bot] in #773
- Remove dependency on facter lib. by @copybara-service[bot] in #774
- Internal Change by @copybara-service[bot] in #775
- Introduces a new progress package that generates and displays progress updates on the Windows lock screen. The progress package uses the gg library to overlay text on a base image. The UI updates the lock screen by setting a registry policy and forcing a LogonUI refresh. Temporary image files can be cleaned up if required. Tests are added to verify image generation and cleanup behavior. by @copybara-service[bot] in #777
- Automated Code Change by @copybara-service[bot] in #779
- Serialize image_type to build_info.yaml in Glazier and support retrieving it. Add image_type to buildinfo_test.py. by @copybara-service[bot] in #780
- golang module updates by @copybara-service[bot] in #781
- Add workflow permissions. by @copybara-service[bot] in #782
- Internal change. by @copybara-service[bot] in #783
- Add local googet package installation support. by @copybara-service[bot] in #784
New Contributors
- @lippertmarkus made their first contribution in #460
- @jfut made their first contribution in #722
- @iamacarpet made their first contribution in #701
Full Changelog: v2.1.0...v2.2.0