Drone 插件市场 > Drone Cache
drone_cache.svg

Drone Cache

by meltwater

Apache License 2.0

一个 Drone 插件,用于在两次构建之间缓存当前工作区文件,以缩短构建时间。drone-cache 是一个用 Go 编写的小型 CLI 程序,不依赖任何外部操作系统(如 tar 等)。

YAML 配置示例

kind: pipeline
name: default

steps:
  - name: restore-cache
    image: meltwater/drone-cache:dev
    pull: true
    settings:
      access-key:
        from_secret: aws_access_key_id
      secret-key:
        from_secret: aws_secret_access_key
      restore: true
      bucket: drone-cache-bucket
      region: eu-west-1
      mount:
        - 'vendor'

  - name: build
    image: golang:1.11-alpine
    pull: true
    commands:
      - apk add --update make git
      - make drone-cache

  - name: rebuild-cache
    image: meltwater/drone-cache:dev
    pull: true
    settings:
      access-key:
        from_secret: aws_access_key_id
      secret-key:
        from_secret: aws_secret_access_key
      rebuild: true
      bucket: drone-cache-bucket
      region: eu-west-1
      mount:
        - 'vendor'

字段属性说明

  • backend

    string可选项

    在插件中使用的缓存后端(S3、文件系统)。

    默认值:s3

  • mount

    array可选项

    要缓存的文件夹数组。

    默认值:none

  • rebuild

    boolean可选项

    是否重建缓存目录。

    默认值:false

  • restore

    boolean可选项

    是否恢复缓存目录。

    默认值:false

  • cache-key

    string可选项

    用于缓存目录的缓存密钥。

    默认值:none

  • archive-format

    string可选项

    缓存目录使用的压缩包格式(tar、gzip)。

    默认值:tar

  • debug

    boolean可选项

    是否启用调试模式。

    默认值:false

  • filesystem-cache-route

    string可选项

    文件系统缓存的本地文件系统根目录。

    默认值:/tmp/cache

  • endpoint

    string可选项

    s3 连接的端点。

    默认值:none

  • access-key

    string可选项

    AWS 访问密钥。

    推荐使用密钥 (Secret) 功能

    默认值:none

  • secret-key

    string可选项

    AWS 密钥。

    推荐使用密钥 (Secret) 功能

    默认值:none

  • bucket

    string可选项

    AWS 水桶名称。

    默认值:none

  • region

    string可选项

    AWS 水桶区域。

    默认值:none

  • path-style

    boolean可选项

    对水桶路径使用路径样式。(对 minio 为 true,对 aws 为 false)。

    默认值:false

  • acl

    string可选项

    上传文件时使用 acl(私有、公共阅读......)。

    默认值:private

  • encryption

    string可选项

    服务器端加密算法(AES256,aws:kms)。

    默认值:none