Skip to content

Refactor provisionersdk.Tar/Untar #16163

Open
Open
@johnstcn

Description

@johnstcn

Problem:

There are some inconsistencies in how we handle tar archives:

  1. provisionersdk.Tar adds symlinks without de-referencing them
  2. provisionersdk.Untar does not handle symlinks at all as far as I can tell
  3. provisionerd does not actually use provisionersdk.Untar to extract archives; it uses a separate implementation (*provisionersdk.Session).extractArchive()

Proposed solution:

  • Bring the behaviour of provisionersdk.Untar in line with extractArchive()
  • Replace existing usage of extractArchive() with provisionersdk.Untar
  • Clarify behaviour regarding symlinks -- given that we currently do not extract them, it does not make sense to continue the existing dereferencing behaviour in provisionersdk.Tar().

Originally posted by @johnstcn in #16128 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug riskProne to bugss4Internal bugs (e.g. test flakes), extreme edge cases, and bug risks

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions