云效流水线Flow使用记录

概述

最近在频繁使用阿里云云效的几款产品,如流水线。之前写过一篇,参考云效流水线缓存问题。

这篇文章来记录更多问题。

环境变量

不管是云效流水线Flow还是应用交付AppStack(基于流水线,后文不再赘述),都内置很多环境变量。参考环境变量。

Codeup

阿里云云效的代码管理,有独立的子域名:https://codeup.aliyun.com/。

关于代码仓库的权限管理,业界有很多不同的做法。据说Google使用同一套代码仓库,所有研发有所有Git仓库的阅读(View,Clone等)权限。

这在中国不太现实。云效Codeup有很严格的权限管理。比如在我司,我作为后端开发,无法查看前端、Python代码。但是呢,老板又给我布置一个AppStack的调研任务。

不管是在流水线还是AppStack里新增构建,都需要连接到Codeup。

不太确定是流水线的默认设置,还是我们公司代码仓库管理员的权限管控设置(大大大概率是后者)。

服务连接默认是【仅自己可见】:
在这里插入图片描述
基本信息截图如下,注意下图的授权:
在这里插入图片描述
但是呢,组织内的任何人都有新增服务连接的权限。
在这里插入图片描述
上图写错,应为【可选项】。

由于不能【查看】并使用他人的服务连接,组织内的任何一个开发者想要构建镜像,并发布到测试环境,要么去找运维来干这个事儿,要么是自己摸索。摸索着摸索着,就新增服务连接。就此埋下隐患。

运维离职。问题暴露。

大面积流水线构建报错:
在这里插入图片描述
日志截图
在这里插入图片描述
排查上述问题时,短暂地看过超管登录流水线子域名后的界面。乖乖,10多个服务连接,乱得一批。

上述问题的解决方法:【编辑】各个离职人创建的服务连接,选择一个可用的【服务授权/证书】;而不是针对各个流水线大面积去更换服务连接。

治理

上面提到人人都可新增服务连接,超管设置可收回此权限。

另外【超管或服务连接的创建人】可编辑服务连接,如下图所示(上面贴过一次):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
【指定人员可见】,能给的权限也仅仅只是【使用者】。
在这里插入图片描述
可以完全放开为【所有人可见】!!!!!!!

找运维(有权限)编辑管理员(有代码仓库的最大权限)创建的服务连接,指定我可见。然后我在流水线里就可以【查看】他人创建的服务连接:
在这里插入图片描述
然后可以【查看】所有代码仓库的【连接】权限:
在这里插入图片描述
而我自己创建的服务连接,其Codeup服务连接对codeup代码仓库的可见权限继承自Codeup(有点绕),仅限于backend组,即后端组Java开发(然后老板还给我指派运维工作。。。)
在这里插入图片描述
注意看两张截图的下滑滚动条,很明显上面截图里代码仓库可见范围大得多。

再来看看Codeup代码仓库:
在这里插入图片描述
并没有其他代码仓库(如前端)的权限。

也就是说,Codeup服务连接的可见权限和Codeup代码参考的可见权限完全是两码事。

问题

unbound variable

Helm部署报错:
在这里插入图片描述
未绑定变量,大致意思是找不到变量。

解决方法:
在这里插入图片描述
在这里插入图片描述

failed to compute cache key: failed to compute checksum of ref: not found

构建报错截图如下:
在这里插入图片描述
解决方法:
ContextPath增加一个点解决问题。
在这里插入图片描述

invalid reference format

构建报错截图如下:
在这里插入图片描述
解决方法:

  • 删除替换语法:即写成,不便之处,无法和其他镜像TAG命名样式保持一致(harbor.tesla.com/rag/rag-online:test-ec85d8f3-20250411191733),而变成2025-04-11-19-17-33
    在这里插入图片描述
  • 替换使用的构建集群,如阿里云自带的构建集群
    在这里插入图片描述

failed to resolve dial up timeout

构建报错截图如下:
在这里插入图片描述
排查过程:
登录到流水线执行集群(机器)上,执行docker images命令:
在这里插入图片描述
解决方法:修改Dockerfile的FROM命令。

之前是FROM base_agent:latest
修改为FROM harbor.gpu.tesla.com:543/nlp/base_agentbase_agent:latest

repo app not found

构建报错截图如下:
在这里插入图片描述
排查下来,是流水线源选错:
在这里插入图片描述
解决方法:不是选择Helm代码仓库,而是选择业务代码仓库。

unexpected status from PUT request to 404 Not Found

构建报错截图如下:
在这里插入图片描述
报错日志:

