当前位置: 首页 > article >正文

云效流水线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。

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

相关文章:

云效流水线Flow使用记录

概述 最近在频繁使用阿里云云效的几款产品,如流水线。之前写过一篇,参考云效流水线缓存问题。 这篇文章来记录更多问题。 环境变量 不管是云效流水线Flow还是应用交付AppStack(基于流水线,后文不再赘述)&#xff0…...

OpenCV CUDA模块图像处理------颜色空间处理之颜色空间转换函数cvtColor()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 该函数用于在 GPU 上进行颜色空间转换,支持多种常见的颜色空间转换操作。 函数原型 void cv::cuda::cvtColor (InputArray src…...

科技初创企业创新推动商业未来

在这个因变革而蓬勃发展的世界里,科技初创企业已成为各行业创新、颠覆与转型的驱动力。这些雄心勃勃的企业正在重塑商业格局,挑战既定规范,并不断突破可能性的边界。本文将深入探索科技初创企业的精彩领域,探讨它们如何通过创新塑…...

人工智能文科能学吗?

文科生也可以学习人工智能(AI),尽管这一领域传统上与数学和计算机科学联系紧密。然而,随着跨学科研究的发展,越来越多的人认识到文科背景在AI领域的价值。以下是一些文科生在学习AI时可以考虑的优势和需要克服的挑战&a…...

Ntfs!NtfsReadBootSector函数分析之nt!CcGetVacbMiss中得到一个nt!_VACB结构

第一部分: 1: kd> g Breakpoint 3 hit nt!CcGetVacbMiss: 80a1a19e 6a30 push 30h 1: kd> kc # 00 nt!CcGetVacbMiss 01 nt!CcGetVirtualAddress 02 nt!CcMapData 03 Ntfs!NtfsMapStream 04 Ntfs!NtfsReadBootSector Ntfs…...

猿大师办公助手WebOffice用二进制数据流在Web前端打开Office文档

猿大师办公助手作为第三代WebOffice方案,猿大师办公助手把本地原生Office无缝嵌入网页环境中实现在线编辑Office功能,提供了完全与本机Office一致(排版、打印等)的操作体验,保留100%原生功能(VBA宏、复杂公…...

etcd:高可用,分布式的key-value存储系统

引言 etcd是基于go语言开发的一款kv存储引擎,基于raft一致性算法实现的一种存储 一.etcd的底层原理 1.etcd的特点 高可用性与一致性:etcd 使用 Raft 算法保证集群中数据的强一致性,即使在节点故障的情况下也能保持数据完整性。 分布式存储&a…...

AI in Game,大模型能力与实时音视频技术融合,交出AI应用新答卷

随着AI的技术进步和工具普及,尤其是在这两年的跃进之后,AI在游戏行业内的应用已经逐步由理念设想推向落地实践。从蔡浩宇披露的AI新游《Whispers From The Star》到GDC上各大厂家呈现的游戏AI新亮点,我们看到了更多AI与游戏的结合方式&#x…...

欢乐熊大话蓝牙知识11:如何打造一个低功耗蓝牙温湿度传感器?

🧊 如何打造一个低功耗蓝牙温湿度传感器? 用电像抠门老头,通信像特工密谈。 🌡️ 引子:为什么你需要一个低功耗 BLE 传感器? 你是不是有过这种需求: 想在办公室角落放个传感器看温湿度,却不想拉电源线?想给智能养宠箱加个环境感知模块,但不能三天一换电池?想造个…...

Linux 安装 Remmina

欢迎关注公号:每日早参,第一时间获取AI资讯! 为什么安装Remmina, 因为Mobaxterm免费版本有窗口限制。 Remmina 是一款功能强大的开源远程桌面客户端,适用于 Linux 和其他类 Unix 系统,也支持 Windows 平台。 安装指南…...

什么是HTTP HTTP 和 HTTPS 的区别

HTTP协议定义 超文本传输协议(HyperText Transfer Protocol, HTTP)是一种应用层协议,主要用于客户端与服务器之间的数据交换。它基于请求-响应模型运行,在每次会话中由客户端发起请求,服务器返回相应的内容。 HTTP 是…...

cos和dmz学习

COS(Capability Open Service) 组件主要为系统提供能力开放的入口和控制。系统中需要对外进行能力开放的组件将RESTful的API接口注册到COS组件中,第三方系统就可以通过调用API来获取组件提供的能力。应用场景:当你想调用的外部系统接口不支持外网访问时&…...

上升沿计数 stm32 中断

在STM32上利用中断实现上升沿计数,可以按照以下步骤进行,这里以STM32F1系列为例,使用HAL库进行代码编写: 1. STM32CubeMX配置 打开STM32CubeMX并创建一个新工程,选择对应的STM32微控制器型号(如STM32F103C8T6)。在Pinout & Configuration选项卡中,找到用于检测上升…...

Java 各版本核心新特性的详细说明

一、Java 8(2014)—— 函数式编程的里程碑 1. Lambda 表达式 作用:简化匿名内部类,支持函数式编程。示例:// 传统匿名内部类 Runnable r1 new Runnable() {Overridepublic void run() {System.out.println("He…...

Nginx 性能优化全解析:从进程到安全的深度实践

一、进程优化:释放硬件性能潜力 Nginx 通过多工作进程处理请求,合理配置进程参数能充分利用 CPU 资源,避免资源浪费。 1.1 worker_processes 参数详解 worker_processes用于设置 Nginx 工作进程的数量,它直接影响 Nginx 对 CP…...

Pycharm and Flask 的学习心得(10)重定向

一 定义: 服务器告诉浏览器:你现在访问的这个页面,请改去另一个地址访问。 浏览器接收到这个“指令”后,会 自动跳转到另一个网页。 二 如何写: 方法一:重定向到网址 方法二:重定向到自己的…...

单机Kafka配置ssl并在springboot使用

目录 SSL证书生成根证书生成服务端和客户端证书生成keystore.jks和truststore.jks辅助脚本单独生成truststore.jks 环境配置hosts文件kafka server.properties配置ssl 启动kafkakafka基础操作springboot集成准备工作需要配置的文件开始消费 SSL证书 证书主要包含两大类&#x…...

《棒球特长生》棒球升学途径·棒球1号位

美国大学棒球体系 | U.S. College Baseball System 美国大学棒球主要通过 NCAA(全国大学体育协会)和 NAIA(全美校际体育协会)组织,分为三个级别: NCAA Division I:竞技水平最高,提…...

JavaScript的call和apply

在 JavaScript 中,.call() 和 .apply() 都是 Function 原型上的方法,用于改变函数执行时的上下文对象(即 this 指向),它们的区别仅在于参数传递的形式不同。下面结合几个常见场景,说明它们的实际应用。 1. …...

DiT、 U-Net 与自回归模型的优势

DiT 相对于 U-Net 的优势 全局自注意力 vs. 局部卷积 U-Net 依赖卷积和池化/上采样来逐层扩大感受野,捕捉全局信息需要堆叠很多层或借助跳跃连接(skip connections)。DiT 在每个分辨率阶段都用 Transformer 模块(多头自注意力 ML…...

开源 FcDesigner 表单设计器组件事件详解

FcDesigner 是一款基于Vue的开源低代码可视化表单设计器工具,通过数据驱动表单渲染。可以通过拖拽的方式快速创建表单,提高开发者对表单的开发效率,节省开发者的时间。并广泛应用于在政务系统、OA系统、ERP系统、电商系统、流程管理等领域。 …...

Teigha应用——解析CAD文件(DWG格式)Teigha在CAD C#二次开发中的基本应用

Teigha是一款专为开发者设计的工具,其核心技术在于强大的API和丰富的功能集,提供了一系列工具和方法,使开发者能够轻松地读取、解析和操作DWG文件。它支持多种操作系统,能在处理大型DWG文件时保持高效性能,还可用于构建…...

C++23内存分配新特性:std::allocate_at_least

文章目录 一、背景与动机二、std::allocator::allocate_at_least的特性三、std::allocate_at_least的自由函数版本四、实际应用场景1. 动态容器的优化2. 自定义分配器 五、总结 在C23标准中, std::allocate_at_least和 std::allocator::allocate_at_least的引入为…...

JavaScript性能优化全景指南

JavaScript性能优化全景指南 Ⅰ. 加载性能优化 1.1 代码分割与懒加载 动态导入(ES2020) javascript // 路由级代码分割 const ProductPage () > import(/* webpackChunkName: "product" */ ./ProductPage.vue); // 交互驱动加载 document.querySelector(#char…...

04-jenkins学习之旅-java后端项目部署实践

1、创建被管理项目 2、构建流程说明 jenkins其实就是将服务部署拆分成了: 1、拉取代码(git) 2、打包编译 3、自定义脚本(jar复制、执行启动脚本) 4、部署成功后的一些通知等 3、demo配置 3.1、General 3.2 源码管理 添加用户名密码方式如下图 3.2.1 常见错误(r…...

基于Python flask 的豆瓣电影top250数据评分可视化

文章目录 基于Python flask 的豆瓣电影top250数据评分可视化项目简介项目结构效果展示源码获取 基于Python flask 的豆瓣电影top250数据评分可视化 博主介绍:✌安替-AnTi:CSDN博客专家、掘金/华为云//InfoQ等平台优质作者,硕士研究生毕业。专…...

Cat.4+WiFi6工业路由器介绍小体积大作用ER4200

ER42004G Cat.4WiFi6 工业路由器隶属于纵横智控ER系列,型号为ER4200,是一款坚固耐用、性能强大的网络设备,专为应对严苛环境而设计。它采用工业级品质设计,集成 4G Cat.4 全网络支持和 WiFi6 技术,可在稳定性和性能至关…...

大模型应用开发第三讲:大模型是Agent的“大脑”,提供通用推理能力(如GPT-4、Claude 3)

大模型应用开发第三讲:大模型是Agent的“大脑”,提供通用推理能力(如GPT-4、Claude 3) 资料取自《大模型应用开发:动手做AI Agent 》。 查看总目录:学习大纲 关于DeepSeek本地部署指南可以看下我之前写的…...

创建型模式之Abstract Factory(抽象工厂)

创建型模式之Abstract Factory(抽象工厂) 摘要: 本文介绍了抽象工厂模式(Abstract Factory),它是一种创建型设计模式,提供了一种创建一系列相关对象的接口而无需指定具体类。文章通过手机工厂示…...

GitLab 18.0 正式发布,15.0 将不再受技术支持,须升级【一】

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 官网极狐…...