Search Unity

Question "ucd.exe releases create" outputs "Error! cannot create a release: x.bundle is incomplete"

Discussion in 'Unity Cloud Content Delivery' started by Peter77, Aug 24, 2021.

  1. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,609
    UCD 0.9.14, Windows Jenkins Server

    ucd releases create
    recently failed a few times with the following message:
    Code (CSharp):
    1. + /usr/local/bin/ucd releases create --bucket xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    2. Error! cannot create a release:
    3.   iOS/r-tests_scenes_assets/tests/pooling_012e6a741f8cb968186b858d1fc3edd8.bundle is incomplete
    4.   iOS/r-tests_scenes_assets/tests/shader_b77ffd53ce29c35e3e0c443ff14119b8.bundle is incomplete
    5.   iOS/r-tests_scenes_assets/tests/memory_usage_299c867e2a71db3cd531ccf9d4873e1b.bundle is incomplete
    6.   iOS/r-tests_scenes_assets/tests/savemanager_bd4bf42b91110bbf2c8ad64ee7bd62ef.bundle is incomplete
    7.   iOS/r-tests_scenes_assets/tests/memory_usage_ed8afafdd3785afe0fe0bb88045f5752.bundle is incomplete
    These files do not exist in the directory that was used to sync files with
    ucd entries sync
    . These files do however exist in Cloud Delivery, I checked in the dashboard. I guess they're a left-over from an earlier sync perhaps.

    Questions:
    1. It seems
      ucd entries sync
      does not remove files from the Cloud that no longer exist in the sync directory. I assumed it would do that, why doesn't it?
    2. Should I remove all entries from a bucket before I run the next sync command? What are the best practices here?
    3. How can I delete all entries from a bucket using CLI?
    4. What exactly is "bundle is incomplete" telling me? Did an earlier sync fail to upload these files entirely?
    My current workaround is to login the UCD dashboard and delete all entries via from there.
     
    Last edited: Aug 24, 2021
  2. annajollyunity

    annajollyunity

    Unity Technologies

    Joined:
    Nov 18, 2020
    Posts:
    5
    Hi Peter,
    1. You can use the `-d` flag to do this. `ucd entries sync -d` will remove files that are currently in your bucket but are not in the sync directory.
    2. No need to remove all entries from a bucket before running sync when using the `-d` flag.
    3. You could either use `ucd entries sync -d` with an empty directory, or alternatively use `ucd entries delete [file]` in a loop.
    4. Yes, it is telling you that the hash generated from the content for the file specified does not match the expected hash, due to an incomplete upload. This can be resolved by re-uploading the file.
     
    Peter77 likes this.
  3. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,609
    Thank you for the reply.

    Do you recommend to "remove files that are currently in a bucket but are not in the sync directory" when syncing entries? My thought on it is otherwise the bucket size would probably just grow "infinitely" over time and I don't see any benefit of having unneeded files in the bucket.
     
  4. annajollyunity

    annajollyunity

    Unity Technologies

    Joined:
    Nov 18, 2020
    Posts:
    5
    Yes, I would indeed recommend that.
     
    Peter77 likes this.
  5. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,609
    Thank you for the quick help!