ERROR: error writing manifest blob: failed commit on ref "sha256:b60c3b6e1eaf71deb9214e57eeaaa078d971f07afe28b0687b9f4ee459bf069d": unexpected status from PUT request to https://harbor.gpu.tesla.com:543/v2/nlp/agent/manifests/flow-docker-build-cache: 404 Not Found> importing cache manifest from harbor.gpu.tesla.com:543/nlp/agent:flow-docker-build-cache:exporting cache to registry:
ERROR: failed to solve: error writing manifest blob: failed commit on ref "sha256:b60c3b6e1eaf71deb9214e57eeaaa078d971f07afe28b0687b9f4ee459bf069d": unexpected status from PUT request to https://harbor.gpu.tesla.com:543/v2/nlp/agent/manifests/flow-docker-build-cache: 404 Not Found

报错原因显而易见,镜像缓存地址多了个v2。

报错原因,之前选择的是远端缓存:
在这里插入图片描述
解决方法:选择本地缓存。
在这里插入图片描述
构建参数
在这里插入图片描述

error: failed to solve: rpc error: code = Unknown desc = executor failed running [ ] exit code: 1

构建报错截图如下:
在这里插入图片描述
类似报错:
在这里插入图片描述
类似报错:
在这里插入图片描述
解决方法:
使用私有内部构建集群(节点)
在这里插入图片描述
注意点:

  • 不能使用${DATETIME//-/}格式(报错如上),使用${DATETIME}
  • 镜像缓存使用本地缓存。

原始日志中文乱

如下图所示,流水线里不能查看超过30天之前的日志。
在这里插入图片描述
但是可以点击【查看原始日志】
在这里插入图片描述
中文乱码:
在这里插入图片描述
这咋看?阿里云的Bug。

解决方法:点击上面截图里的【下载日志】,然后在本地查看
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/bicheng/82713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android中获取控件尺寸进阶方案

在Android开发中,很多场景都需要获取控件(View)的宽高信息,比如动态布局调整、动画效果实现等。然而,直接在Activity的onCreate()中调用控件的getWidth()或getHeight()`方法,得到结果却是0,因为控件还没完成布局测量。 本文总结了几种获取控件大小的实用方法,并对各方…

android 输入系统

一、输入系统的核心角色与分层架构 Android 输入系统的本质是桥梁:一端连接硬件驱动产生的原始事件,另一端将事件精准派发给应用窗口。整个过程涉及三层架构和多个关键组件,可类比为 “快递分拣系统”: 1. 硬件与内核层&#xf…

ubuntu中,c和c+程序,预编译、编译、链接和运行命令

目录 安装编译器一.c编译运行(粗暴简单)1.编写 C 程序:2. 预处理:3.编译:4. 汇编:5. 链接:6.运行 二.c编译运行(粗暴简单)1.编写 C 程序:2.预处理&#xff1a…

【FastAPI】--2.进阶教程(一)

【FastAPI】--基础教程-CSDN博客 app.get和post的参数: 参数类型说明pathstr路由路径(如 "/marks"),必填。response_modelType[T]定义响应数据的模型(如 percent),会自动校验和序列…

KT6368A通过蓝牙芯片获取手机时间详细说明,对应串口指令举例

一、功能简介 KT6368A双模蓝牙芯片支持连接手机,获取手机的日期、时间信息,可以同步RTC时钟 1、无需安装任何app,直接使用系统蓝牙即可实现 2、同时它不影响音频蓝牙,还支持一些简单的AT指令进行操作 3、实现的方式&#xff1…

【平面波导外腔激光器专题系列】用于光纤传感的低噪声PLC外腔窄线宽激光器

----翻译自Mazin Alalusi等人的文章 摘要 高性价比的 1550 nm DWDM平面外腔 &#xff08;PLANEX&#xff09; 激光器是干涉测量、布里渊、LIDAR 和其他光传感应用的最佳选择。其线宽<3kHz、低相位/频率噪声和极低的RIN。 简介 高性能光纤分布式传感技术是在过去几年中开发…

企业微信内部网页开发流程笔记

背景 基于ai实现企微侧边栏和工作台快速问答小助&#xff0c;需要h5开发&#xff0c;因为流程不清楚摸索半天&#xff0c;所以记录一下 一、网页授权登录 1. 配置步骤 1.1 设置可信域名 登录企业微信管理后台 进入"应用管理" > 选择开发的具体应用 > “网…

WORD 转 PDF 工具:排版 / 图片 / 表格批量转换提升办公效率

各位办公小能手们&#xff0c;今天来聊聊文档工具里的WORD转PDF工具&#xff01;这玩意儿到底是干啥的呢&#xff1f;咱来好好说道说道。 先说核心功能。第一个就是格式转换&#xff0c;能把Word文档转换成PDF&#xff0c;不管是格式、排版&#xff0c;还是图片、表格啥的&…

从逆流监测到智慧用电:ADL200N-CT系列单相导轨表赋能家庭绿色能源

在新能源浪潮席卷全球的当下&#xff0c;阳台光伏以及家庭储能&#xff08;户储&#xff09;系统逐渐成为众多追求绿色生活、渴望实现能源自主家庭的新选择。它不仅能有效利用太阳能等清洁能源&#xff0c;还能在用电高峰时段为家庭提供稳定电力支持&#xff0c;降低用电成本。…

std::thread的说明与示例

源于通义千问 在 C 中&#xff0c;std::thread 支持传递多种类型的函数作为线程入口点。你可以传递普通函数、类的成员函数、Lambda 表达式、函数对象&#xff08;仿函数&#xff09;等。以下是详细的说明和示例。 1. 传递普通函数 普通函数是最简单的用法。 示例 #include…

【Day38】

DAY 38 Dataset和Dataloader类 对应5. 27作业 知识点回顾&#xff1a; Dataset类的__getitem__和__len__方法&#xff08;本质是python的特殊方法&#xff09;Dataloader类minist手写数据集的了解 作业&#xff1a;了解下cifar数据集&#xff0c;尝试获取其中一张图片 import …

RabbitMQ 集群与高可用方案设计(三)

五、高可用方案设计与实现 &#xff08;一&#xff09;负载均衡与代理 1. HAProxy 配置 HAProxy 是一款广泛应用的开源负载均衡器和代理服务器&#xff0c;它能够实现对 RabbitMQ 集群节点的负载均衡和健康检查&#xff0c;有效提高系统的可用性和性能。以下是使用 HAProxy …

机器学习第二十四讲:scikit-learn → 机器学习界的瑞士军刀

机器学习第二十四讲&#xff1a;scikit-learn → 机器学习界的瑞士军刀 资料取自《零基础学机器学习》。 查看总目录&#xff1a;学习大纲 关于DeepSeek本地部署指南可以看下我之前写的文章&#xff1a;DeepSeek R1本地与线上满血版部署&#xff1a;超详细手把手指南 Scikit-…

百度ocr的简单封装

百度ocr地址 以下代码为对百度ocr的简单封装,实际使用时推荐使用baidu-aip 百度通用ocr import base64 from enum import Enum, unique import requests import logging as logunique class OcrType(Enum):# 标准版STANDARD_BASIC "https://aip.baidubce.com/rest/2.0…

Ubuntu20.04 gr-gsm完整安装教程

gr-gsm完整安装教程 安装gnuradio3.8安装依赖项指定gnuradio源安装gnuradio 安装gr-gsm安装依赖项安装gr-gsm修改环境变量 安装成功 安装gnuradio3.8 安装依赖项 sudo apt install git cmake g libboost-all-dev libgmp-dev swig python3-numpy python3-mako python3-sphinx …

(自用)Java学习-5.15(模糊搜索,收藏,购物车)

1. 模糊搜索商品功能 前端实现&#xff1a; 通过解析URL参数&#xff08;如search联想&#xff09;获取搜索关键字&#xff0c;发送AJAX GET请求到后端接口/product/searchGoodsMessage。 动态渲染搜索结果&#xff1a;若结果非空&#xff0c;循环遍历返回的商品数据&#xff…

STM32 TIM 定时器深度剖析:结构、时基、中断与应用开发(超形象详解)

文章目录 定时器&#xff08;TIM&#xff09;定时器种类与分布定时器的基本结构时基单元时基单元基本结构计数器计数方向时基单元时钟来源计算寄存器预加载机制 自制延时函数获取单片机当前时间实现延迟函数初始化定时器3的时基单元配置中断编写中断响应函数测试延迟函数 定时器…

Java使用minio上传整个目录下的所有内容

目录 1、添加相关配置 2、添加依赖 3、实现方法 1️⃣基础版&#xff1a; 2️⃣优化版&#xff08;推荐使用&#xff09;&#xff1a; 3️⃣上传远程主机上的目录内容&#xff1a; 4️⃣直接上传远程主机中的目录内容 业务背景&#xff1a;需要需要minio进行上传指定目录下所有…

Python的分布式网络爬虫系统实现

1. 系统架构概述 一个典型的分布式网络爬虫系统通常包含以下几个核心组件&#xff1a; 1.主节点&#xff08;Master Node&#xff09;&#xff1a; 任务调度&#xff1a;负责将抓取任务分配给各个工作节点。URL 管理&#xff1a;维护待抓取的 URL 队列和已抓取的 URL 集合&a…

AI工具的选择:Dify还是传统工具?

从纯技术视角出发&#xff0c;选择Dify还是传统开发工具需要基于六个核心维度进行理性决策。以下为结构化分析框架&#xff0c;附典型场景示例&#xff1a; 1. 开发效率 vs 控制力权衡矩阵 维度Dify优势场景传统工具优势场景迭代速度需求明确的标准CRUD&#xff08;如后台管理…