Skip to content
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

Enable usage of lifecycle image for windows #823

Merged
merged 6 commits into from
Sep 17, 2020
Merged

Enable usage of lifecycle image for windows #823

merged 6 commits into from
Sep 17, 2020

Commits on Sep 17, 2020

  1. Enable usage of lifecycle image for windows

    Signed-off-by: Andrew Meyer <meyeran@vmware.com>
    Signed-off-by: Malini Valliath <mvalliath@vmware.com>
    Signed-off-by: Victoria Henry <vhenry@pivotal.io>
    Signed-off-by: Anthony Emengo <aemengo@vmware.com>
    TisVictress authored and Micah Young committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    5b2130c View commit details
    Browse the repository at this point in the history
  2. Add test coverage for windows container ops

    Signed-off-by: Micah Young <ymicah@vmware.com>
    Micah Young committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    6ef83d2 View commit details
    Browse the repository at this point in the history
  3. Fix test expectations for GHA

    Signed-off-by: Micah Young <ymicah@vmware.com>
    Micah Young committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    b2cdd90 View commit details
    Browse the repository at this point in the history
  4. Change container.Run to work for Windows and Linux

    - Short-lived containers did not flush logs correctly
    - New implementation does ContainerAttach then ContainerStart like the [docker CLI run command])(https://github.com/docker/cli/blob/f8696535e9e516a5a404661697fef6f1228ada64/cli/command/container/run.go)
    reproducible outside tests
    - Use test helper for waiting on logs
    - Fix test polution from shared buffers
    
    Signed-off-by: Micah Young <ymicah@vmware.com>
    Micah Young committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    21ba14b View commit details
    Browse the repository at this point in the history
  5. Fix volume permissions for Windows

    Windows permissions attempt to match imgutil's very limited permission model. Both implemtations do the following for setting user permissions:
    * UID/GID==0 => BUILTIN\Administrators,
    * otherwise BUILTIN\Users
    
    A more complex permission model will be introduced to the spec with a fix for [lifecycle#343](buildpacks/lifecycle#343) but for now, this seemed like the best approach to accomodate any image config.User whose UID/GID cant be expressed as integers.
    
    Other details:
    - Only use xcopy for directories, which correctly sets permissions for copied files, particulary when workspace and layers are not volumes (also removes awkward pipe option syntax).
    - Change acceptance test apps and buildpacks to only use directory symlinks/junctions. Windows doesn't allow non-admin users to create symlinks, only junctions.
    
    Signed-off-by: Micah Young <ymicah@vmware.com>
    Micah Young committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    1c7bc2c View commit details
    Browse the repository at this point in the history
  6. Clean up path functions

    - Add unit tests for Windows path functions
    
    Signed-off-by: Malini Valliath <mvalliath@pivotal.io>
    Signed-off-by: Micah Young <ymicah@vmware.com>
    Micah Young committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    e8a6b83 View commit details
    Browse the repository at this point in the history