• Drone基于K8S的Secrets管理


    如果Drone部署在K8S中,那么可以通过k8s secret来为drone runner提供secret。

    注:必须安装drone-kubernetes-secrets组件,且runner配置evn参数DRONE_SECRET_PLUGIN_TOKEN、DRONE_SECRET_PLUGIN_ENDPOINT指向访问drone-kubernetes-secrets服务。而drone-kubernetes-secrets需配置evn参数SECRET_KEY与DRONE_SECRET_PLUGIN_TOKEN一致。

    一、创建k8s secret

    apiVersion: v1
    kind: Secret
    type: Opaque
    data:
      username: ZHJvbmUtcm9vdA==
      password: MTIzNA==
    metadata:
      name: drone-docker-register-secret
      namespace: shendu-ops
    

    二、使用Secret

    1、在pipeline中定义外部drone secret资源关联k8s secret,以供调用

    kind: pipeline
    type: kubernetes
    name: drone-build-demo
    metadata:
      namespace: shendu-ops
    
    ---
    kind: secret
    name: username
    get:
      path: drone-docker-register-secret
      name: username
    
    ---
    kind: secret
    name: password
    get:
      path: drone-docker-register-secret
      name: password

    2、通过from_seecret参数使用secret变量

    kind: pipeline
    type: kubernetes
    name: sd.services.modules.demo
    metadata:
      namespace: shendu-ops
    steps:
    - name: test
      image: busybox
      environment:
        USERNAME:
          from_secret: username
        PASSWORD:
          from_secret: password
      commands:
      - echo $USERNAME
      - echo $PASSWORD

    三、限制使用

           默认情况下创建的k8s secret是对所有git repositories和build events有效的。我们可以通过metadata.annotations添加对secret的使用范围限制。

    1、使用X-Drone-Repos限制那些git repositories可以访问secret。该值采用shell glob模式匹配,多个值用”,“隔开。

    metadata:
      name: drone-docker-register-secret
      annotations:
        X-Drone-Repos: dev/demo,release/*
    

    2、使用X-Drone-Events按事件限制访问secret

    metadata:
      name: drone-docker-register-secret
      annotations:
        X-Drone-Events: push,tag
    
  • 相关阅读:
    时间复杂度的分析
    插入排序
    maven中jar、war、pom的区别
    Maven属性(properties)标签的使用
    超级POM
    maven 常用命令
    Maven Pom文件标签详解
    maven 查找依赖的办法
    maven snapshot和release版本的区别
    maven pom文件标签含义
  • 原文地址:https://www.cnblogs.com/lswweb/p/14246646.html
Copyright © 2020-2023  润新知