Skip to content

Seeing sync errors in attempting to sync *.html files #6845

@aaron-prindle

Description

@aaron-prindle

I am currently attempting to add file sync support to the application below for it's *.html files (one file - index.html):
https://github.com/GoogleCloudPlatform/golden-path-for-app-delivery

In attempted to modify the app to use both infer and manual file syncing I get some File exists errors during the sync:

  • using infer sync via:
# skaffod.yaml file
... # other parts of the file
build:
  artifacts:
  - image: sample-app
    context: ./
    sync:
      infer:
      - '*.html'

I see error:

$ skaffold dev
... # other output
Watching for changes...
Syncing 1 files for sample-app:96f218a6a3a5ae91385aedda1607584bfd4f025b90478242e8dc13bae71b2a15
WARN[0047] Skipping deploy due to sync error:copying files: running [kubectl --context minikube exec sample-app-dev-cdf9f4f8d-7vfbm --namespace default -c sample-app -i -- tar xmf - -C / --no-same-owner]
 - stdout: ""
 - stderr: "tar: Removing leading `/' from member names\ntar: go/src/app/index.html: Cannot open: File exists\ntar: Exiting with failure status due to previous errors\ncommand terminated with exit code 2\n"
 - cause: exit status 2  subtask=-1 task=DevLoop

I attempting to use manual sync as well and saw the same error although with some different paths

# skaffold.yaml
... # other parts of the file
build:
  artifacts:
  - image: sample-app
    context: ./
    sync:
      manual:
        - src: 'index.html'
          dest: /index.html

The error:

Syncing 1 files for sample-app:d72084a3f558bb761d1291b589e3d3a1de41352395bc09e89ef9f5fa0b34e088
WARN[0093] Skipping deploy due to sync error:copying files: running [kubectl --context minikube exec sample-app-dev-86fc868b9-txkzl --namespace default -c sample-app -i -- tar xmf - -C / --no-same-owner]
 - stdout: ""
 - stderr: "tar: Removing leading `/' from member names\ntar: index.html: Cannot mkdir: Permission denied\ntar: index.html/index.html: Cannot open: No such file or directory\ntar: Exiting with failure status due to previous errors\ncommand terminated with exit code 2\n"
 - cause: exit status 2  subtask=-1 task=DevLoop

I also tried removing the file from the Dockerfile (to see of if this was related to the file previously existing in the image) but I saw the same errors

Not sure what I might be doing wrong here, my understanding is that this should work with both sync types infer and manual and not require any additional changes to other files (Dockerfile, etc) but I seem to have this issue in all attempts

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/syncbugbash/q4-2022Issues related to Skaffold Bugbash Q4 2022help wantedWe would love to have this done, but don't have the bandwidth, need help from contributorskind/bugSomething isn't workingpriority/p3agreed that this would be good to have, but no one is available at the moment.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions