华为云开发者成长任务闯关记:一天拿下 3340 积分的可复现路径

举报
吟吟 发表于 2026/11/05 10:39:31 2026/11/05
【摘要】 华为云开发者成长任务闯关记:一天拿下 3340 积分的可复现路径 背景华为云开发者成长中心有一套"成长任务"体系,完成任务得积分,积分可兑换代金券。任务分两类:每日任务(浏览案例、体验 DevSpace、发文章等,需 SSO 登录行为埋点)和可完成任务(沙箱部署、ECS 部署、展览馆发布、GitCode Star/Issue 等,可由 API/CLI 提交凭证)。最近我把"可完成任务"这一...

华为云开发者成长任务闯关记:一天拿下 3340 积分的可复现路径

背景

华为云开发者成长中心有一套"成长任务"体系,完成任务得积分,积分可兑换代金券。任务分两类:每日任务(浏览案例、体验 DevSpace、发文章等,需 SSO 登录行为埋点)和可完成任务(沙箱部署、ECS 部署、展览馆发布、GitCode Star/Issue 等,可由 API/CLI 提交凭证)。

最近我把"可完成任务"这一档全部跑通:沙箱部署 1000 分、ECS 部署 2000 分、展览馆发布 200 分、Agent 实践中心 Star+Issue 50 分、鸿蒙案例 Star 30 分,合计 3280 分(加上每日任务里的发文章 60 分,单日可到 3340)。本文把这条路径完整记录下来,给同样在闯关的开发者一个可复现的参考。

一、先摸清任务地图

成长任务通过一个 REST 接口查询:

POST https://devdata.huaweicloud.com/rest/developer/.../growth/mission/query-mission-list-by-condition
Body: {"page_no":1,"page_size":50,"category_key":"DAILY_MISSIONS"}

返回里每个任务带 mission_id、reward(积分)和 is_finish。关键是要区分哪些任务"做"和"提交"是同一动作(如沙箱部署,部署完即提交),哪些需要额外提交凭证(如展览馆发布要传 workId)。先把地图理清,再按性价比排序逐个击破,比闷头做高效得多。

二、沙箱部署(1000 分)

沙箱是 DevKit 提供的临时开发环境,适合快速把静态站点暴露到公网:

  1. 签协议:首次使用沙箱需签署服务协议,一次性操作。
  2. 连接沙箱:调用沙箱连接接口,获取会话。高峰期会遇到 No available node pool,等几分钟重试即可。
  3. 上传与部署:把 index.html 上传到工作目录,用 Nginx 静态模式托管,指定端口。
  4. 暴露隧道:通过 DevBridge 把端口映射为 https://xxx.devbridge-s2.hwtunnel.com 公网域名。
  5. 验证提交:curl -sI 确认 200 后,提交 beginner 任务凭证。

一个容易忽略的点:隧道暴露后有短暂的就绪延迟,务必先健康检查再提交,否则可能提交一个尚未可访问的地址被判失败。

三、ECS 持久化部署(2000 分)

沙箱是临时的,持久化上线要靠 ECS。在 cn-north-4 区域按量创建 1 核 2G 实例(Rocky Linux 9.8),流程:

  1. 复用已有 VPC、子网,安全组放通 80/443。
  2. 创建 ECS 时绑定 EIP,并在 user_data 里写 cloud-init 脚本:开机自动装 Nginx、落盘页面、启动并设开机自启。
  3. 实例 ACTIVE 后用公网 IP 验证返回 200。
  4. 提交 intermediate 任务凭证。
  5. 资源止损:提交成功后立即释放 ECS、EIP,按量付费不留过夜。

cloud-init 把"开机即就绪"做到了极致,省去 SSH 上机配置的环节,整个 ECS 从创建到可访问不到两分钟。

四、展览馆发布(200 分)

这一步要把作品发布到华为开发者大赛的展览馆,再回填 workId 提交:

  1. IAM 自委托:创建一个委托自己(self-verify)的 IAM 委托,用于生成临时凭证调用发布接口。
  2. 发布作品:调用 submit-activity-work 接口,带上活动 code(如 open-capability-2026-1024)和作品信息,返回 workId。
  3. 回填提交:把 workId 作为凭证提交到对应的成长任务。

坑点:发布技能脚本如果是从 Windows 仓库 clone 的,可能有 CRLF 行尾,在 Linux 上执行前需 sed -i 's/\r$//' 清理;活动 code 是带日期的,过期会失效。

五、GitCode 协作(Star 50 + Issue 60 分)

GitCode 是华为云生态的代码托管平台,这部分任务靠 GitCode API 完成:

  1. OAuth 授权:在 GitCode 完成一次 OAuth 授权,拿到 access token,后续 API 用 Authorization: Bearer <token> 鉴权。
  2. 建仓推代码:POST /api/v5/user/repos 创建仓库,注意 path 用英文 slug(不是中文显示名),再 git push 推送项目。
  3. Star 仓库:POST /api/v5/repos/{owner}/{repo}/star,按任务要求 Star 指定的实践中心仓库。
  4. 提 Issue:POST /api/v5/repos/{owner}/{repo}/issues,在指定仓库提一个有内容的 Issue。

提醒:Star/Issue 的积分识别依赖 GitCode 账号与华为云账号的绑定关系,如果两个账号没绑定,动作做了也可能不计分,提前在账号设置里确认绑定。

六、鸿蒙案例 Star(30 分)

和上一节类似,只是目标仓库换成鸿蒙实践中心(harmony-practice-center)下的指定案例仓库。用同一个 GitCode token 批量 Star 即可,注意控制频率避免触发限流。

七、踩坑与技巧汇总

  • 任务状态有延迟:API 返回 is_finish=0 不代表没完成,提交成功后状态更新有 1~3 小时延迟,别反复重提交。
  • 节点池容量:沙箱/实例在活动高峰可能"无可用资源",做好重试与退避。
  • 凭证分级:AK/SK 只用于生成临时凭证,临时凭证只用于完成一次具体操作,绝不落盘进仓库。
  • 活动 code 时效:展览馆发布的活动 code 带日期,过期失效,调用前确认最新 code。
  • 账号绑定:GitCode 账号与华为云账号务必绑定,否则 Star/Issue 不计分。
  • 资源止损:按量付费资源用完立即释放,养成提交成功即清理的习惯。

总结

成长任务的"可完成任务"这一档,本质是把开发者日常会做的动作(部署、发布、协作)结构化成可提交凭证的任务。摸清任务地图、按性价比排序、用 API/CLI 批量执行、做好资源止损,一天拿下三千多积分是可行的。

真正花时间的不是任务本身,而是处理环境问题(节点池、行尾、版本配对)和确认各种隐式前提(账号绑定、活动 code 时效)。把这些坑提前踩平,闯关就变成了一条流水线。

(本文为原创技术分享,记录真实闯关过程。)

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。