1 Star 2 Fork 0

来贝科技/concourse-aliyun-oss-resource

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

concourse-aliyun-oss-resource Concourse

This is aliyun oss resource for Concourse to be able to manipulate oss on aliyun from concourse.
这个resource type用于在concourse上通过ossutil指令行工具操作阿里云oss

参考:
developing-a-custom-concourse-resource
Tutorials
ali oss cp document

build步骤:

需要一个docker注册中心,可以使用docker hub或自己搭建一个ssl安全的docker registry

docker build -t gugege/concourse-aliyun-oss-resource:0.1 -f Dockerfile .  
docker push gugege/concourse-aliyun-oss-resource:0.1  
fly -t example login --concourse-url $url  
fly -t example set-pipeline --pipeline ali-oss-sample --config alioss-ci.yml  --load-vars-from concourse-credentials.yml

example pipeline

alioss-ci.yml

功能

put

通过cmd/cmds 执行ossutil32 --config-file myconfig $CMD
cmds,cmd会拼成数组遍历执行

get

需要单独建一个git项目,根目录放一个deploy_hash的文件用来拼接路径:url_to_download="$prefix_dir/$deploy_hash/"
e.g:
prefix_dir=oss://h5-concourse/h5
deploy_hash存放的值是test
执行ossutil32 --config-file myconfig cp -r oss://h5-concourse/h5/test/ $SRC_DIR"

其中SRC_DIR是concourse的get路径

Parameters

resource_types:
- name: ali-oss-resource
  type: docker-image
  source:
      repository: gugege/concourse-aliyun-oss-resource
      tag: 0.1

resources:
- name: ali-oss
  type: ali-oss-resource
  source:
    endpoint: ((endpoint))
    accessKeyID: ((accessKeyID))
    accessKeySecret: ((accessKeySecret))
    git_private_key: ((git_private_key))
  - put: ali-oss
    params:
        cmd: "cp upload_src/testfile1 oss://h5-concourse/h5/test/testfile1 -u"
        cmds:
        - "cp upload_src/testfile2 oss://h5-concourse/h5/test/testfile2 -u"
        - "cp upload_src/testfile3 oss://h5-concourse/h5/test/testfile3 -u"

  - get: ali-oss
    params:
      prefix_dir: oss://h5-concourse/h5
      git_url: git@gitee.com:buybuystore/h5-deploy.git

Tips:

  1. 之前的step产生的文件路径:${task.outputs}/

task-outputs The directory will be automatically created before the task runs, and the task should place any artifacts it wants to export in the directory.

jobs:
- name: test
  public: true
  plan:
  - task: test upload
    config:
      platform: linux
      image_resource:
        type: docker-image
        source:
          repository: gugege/node_12_4_cnpm_rsync
          tag: '1.0'
      run:
        path: /bin/bash
        args:
        - -exc
        - |
          echo "testfile1" > ./upload_src/testfile1
          echo "testfile2" > ./upload_src/testfile2
          pwd
          ls -alhR .
      outputs:
      - name: upload_src
  - put: ali-oss
    params:
        cmds:
        - "cp -r upload_src/ oss://h5-concourse/h5 -u"
  1. tag: 1.0 在set-pipeline时会自动解析成tag: 1

用shell编写的resources参考list

concourse-rsync-resource
rocketchat-notification-resource
semver-config-concourse-resource
eng-concourse-resource-github-list-repos
concourse-rubygems-resource
concourse-docker-compose-resource

空文件

简介

concourse上操作阿里云oss 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Shell
1
https://gitee.com/libfintech/concourse-aliyun-oss-resource.git
git@gitee.com:libfintech/concourse-aliyun-oss-resource.git
libfintech
concourse-aliyun-oss-resource
concourse-aliyun-oss-resource
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891