开发者社区 > 云原生 > Serverless > 正文

有个问题请教下 deploy 的时候想排除文件或者文件夹 exclude 好像不可用 文档里的例子

有个问题请教下 deploy 的时候想排除文件或者文件夹 exclude 好像不可用 文档里的例子

提问51.png

展开
收起
云原生那些事 2023-06-25 16:35:19 103 0
3 条回答
写回答
取消 提交回答
  • 在阿里云函数计算中,template.yml 中的 exclude 选项用于指定在部署期间要排除的文件或文件夹。然而,在当前版本(2023 年 6 月)的阿里云函数计算中,这个功能似乎不可用。

    根据我的了解,目前阿里云函数计算的部署工具不支持直接在 template.yml 中排除特定的文件或文件夹。因此,无法通过在 template.yml 中使用 exclude 来排除文件或文件夹。

    相反,您可以使用其他方法来控制要上传到函数计算的文件和文件夹。下面是一些可能的替代方案:

    1. 在本地手动排除文件:在将代码上传到函数计算之前,手动删除或移动不需要的文件或文件夹。这样,只会上传所需的文件和文件夹。

    2. 使用打包工具:使用打包工具(如 webpack、gulp 等)对代码进行打包,并将仅需要的文件包含在最终生成的部署包中。

    3. 使用构建脚本:使用构建脚本在部署之前执行某些操作,例如删除不需要的文件或文件夹,只将必要的文件复制到特定目录等。

    以上方法仅作为替代方案,并不直接涉及 template.yml 中的 exclude 选项。您可以根据自己的需求和项目要求选择适合的方法。

    2023-06-27 10:57:21
    赞同 展开评论 打赏
  • 要用 .fcignore 参考:https://docs.serverless-devs.com/fc/tips#%E5%85%B3%E4%BA%8Efcignore%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-06-25 23:11:25
    赞同 展开评论 打赏
  • 在部署时排除文件或文件夹是常见的需求,但具体实现方式可能因不同的工具和框架而有所差异。

    以下是一些常用方法:

    1. 使用 .gitignore 文件:如果您使用 Git 进行版本控制,并且希望排除某些文件或目录,则可以通过创建并配置.gitignore 文件来指定要忽略的内容。这样,在执行 git add .git commit -m "message" 之前,Git 将自动将被忽略的项目从提交中省略。

    2. 配置构建脚本/命令:如果您使用特定于语言、框架或构建工具(如Webpack、Gulp等)进行部署,请查阅相关文档以了解如何设置 exclude 或 ignore 规则。通常情况下,这些规则允许你在打包过程中指定要排除哪些文件或目录。

    3. 在 Serverless 框架中设置 exclude 属性:对于基于 Serverless 架构开发应用程序并进行部署操作, 可能会提供一个 serverless.yml 或者其他类似配置文件 。其中可能存在名为"exclude" 的属性 ,可用来定义需要被排除上传到云端服务上得资源.

      示例:

      service: my-service
      
      provider:
        name: aliyun
        runtime: nodejs12 # 设置运行环境
      
      package:
        exclude:
          - node_modules/**
          - .git/**
      
      functions:
        helloWorld:
            handler: index.handler
      

    在上述示例中,使用了 Serverless 框架的 serverless.yml 文件,并通过 package.exclude 属性指定要排除上传到云端服务(如阿里云函数计算)的文件或目录。

    请注意根据您所使用的具体工具和框架,在配置部署过程中 exclude 的方式可能有所不同。

    2023-06-25 16:50:32
    赞同 展开评论 打赏
问答地址:

快速交付实现商业价值。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载