# After 'sls deploy', 'sls deploy function' errors with "Uploaded file must be a non-empty zip"

**URL:** <https://forum.serverless.com/t/after-sls-deploy-sls-deploy-function-errors-with-uploaded-file-must-be-a-non-empty-zip/753>\
**Category:** Serverless Framework\
**Created:** [November 11, 2016, 2:34am UTC](https://forum.serverless.com/t/after-sls-deploy-sls-deploy-function-errors-with-uploaded-file-must-be-a-non-empty-zip/753 "2016-11-11T02:34:50Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![TerryHibbert](https://yyz2.discourse-cdn.com/flex036/user_avatar/forum.serverless.com/terryhibbert/32/189_2.png) [@TerryHibbert](https://forum.serverless.com/u/TerryHibbert)\
**Post date:** [November 11, 2016, 2:34am UTC](https://forum.serverless.com/t/after-sls-deploy-sls-deploy-function-errors-with-uploaded-file-must-be-a-non-empty-zip/753/1 "2016-11-11T02:34:50Z")

</div>

The initial ‘sls deploy’ works fine, but I get this error on trying to deploy the individual function with ‘sls deploy function --function test’

```
Serverless Error ---------------------------------------
  Uploaded file must be a non-empty zip
...
Your Environment Infomation -----------------------------
  OS: darwin
  Node Version: 4.6.0
  Serverless Version: 1.0.3

```

The handler.js is in the ‘test’ subfolder and this is the yaml:

```
functions:    
  test:
    name: ${self:provider.stage}-test
    handler: test/handler.test
    memorySize: 128
    events:
      - http:
          path: test
          method: get

```

The function works on AWS and locally with serverless-offline. But I can’t update it without doing another ‘sls deploy’ (which takes 5+ minutes). Any help would be appreciated.

Edit: I downloaded Serverless Dashboard and the deploy function worked. The working command from the App doesn’t work from the command line.
